如何使用es文件资源管理器保存图像

时间:2016-05-16 02:56:19

标签: android

我目前可以使用Es File资源管理器将图像保存到我的应用程序中。

但我想知道的是,如何消除选择文件夹的过程并在代码中指定它?

public void SaveToNetwork() {
   Intent shareIntent = new Intent(Android.Content.Intent.ActionSend);

   shareIntent.SetType("*/*");
   shareIntent.PutExtra(Android.Content.Intent.ExtraStream, Android.Net.Uri.FromFile(new File(App._dir, App._file.Name)));

   shareIntent.SetPackage("com.estrongs.android.pop");

   StartActivity(shareIntent);
}

我不想使用文件资源管理器。我只想将其直接保存到文件夹中,或者至少将默认选择的文件夹更改为正确的文件夹。

1 个答案:

答案 0 :(得分:0)

android为此提供了File类和outpustream类以下是一个示例代码,它将位图重新存储并保存到指定文件夹,然后将图像添加到图库内容提供程序

 private String savePic(Bitmap bitmapImage) {
            try {

                //bitmapImage=drawView.getmCanvasBitmap();

                File dir = new File(
                        Environment
                                .getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),
                        "youfoldername");

                dir.mkdir();
                Calendar c = Calendar.getInstance();
                if (dir.isDirectory()) {
                    String path = dir.getAbsolutePath() + "/youfilename"
                            + c.getTimeInMillis() + ".Jpg";
                    FileOutputStream fos = new FileOutputStream(path);
                    // Use the compress method on the BitMap object to write image
                    // to
                    // the OutputStream

                    bitmapImage.compress(Bitmap.CompressFormat.JPEG, 100, fos);
                    fos.close();


                    ContentValues values = new ContentValues();
                    values.put(MediaStore.Images.Media.DATE_TAKEN, System.currentTimeMillis());
                    values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
                    values.put(MediaStore.MediaColumns.DATA, path);
                    getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
                    Intent intent = new Intent(Intent.ACTION_SEND);
                    intent.setType("image/Jpg");
                    intent.putExtra(android.content.Intent.EXTRA_STREAM,
                            Uri.parse("file://" + path));
                    startActivity(intent);

                    return path;
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return "";
        }