Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法保存裁剪的图像-Android_Android_Image_Android Intent_Crop_Android External Storage - Fatal编程技术网

无法保存裁剪的图像-Android

无法保存裁剪的图像-Android,android,image,android-intent,crop,android-external-storage,Android,Image,Android Intent,Crop,Android External Storage,这是我从 我通过如下更改保存的目录路径使代码正常工作: File newDirectory = new File(Environment.getExternalStorageDirectory()+"/test/"); 原因:我无法保存以写入受保护目录“/Android/data/com.example.abcd/files/” 通过对onActivityResult进行以下更改: public void onActivityResult(int requestCode, int resul

这是我从


我通过如下更改保存的目录路径使代码正常工作:

 File newDirectory = new File(Environment.getExternalStorageDirectory()+"/test/");
原因:我无法保存以写入受保护目录“/Android/data/com.example.abcd/files/”

通过对onActivityResult进行以下更改:

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == Activity.RESULT_OK) {
        if (requestCode == SELECT_PICTURE) {
        //    Uri selectedImageUri = data.getData();
        //    selectedImagePath = getPath(selectedImageUri); //To get image path

            selectedImagePath = mCropImagedUri.getPath(); //To get image path

            System.out.println("Image Path : " + selectedImagePath);
         //   img.setImageURI(selectedImageUri);


        }
    }
} 
注意:您可能不需要注释掉img.setImageURI行。为了测试的目的,我不得不这么做

确保已在AndroidManifest中添加写入权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />


查看本文中的解决方案不,它不起作用,我不认为它是解决方案您的Android媒体不能安装在无法写入外部存储的位置(例如,插入计算机的旧设备)?你有写外部存储的权限吗?@vinothkumar请看下面我的答案。我有密码了。在Android 4.4.4设备上测试,而不是emulator.Thx。希望这个能起作用。一旦我测试了它,我会把它标为正确答案。@Wildroid:我的问题解决了。但我想问你,在“/Android/data/com.example.abcd/files/”中是否有存储的内容?此外,我的应用程序在裁剪和保存图像后崩溃。你能解决这个问题吗?我想我需要为裁剪后的图像找到新的路径。我该怎么做?@vinothkumar您是在设备上还是在模拟器上测试?注意:如果保存到sdcard/Android/data/full.package.name,则在卸载应用程序时会删除剪切的图像。据我所知,您需要root访问权限才能保存到Android data directory.thx。但是你给出的代码在保存裁剪的图像后崩溃了。我认为onActivityResult需要修改。我不知道怎么做。你能帮我解决一下吗?@vinothkumar In-OnActivityResult():if(data!=null){Bitmap thePic=(Bitmap)data.getExtras().get(“data”);img.setImageBitmap(thePic);}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == Activity.RESULT_OK) {
        if (requestCode == SELECT_PICTURE) {
        //    Uri selectedImageUri = data.getData();
        //    selectedImagePath = getPath(selectedImageUri); //To get image path

            selectedImagePath = mCropImagedUri.getPath(); //To get image path

            System.out.println("Image Path : " + selectedImagePath);
         //   img.setImageURI(selectedImageUri);


        }
    }
} 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />