Example usage for android.os Environment getExternalStoragePublicDirectory

List of usage examples for android.os Environment getExternalStoragePublicDirectory

Introduction

In this page you can find the example usage for android.os Environment getExternalStoragePublicDirectory.

Prototype

public static File getExternalStoragePublicDirectory(String type) 

Source Link

Document

Get a top-level shared/external storage directory for placing files of a particular type.

Usage

From source file:com.ferdi2005.secondgram.AndroidUtilities.java

private static File getAlbumDir() {
    if (Build.VERSION.SDK_INT >= 23 && ApplicationLoader.applicationContext.checkSelfPermission(
            android.Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
        return FileLoader.getInstance().getDirectory(FileLoader.MEDIA_DIR_CACHE);
    }//from www .j  a  v a2 s.  co m
    File storageDir = null;
    if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
        storageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),
                "Telegram");
        if (!storageDir.mkdirs()) {
            if (!storageDir.exists()) {
                FileLog.d("failed to create directory");
                return null;
            }
        }
    } else {
        FileLog.d("External storage is not mounted READ/WRITE.");
    }

    return storageDir;
}

From source file:com.annanovas.bestprice.DashBoardEditActivity.java

public File createImageFile() throws IOException {
    // Create an image file name
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
    String imageFileName = "JPEG_" + timeStamp + "_";
    File storageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM),
            "Best Price");
    if (!storageDir.exists()) {
        storageDir.mkdirs();//w w w.j a v a  2  s .c o m
    }
    File image = File.createTempFile(imageFileName, /* prefix */
            ".jpg", /* suffix */
            storageDir /* directory */
    );

    // Save a file: path for use with ACTION_VIEW intents
    imageUri = "file:" + image.getAbsolutePath();
    return image;
}

From source file:de.baumann.browser.Browser.java

@SuppressLint("SetJavaScriptEnabled")
@Override//w ww.j a v  a 2 s.c o  m
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    if (id == R.id.action_search) {

        mWebView.stopLoading();
        String text = editText.getText().toString();
        String searchEngine = sharedPref.getString("searchEngine", "https://startpage.com/do/search?query=");
        String wikiLang = sharedPref.getString("wikiLang", "en");

        if (text.length() > 3) {
            subStr = text.substring(3);
        }

        if (text.equals(mWebView.getTitle()) || text.isEmpty()) {
            helper_editText.showKeyboard(Browser.this, editText, 3, "", getString(R.string.app_search_hint));

        } else {
            helper_editText.hideKeyboard(Browser.this, editText, 0, text, getString(R.string.app_search_hint));
            helper_editText.editText_EditorAction(editText, Browser.this, mWebView);

            if (text.startsWith("www")) {
                mWebView.loadUrl("http://" + text);
            } else if (text.contains("http")) {
                mWebView.loadUrl(text);
            } else if (text.contains(".w ")) {
                mWebView.loadUrl("https://" + wikiLang + ".wikipedia.org/wiki/Spezial:Suche?search=" + subStr);
            } else if (text.startsWith(".f ")) {
                mWebView.loadUrl("https://www.flickr.com/search/?advanced=1&license=2%2C3%2C4%2C5%2C6%2C9&text="
                        + subStr);
            } else if (text.startsWith(".m ")) {
                mWebView.loadUrl("https://metager.de/meta/meta.ger3?focus=web&eingabe=" + subStr);
            } else if (text.startsWith(".g ")) {
                mWebView.loadUrl("https://github.com/search?utf8=&q=" + subStr);
            } else if (text.startsWith(".s ")) {
                if (Locale.getDefault().getLanguage().contentEquals("de")) {
                    mWebView.loadUrl(
                            "https://startpage.com/do/search?query=" + subStr + "&lui=deutsch&l=deutsch");
                } else {
                    mWebView.loadUrl("https://startpage.com/do/search?query=" + subStr);
                }
            } else if (text.startsWith(".G ")) {
                if (Locale.getDefault().getLanguage().contentEquals("de")) {
                    mWebView.loadUrl("https://www.google.de/search?&q=" + subStr);
                } else {
                    mWebView.loadUrl("https://www.google.com/search?&q=" + subStr);
                }
            } else if (text.startsWith(".y ")) {
                if (Locale.getDefault().getLanguage().contentEquals("de")) {
                    mWebView.loadUrl("https://www.youtube.com/results?hl=de&gl=DE&search_query=" + subStr);
                } else {
                    mWebView.loadUrl("https://www.youtube.com/results?search_query=" + subStr);
                }
            } else if (text.startsWith(".d ")) {
                if (Locale.getDefault().getLanguage().contentEquals("de")) {
                    mWebView.loadUrl("https://duckduckgo.com/?q=" + subStr
                            + "&kl=de-de&kad=de_DE&k1=-1&kaj=m&kam=osm&kp=-1&kak=-1&kd=1&t=h_&ia=web");
                } else {
                    mWebView.loadUrl("https://duckduckgo.com/?q=" + subStr);
                }
            } else {
                if (searchEngine.contains("https://duckduckgo.com/?q=")) {
                    if (Locale.getDefault().getLanguage().contentEquals("de")) {
                        mWebView.loadUrl("https://duckduckgo.com/?q=" + text
                                + "&kl=de-de&kad=de_DE&k1=-1&kaj=m&kam=osm&kp=-1&kak=-1&kd=1&t=h_&ia=web");
                    } else {
                        mWebView.loadUrl("https://duckduckgo.com/?q=" + text);
                    }
                } else if (searchEngine.contains("https://metager.de/meta/meta.ger3?focus=web&eingabe=")) {
                    if (Locale.getDefault().getLanguage().contentEquals("de")) {
                        mWebView.loadUrl("https://metager.de/meta/meta.ger3?focus=web&eingabe=" + text);
                    } else {
                        mWebView.loadUrl("https://metager.de/meta/meta.ger3?focus=web&eingabe=" + text
                                + "&focus=web&encoding=utf8&lang=eng");
                    }
                } else if (searchEngine.contains("https://startpage.com/do/search?query=")) {
                    if (Locale.getDefault().getLanguage().contentEquals("de")) {
                        mWebView.loadUrl(
                                "https://startpage.com/do/search?query=" + text + "&lui=deutsch&l=deutsch");
                    } else {
                        mWebView.loadUrl("https://startpage.com/do/search?query=" + text);
                    }
                } else {
                    mWebView.loadUrl(searchEngine + text);
                }
            }
        }
    }

    if (id == R.id.action_history) {
        helper_main.switchToActivity(Browser.this, Popup_history.class, "", false);
    }

    if (id == R.id.action_search3) {
        helper_editText.editText_searchWeb(editText, Browser.this);
    }

    if (id == R.id.action_pass) {
        helper_main.switchToActivity(Browser.this, Popup_pass.class, "", false);
        sharedPref.edit().putString("pass_copy_url", mWebView.getUrl()).apply();
        sharedPref.edit().putString("pass_copy_title", mWebView.getTitle()).apply();
    }

    if (id == R.id.action_toggle) {

        sharedPref.edit().putString("started", "yes").apply();
        String link = mWebView.getUrl();
        int domainInt = link.indexOf("//") + 2;
        final String domain = link.substring(domainInt, link.indexOf('/', domainInt));
        final String whiteList = sharedPref.getString("whiteList", "");

        AlertDialog.Builder builder = new AlertDialog.Builder(Browser.this);
        View dialogView = View.inflate(Browser.this, R.layout.dialog_toggle, null);

        Switch sw_java = (Switch) dialogView.findViewById(R.id.switch1);
        Switch sw_pictures = (Switch) dialogView.findViewById(R.id.switch2);
        Switch sw_location = (Switch) dialogView.findViewById(R.id.switch3);
        Switch sw_cookies = (Switch) dialogView.findViewById(R.id.switch4);
        final ImageButton whiteList_js = (ImageButton) dialogView.findViewById(R.id.imageButton_js);

        if (whiteList.contains(domain)) {
            whiteList_js.setImageResource(R.drawable.check_green);
        } else {
            whiteList_js.setImageResource(R.drawable.close_red);
        }
        if (sharedPref.getString("java_string", "True").equals(getString(R.string.app_yes))) {
            sw_java.setChecked(true);
        } else {
            sw_java.setChecked(false);
        }
        if (sharedPref.getString("pictures_string", "True").equals(getString(R.string.app_yes))) {
            sw_pictures.setChecked(true);
        } else {
            sw_pictures.setChecked(false);
        }
        if (sharedPref.getString("loc_string", "True").equals(getString(R.string.app_yes))) {
            sw_location.setChecked(true);
        } else {
            sw_location.setChecked(false);
        }
        if (sharedPref.getString("cookie_string", "True").equals(getString(R.string.app_yes))) {
            sw_cookies.setChecked(true);
        } else {
            sw_cookies.setChecked(false);
        }

        whiteList_js.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (whiteList.contains(domain)) {
                    whiteList_js.setImageResource(R.drawable.close_red);
                    String removed = whiteList.replaceAll(domain, "");
                    sharedPref.edit().putString("whiteList", removed).apply();
                } else {
                    whiteList_js.setImageResource(R.drawable.check_green);
                    sharedPref.edit().putString("whiteList", whiteList + " " + domain).apply();
                }
            }
        });
        sw_java.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    sharedPref.edit().putString("java_string", getString(R.string.app_yes)).apply();
                    mWebView.getSettings().setJavaScriptEnabled(true);
                } else {
                    sharedPref.edit().putString("java_string", getString(R.string.app_no)).apply();
                    mWebView.getSettings().setJavaScriptEnabled(false);
                }

            }
        });
        sw_pictures.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    sharedPref.edit().putString("pictures_string", getString(R.string.app_yes)).apply();
                    mWebView.getSettings().setLoadsImagesAutomatically(true);
                } else {
                    sharedPref.edit().putString("pictures_string", getString(R.string.app_no)).apply();
                    mWebView.getSettings().setLoadsImagesAutomatically(false);
                }

            }
        });
        sw_location.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    sharedPref.edit().putString("loc_string", getString(R.string.app_yes)).apply();
                    mWebView.getSettings().setGeolocationEnabled(true);
                    helper_main.grantPermissionsLoc(Browser.this);
                } else {
                    sharedPref.edit().putString("loc_string", getString(R.string.app_no)).apply();
                    mWebView.getSettings().setGeolocationEnabled(false);
                }

            }
        });
        sw_cookies.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    sharedPref.edit().putString("cookie_string", getString(R.string.app_yes)).apply();
                    CookieManager cookieManager = CookieManager.getInstance();
                    cookieManager.setAcceptCookie(true);
                } else {
                    sharedPref.edit().putString("cookie_string", getString(R.string.app_no)).apply();
                    CookieManager cookieManager = CookieManager.getInstance();
                    cookieManager.setAcceptCookie(false);
                }

            }
        });

        builder.setView(dialogView);
        builder.setTitle(R.string.menu_toggle_title);
        builder.setPositiveButton(R.string.toast_yes, new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int whichButton) {
                mWebView.reload();
            }
        });
        builder.setNegativeButton(R.string.menu_settings, new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int whichButton) {
                sharedPref.edit().putString("pass_copy_url", mWebView.getUrl()).apply();
                sharedPref.edit().putString("lastActivity", "browser").apply();
                helper_main.switchToActivity(Browser.this, Activity_settings.class, "", true);
            }
        });

        final AlertDialog dialog = builder.create();
        // Display the custom alert dialog on interface
        dialog.show();

    }

    if (id == R.id.action_save) {
        final CharSequence[] options = { getString(R.string.menu_save_screenshot),
                getString(R.string.menu_save_bookmark), getString(R.string.menu_save_readLater),
                getString(R.string.menu_save_pass), getString(R.string.menu_createShortcut) };
        new AlertDialog.Builder(Browser.this)
                .setPositiveButton(R.string.toast_cancel, new DialogInterface.OnClickListener() {

                    public void onClick(DialogInterface dialog, int whichButton) {
                        dialog.cancel();
                    }
                }).setItems(options, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int item) {
                        if (options[item].equals(getString(R.string.menu_save_bookmark))) {
                            helper_editText.editText_saveBookmark(editText, Browser.this, mWebView);
                        }
                        if (options[item].equals(getString(R.string.menu_save_pass))) {
                            helper_editText.editText_savePass(Browser.this, mWebView, mWebView.getTitle(),
                                    mWebView.getUrl());
                        }
                        if (options[item].equals(getString(R.string.menu_save_readLater))) {
                            try {
                                final Database_ReadLater db = new Database_ReadLater(Browser.this);
                                db.addBookmark(mWebView.getTitle(), mWebView.getUrl());
                                db.close();
                                Snackbar.make(mWebView, R.string.readLater_added, Snackbar.LENGTH_SHORT).show();
                            } catch (Exception e) {
                                e.printStackTrace();
                            }
                        }
                        if (options[item].equals(getString(R.string.menu_save_screenshot))) {
                            screenshot();
                        }
                        if (options[item].equals(getString(R.string.menu_createShortcut))) {
                            Intent i = new Intent();
                            i.setAction(Intent.ACTION_VIEW);
                            i.setClassName(Browser.this, "de.baumann.browser.Browser");
                            i.setData(Uri.parse(mWebView.getUrl()));

                            Intent shortcut = new Intent();
                            shortcut.putExtra("android.intent.extra.shortcut.INTENT", i);
                            shortcut.putExtra("android.intent.extra.shortcut.NAME",
                                    "THE NAME OF SHORTCUT TO BE SHOWN");
                            shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, mWebView.getTitle());
                            shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource
                                    .fromContext(Browser.this.getApplicationContext(), R.mipmap.ic_launcher));
                            shortcut.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
                            Browser.this.sendBroadcast(shortcut);
                            Snackbar.make(mWebView, R.string.menu_createShortcut_success, Snackbar.LENGTH_SHORT)
                                    .show();
                        }
                    }
                }).show();
    }

    if (id == R.id.action_share) {
        final CharSequence[] options = { getString(R.string.menu_share_screenshot),
                getString(R.string.menu_share_link), getString(R.string.menu_share_link_copy) };
        new AlertDialog.Builder(Browser.this)
                .setPositiveButton(R.string.toast_cancel, new DialogInterface.OnClickListener() {

                    public void onClick(DialogInterface dialog, int whichButton) {
                        dialog.cancel();
                    }
                }).setItems(options, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int item) {
                        if (options[item].equals(getString(R.string.menu_share_link))) {
                            Intent sharingIntent = new Intent(Intent.ACTION_SEND);
                            sharingIntent.setType("text/plain");
                            sharingIntent.putExtra(Intent.EXTRA_SUBJECT, mWebView.getTitle());
                            sharingIntent.putExtra(Intent.EXTRA_TEXT, mWebView.getUrl());
                            startActivity(
                                    Intent.createChooser(sharingIntent, (getString(R.string.app_share_link))));
                        }
                        if (options[item].equals(getString(R.string.menu_share_screenshot))) {
                            screenshot();

                            if (shareFile.exists()) {
                                Intent sharingIntent = new Intent(Intent.ACTION_SEND);
                                sharingIntent.setType("image/png");
                                sharingIntent.putExtra(Intent.EXTRA_SUBJECT, mWebView.getTitle());
                                sharingIntent.putExtra(Intent.EXTRA_TEXT, mWebView.getUrl());
                                Uri bmpUri = Uri.fromFile(shareFile);
                                sharingIntent.putExtra(Intent.EXTRA_STREAM, bmpUri);
                                startActivity(Intent.createChooser(sharingIntent,
                                        (getString(R.string.app_share_screenshot))));
                            }
                        }
                        if (options[item].equals(getString(R.string.menu_share_link_copy))) {
                            String url = mWebView.getUrl();
                            ClipboardManager clipboard = (ClipboardManager) Browser.this
                                    .getSystemService(Context.CLIPBOARD_SERVICE);
                            clipboard.setPrimaryClip(ClipData.newPlainText("text", url));
                            Snackbar.make(mWebView, R.string.context_linkCopy_toast, Snackbar.LENGTH_SHORT)
                                    .show();
                        }
                    }
                }).show();
    }

    if (id == R.id.action_downloads) {
        String startDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)
                .getPath();
        helper_main.openFilePicker(Browser.this, mWebView, startDir);
    }

    if (id == R.id.action_searchSite) {
        mWebView.stopLoading();
        helper_editText.editText_FocusChange_searchSite(editText, Browser.this);
        helper_editText.editText_searchSite(editText, Browser.this, mWebView);
    }

    if (id == R.id.action_search2) {

        String text = editText.getText().toString();

        if (text.startsWith(getString(R.string.app_search))) {
            helper_editText.editText_searchSite(editText, Browser.this, mWebView);
        } else {
            mWebView.findAllAsync(text);
            helper_editText.hideKeyboard(Browser.this, editText, 1, getString(R.string.app_search) + " " + text,
                    getString(R.string.app_search_hint_site));
        }

    }

    if (id == R.id.action_prev) {
        mWebView.findNext(false);
    }

    if (id == R.id.action_next) {
        mWebView.findNext(true);
    }

    if (id == R.id.action_cancel) {
        helper_editText.editText_FocusChange(editText, Browser.this);
        helper_editText.editText_EditorAction(editText, Browser.this, mWebView);
        helper_editText.hideKeyboard(Browser.this, editText, 0, mWebView.getTitle(),
                getString(R.string.app_search_hint));
    }

    if (id == R.id.action_save_bookmark) {
        helper_editText.editText_saveBookmark_save(editText, Browser.this, mWebView);
    }

    return super.onOptionsItemSelected(item);
}

From source file:com.simadanesh.isatis.ScreenSlideActivity.java

private File createImageFile() throws IOException {
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
    String imageFileName = "JPEG_" + timeStamp;
    File storageDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
    //File image = new File(storageDir + "/" + imageFileName + ".jpg");
    File image = new File(storageDir + "/Mahnaam" + System.currentTimeMillis() + ".jpg");
    mCurrentPhotoPath = image;//from  w w w . j a  va  2  s.c o m
    return image;
}

From source file:biz.bokhorst.xprivacy.ActivityMain.java

@SuppressLint("DefaultLocale")
private void optionAbout() {
    // About/*from  w  w  w .j  ava 2  s.  co m*/
    Dialog dlgAbout = new Dialog(this);
    dlgAbout.requestWindowFeature(Window.FEATURE_LEFT_ICON);
    dlgAbout.setTitle(R.string.menu_about);
    dlgAbout.setContentView(R.layout.about);
    dlgAbout.setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, getThemed(R.attr.icon_launcher));

    // Show version
    try {
        int userId = Util.getUserId(Process.myUid());
        Version currentVersion = new Version(Util.getSelfVersionName(this));
        Version storedVersion = new Version(
                PrivacyManager.getSetting(userId, PrivacyManager.cSettingVersion, "0.0"));
        boolean migrated = PrivacyManager.getSettingBool(userId, PrivacyManager.cSettingMigrated, false);
        String versionName = currentVersion.toString();
        if (currentVersion.compareTo(storedVersion) != 0)
            versionName += "/" + storedVersion.toString();
        if (!migrated)
            versionName += "!";
        int versionCode = Util.getSelfVersionCode(this);
        TextView tvVersion = (TextView) dlgAbout.findViewById(R.id.tvVersion);
        tvVersion.setText(String.format(getString(R.string.app_version), versionName, versionCode));
    } catch (Throwable ex) {
        Util.bug(null, ex);
    }

    if (!PrivacyManager.cVersion3 || Hook.isAOSP(19))
        ((TextView) dlgAbout.findViewById(R.id.tvCompatibility)).setVisibility(View.GONE);

    // Show license
    String licensed = Util.hasProLicense(this);
    TextView tvLicensed1 = (TextView) dlgAbout.findViewById(R.id.tvLicensed);
    TextView tvLicensed2 = (TextView) dlgAbout.findViewById(R.id.tvLicensedAlt);
    if (licensed == null) {
        tvLicensed1.setText(Environment.getExternalStorageDirectory().getAbsolutePath());
        tvLicensed2.setText(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)
                .getAbsolutePath());
    } else {
        tvLicensed1.setText(String.format(getString(R.string.app_licensed), licensed));
        tvLicensed2.setVisibility(View.GONE);
    }

    // Show some build properties
    String android = String.format("%s (%d)", Build.VERSION.RELEASE, Build.VERSION.SDK_INT);
    ((TextView) dlgAbout.findViewById(R.id.tvAndroid)).setText(android);
    ((TextView) dlgAbout.findViewById(R.id.build_brand)).setText(Build.BRAND);
    ((TextView) dlgAbout.findViewById(R.id.build_manufacturer)).setText(Build.MANUFACTURER);
    ((TextView) dlgAbout.findViewById(R.id.build_model)).setText(Build.MODEL);
    ((TextView) dlgAbout.findViewById(R.id.build_product)).setText(Build.PRODUCT);
    ((TextView) dlgAbout.findViewById(R.id.build_device)).setText(Build.DEVICE);
    ((TextView) dlgAbout.findViewById(R.id.build_host)).setText(Build.HOST);
    ((TextView) dlgAbout.findViewById(R.id.build_display)).setText(Build.DISPLAY);
    ((TextView) dlgAbout.findViewById(R.id.build_id)).setText(Build.ID);

    dlgAbout.setCancelable(true);

    final int userId = Util.getUserId(Process.myUid());
    if (PrivacyManager.getSettingBool(userId, PrivacyManager.cSettingFirstRun, true))
        dlgAbout.setOnDismissListener(new DialogInterface.OnDismissListener() {
            @Override
            public void onDismiss(DialogInterface dialog) {
                Dialog dlgUsage = new Dialog(ActivityMain.this);
                dlgUsage.requestWindowFeature(Window.FEATURE_LEFT_ICON);
                dlgUsage.setTitle(R.string.app_name);
                dlgUsage.setContentView(R.layout.usage);
                dlgUsage.setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, getThemed(R.attr.icon_launcher));
                dlgUsage.setCancelable(true);
                dlgUsage.setOnDismissListener(new DialogInterface.OnDismissListener() {
                    @Override
                    public void onDismiss(DialogInterface dialog) {
                        PrivacyManager.setSetting(userId, PrivacyManager.cSettingFirstRun,
                                Boolean.FALSE.toString());
                        optionLegend();
                    }
                });
                dlgUsage.show();
            }
        });

    dlgAbout.show();
}

From source file:com.juce.jucedemo.JuceDemo.java

private static final String getFileLocation(String type) {
    return Environment.getExternalStoragePublicDirectory(type).getAbsolutePath();
}

From source file:de.baumann.browser.Browser.java

private void screenshot() {

    shareFile = helper_main.newFile();//  w ww.  j  a  va 2 s.  co m

    try {
        mWebView.measure(
                View.MeasureSpec.makeMeasureSpec(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED),
                View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
        mWebView.layout(0, 0, mWebView.getMeasuredWidth(), mWebView.getMeasuredHeight());
        mWebView.setDrawingCacheEnabled(true);
        mWebView.buildDrawingCache();

        bitmap = Bitmap.createBitmap(mWebView.getMeasuredWidth(), mWebView.getMeasuredHeight(),
                Bitmap.Config.ARGB_8888);

        Canvas canvas = new Canvas(bitmap);
        Paint paint = new Paint();
        int iHeight = bitmap.getHeight();
        canvas.drawBitmap(bitmap, 0, iHeight, paint);
        mWebView.draw(canvas);

    } catch (OutOfMemoryError e) {
        e.printStackTrace();
        Snackbar.make(mWebView, R.string.toast_screenshot_failed, Snackbar.LENGTH_SHORT).show();
    }

    if (bitmap != null) {
        try {
            OutputStream fOut;
            fOut = new FileOutputStream(shareFile);

            bitmap.compress(Bitmap.CompressFormat.PNG, 50, fOut);
            fOut.flush();
            fOut.close();
            bitmap.recycle();

            Snackbar snackbar = Snackbar
                    .make(mWebView,
                            getString(R.string.context_saveImage_toast) + " " + helper_main.newFileName() + ". "
                                    + getString(R.string.app_open),
                            Snackbar.LENGTH_LONG)
                    .setAction(getString(R.string.toast_yes), new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                            String startDir = Environment
                                    .getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)
                                    .getPath();
                            helper_main.openFilePicker(Browser.this, mWebView, startDir);
                        }
                    });
            snackbar.show();

            Uri uri = Uri.fromFile(shareFile);
            Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, uri);
            sendBroadcast(intent);

        } catch (Exception e) {
            e.printStackTrace();
            Snackbar.make(mWebView, R.string.toast_perm, Snackbar.LENGTH_SHORT).show();
        }
    }
}

From source file:com.creativeongreen.imageeffects.MainActivity.java

public void selectImage() {

    if (selectImageClicked) {
        lv1.setVisibility(View.GONE);
        selectImageClicked = false;/*from w ww  .  j a  v a  2  s . com*/
        return;
    } else {
        lv1.setVisibility(View.VISIBLE);
        selectImageClicked = true;
    }

    String filePath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).toString();
    final File pictureStorageDir = new File(filePath, DIR_STORAGE_IMAGE);
    if (!pictureStorageDir.exists()) {
        Toast.makeText(this, getString(R.string.msg_no_image_file), Toast.LENGTH_SHORT).show();
        lv1.setVisibility(View.GONE);
        selectImageClicked = false;
        return;
    }

    File pictureListFiles[] = pictureStorageDir.listFiles(new FileExtensionFilter());

    if (pictureListFiles.length == 0) {
        Toast.makeText(this, getString(R.string.msg_no_image_file), Toast.LENGTH_SHORT).show();
        return;
    }

    final ArrayList<FileListEntry> alPictures = new ArrayList<FileListEntry>();

    int thumbWidth = 64, thumbHeight = 64;
    for (int i = 0; i < pictureListFiles.length; i++) {
        String file = pictureListFiles[i].getName();
        String fullPathFile = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)
                .getAbsolutePath().toString() + File.separator + DIR_STORAGE_IMAGE + File.separator + file;
        String fileSize = new DecimalFormat("#,##0.0#").format(pictureListFiles[i].length() / 1024.0) + " KB";

        BitmapFactory.Options bmFactoryOptions = new BitmapFactory.Options();
        bmFactoryOptions.inJustDecodeBounds = true; // the decoder will return null (no bitmap)
        BitmapFactory.decodeFile(fullPathFile, bmFactoryOptions);

        FileListEntry mFileEntry = null;
        try {
            Bitmap bmThumbnail = ThumbnailUtils.extractThumbnail(BitmapFactory.decodeFile(fullPathFile),
                    thumbWidth, thumbHeight);
            mFileEntry = new FileListEntry(bmThumbnail, pictureListFiles[i].getName(), "\nSize: " + fileSize
                    + "\nDimensions: " + bmFactoryOptions.outWidth + " x " + bmFactoryOptions.outHeight);
        } catch (Throwable e) {
            // handle OOM error on BitmapFactory
            mFileEntry = new FileListEntry(null, pictureListFiles[i].getName(), "\nSize: " + fileSize);
        }

        alPictures.add(mFileEntry);
    }

    FileListAdapter adapter = new FileListAdapter(getApplicationContext(), R.layout.file_list_entry,
            alPictures);

    lv1.setAdapter(adapter);

    // listening to single listitem click
    lv1.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            // getting listitem index
            lv1.setVisibility(View.GONE);
            selectImageClicked = false;
            bmImageSrc = getBitmapFromExternalStorage(this, alPictures.get(position).getFilename());
            iv1.setImageBitmap(bmImageSrc);
        }

    });
}

From source file:es.javocsoft.android.lib.toolbox.ToolBox.java

/**
 * This function returns a File object pointing to a public folder of the the specified 
 * type in the external drive./*from  w  w  w .  ja  v a 2 s . c  o m*/
 * 
 * User media is saved here. Be carefull.
 *      
 * Returns null if the media is not mounted.
 * 
 * @param folderType   The type of files directory to return. Use one of the avaliable
 *                Environment.DIRECTORY_ values.
 * @param folder      An specific folder in the public folder. May be null to get 
 *                the root of the public folder type.
 * @param createFolder   Set to TRUE to create the folder if it does not exists.  
 *                
 * @return
 */
public static File storage_getExternalPublicFolder(String folderType, String folder, boolean createFolder) {
    File res = null;
    if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
        res = new File(Environment.getExternalStoragePublicDirectory(folderType), folder);

        if (!res.exists()) {
            //We create the folder if is desired.
            if (folder != null && folder.length() > 0 && createFolder) {
                if (!res.mkdir()) {
                    res = null;
                }
            } else {
                res = null;
            }
        }
    }
    return res;
}

From source file:fiskinfoo.no.sintef.fiskinfoo.MyToolsFragment.java

private void generateAndSendGeoJsonToolReport() {
    FiskInfoUtility fiskInfoUtility = new FiskInfoUtility();
    JSONObject featureCollection = new JSONObject();

    try {/*from   w ww  .j av  a2  s. c om*/
        Set<Map.Entry<String, ArrayList<ToolEntry>>> tools = user.getToolLog().myLog.entrySet();
        JSONArray featureList = new JSONArray();

        for (final Map.Entry<String, ArrayList<ToolEntry>> dateEntry : tools) {
            for (final ToolEntry toolEntry : dateEntry.getValue()) {
                if (toolEntry.getToolStatus() == ToolEntryStatus.STATUS_RECEIVED
                        || toolEntry.getToolStatus() == ToolEntryStatus.STATUS_REMOVED) {
                    continue;
                }

                toolEntry.setToolStatus(toolEntry.getToolStatus() == ToolEntryStatus.STATUS_REMOVED_UNCONFIRMED
                        ? ToolEntryStatus.STATUS_REMOVED_UNCONFIRMED
                        : ToolEntryStatus.STATUS_SENT_UNCONFIRMED);
                JSONObject gjsonTool = toolEntry.toGeoJson(mGpsLocationTracker);
                featureList.put(gjsonTool);
            }
        }

        if (featureList.length() == 0) {
            Toast.makeText(getActivity(), getString(R.string.no_changes_to_report), Toast.LENGTH_LONG).show();

            return;
        }

        user.writeToSharedPref(getActivity());
        featureCollection.put("features", featureList);
        featureCollection.put("type", "FeatureCollection");
        featureCollection.put("crs", JSONObject.NULL);
        featureCollection.put("bbox", JSONObject.NULL);

        String toolString = featureCollection.toString(4);

        if (fiskInfoUtility.isExternalStorageWritable()) {
            fiskInfoUtility.writeMapLayerToExternalStorage(getActivity(), toolString.getBytes(),
                    getString(R.string.tool_report_file_name), getString(R.string.format_geojson), null, false);
            String directoryPath = Environment
                    .getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).toString();
            String fileName = directoryPath + "/FiskInfo/api_setting.json";
            File apiSettingsFile = new File(fileName);
            String recipient = null;

            if (apiSettingsFile.exists()) {
                InputStream inputStream;
                InputStreamReader streamReader;
                JsonReader jsonReader;

                try {
                    inputStream = new BufferedInputStream(new FileInputStream(apiSettingsFile));
                    streamReader = new InputStreamReader(inputStream, "UTF-8");
                    jsonReader = new JsonReader(streamReader);

                    jsonReader.beginObject();
                    while (jsonReader.hasNext()) {
                        String name = jsonReader.nextName();
                        if (name.equals("email")) {
                            recipient = jsonReader.nextString();
                        } else {
                            jsonReader.skipValue();
                        }
                    }
                    jsonReader.endObject();
                } catch (FileNotFoundException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                } catch (IllegalStateException e) {
                    e.printStackTrace();
                }
            }

            recipient = recipient == null ? getString(R.string.tool_report_recipient_email) : recipient;
            String[] recipients = new String[] { recipient };
            Intent intent = new Intent(Intent.ACTION_SEND);
            intent.setType("plain/plain");

            String toolIds;
            StringBuilder sb = new StringBuilder();

            sb.append("Redskapskoder:\n");

            for (int i = 0; i < featureList.length(); i++) {
                sb.append(Integer.toString(i + 1));
                sb.append(": ");
                sb.append(featureList.getJSONObject(i).getJSONObject("properties").getString("ToolId"));
                sb.append("\n");
            }

            toolIds = sb.toString();

            intent.putExtra(Intent.EXTRA_EMAIL, recipients);
            intent.putExtra(Intent.EXTRA_TEXT, toolIds);
            intent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.tool_report_email_header));
            File file = new File(
                    Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getPath()
                            + "/FiskInfo/Redskapsrapport.geojson");
            Uri uri = Uri.fromFile(file);
            intent.putExtra(Intent.EXTRA_STREAM, uri);

            startActivity(Intent.createChooser(intent, getString(R.string.send_tool_report_intent_header)));

        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
}