I use this example to get image path. Every thing OK when I get small image path, but when I want to get huge image path my application crush. I don't know why this happen because I don't use ImageView to show image from selected path.
My code is here to open gallery and select image:
        selectImgBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
            intent.setType("image/*");
            startActivityForResult(intent, 0);
            //urlTV.setText(getMainPath());
        }
    });
And the second to show path:
    @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == Activity.RESULT_OK && data != null){
        String realPath;
        if (Build.VERSION.SDK_INT < 19){
            realPath = RealPathUtil.getRealPathFromURI_API11to18(this, data.getData());
        } else {
            realPath = RealPathUtil.getRealPathFromURI_API19(this, data.getData());
        }
        setMainPath(realPath);
        /*setFile(realPath);
        setToTextViews(Build.VERSION.SDK_INT, data.getData().getPath(), realPath);*/
        urlTV.setText(getMainPath());
    }
}
Thanks!
- Caused by: java.lang.IllegalArgumentException: Not a document: content://media/external/images/media/32257 at android.provider.DocumentsContract.getDocumentId(DocumentsContract.java:629) at com.example.murager.httpclientapp.classes.RealPathUtil.getRealPathFromURI_API19(RealPathUtil.java:19) at com.example.murager.httpclientapp.activities.MainActivity.onActivityResult(MainActivity.java:98) at android.app.Activity.dispatchActivityResult(Activity.java:5456) at android.app.ActivityThread.deliverResults(ActivityThread.java:3549) at android.app.ActivityThread.handleSendResult(ActivityThread.java:3596) at android.app.ActivityThread.access$1300(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1369) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:5292) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:824) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:640) at dalvik.system.NativeStart.main(Native Method) 
 
     
    