Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.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.net.Uri转换为Java.io.inputStream_Java_Android - Fatal编程技术网

将Android.net.Uri转换为Java.io.inputStream

将Android.net.Uri转换为Java.io.inputStream,java,android,Java,Android,我想通过Android Uri将从手机图库中拍摄的图像传递到我的java代码中。由于Java.IO需要一个文件或Java URL或Java inputStream,如何将android Uri转换为inputStream 但是每次我都会遇到一个例外 我尝试使用此代码将图像数据的imageUri转换为inputStream。我可以向您保证imageUri具有有效内容,因为我可以在imageView中观看图片。 也可能如果有更容易的转换为java URL,我对此没有问题。 多谢各位 Inpu

我想通过Android Uri将从手机图库中拍摄的图像传递到我的java代码中。由于Java.IO需要一个文件或Java URL或Java inputStream,如何将android Uri转换为inputStream

但是每次我都会遇到一个例外

我尝试使用此代码将图像数据的imageUri转换为
inputStream
。我可以向您保证
imageUri
具有有效内容,因为我可以在
imageView
中观看图片。 也可能如果有更容易的转换为java URL,我对此没有问题。 多谢各位

    InputStream myimage = this.getContentResolver().openInputStream(imageUri);
      LoadImageApp Image = new LoadImageApp( myimage );```



//code that passes content to imageUri.It is working fine.
 protected void onActivityResult(int requestCode, int resultCode, Intent data){
        super.onActivityResult(requestCode,resultCode,data);

         if (resultCode == RESULT_OK && requestCode == PICK_IMAGE){
             imageUri = data.getData();    
             imageView.setImageURI(imageUri);
         }
 }
堆栈跟踪

java.lang.IllegalStateException: Could not execute method for android:onClick
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:389)
        at android.view.View.performClick(View.java:4819)
        at android.view.View$PerformClick.run(View.java:20152)
        at android.os.Handler.handleCallback(Handler.java:815)
        at android.os.Handler.dispatchMessage(Handler.java:104)
        at android.os.Looper.loop(Looper.java:194)
        at android.app.ActivityThread.main(ActivityThread.java:5572)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763)
     Caused by: java.lang.reflect.InvocationTargetException
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:384)
        at android.view.View.performClick(View.java:4819) 
        at android.view.View$PerformClick.run(View.java:20152) 
        at android.os.Handler.handleCallback(Handler.java:815) 
        at android.os.Handler.dispatchMessage(Handler.java:104) 
        at android.os.Looper.loop(Looper.java:194) 
        at android.app.ActivityThread.main(ActivityThread.java:5572) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763) 
     Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Ljavax/imageio/ImageIO;
        at com.example.lib.LoadImageApp.<init>(LoadImageApp.java:66)
        at kostas.sgong.Main_Menu.onClickStart(Main_Menu.java:75)
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:384) 
        at android.view.View.performClick(View.java:4819) 
        at android.view.View$PerformClick.run(View.java:20152) 
        at android.os.Handler.handleCallback(Handler.java:815) 
        at android.os.Handler.dispatchMessage(Handler.java:104) 
        at android.os.Looper.loop(Looper.java:194) 
        at android.app.ActivityThread.main(ActivityThread.java:5572) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763) 
     Caused by: java.lang.ClassNotFoundException: Didn't find class "javax.imageio.ImageIO" on path: DexPathList[[zip file "/data/app/kostas.sgong-1/base.apk", zip file "/data/app/kostas.sgong-1/split_lib_dependencies_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_0_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_1_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_2_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_3_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_4_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_5_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_6_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_7_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_8_apk.apk", zip file "/data/app/kostas.sgong-1/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
        at com.example.lib.LoadImageApp.<init>(LoadImageApp.java:66) 
        at kostas.sgong.Main_Menu.onClickStart(Main_Menu.java:75) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:384) 
        at android.view.View.performClick(View.java:4819) 
        at android.view.View$PerformClick.run(View.java:20152) 
        at android.os.Handler.handleCallback(Handler.java:815) 
        at android.os.Handler.dispatchMessage(Handler.java:104) 
        at android.os.Looper.loop(Looper.java:194) 
        at android.app.ActivityThread.main(ActivityThread.java:5572) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763) 
        Suppressed: java.lang.ClassNotFoundException: javax.imageio.ImageIO
        at java.lang.Class.classForName(Native Method)
        at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
        at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
java.lang.IllegalStateException:无法为android执行方法:onClick
在android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:389)
在android.view.view.performClick上(view.java:4819)
在android.view.view$PerformClick.run(view.java:20152)
位于android.os.Handler.handleCallback(Handler.java:815)
位于android.os.Handler.dispatchMessage(Handler.java:104)
位于android.os.Looper.loop(Looper.java:194)
位于android.app.ActivityThread.main(ActivityThread.java:5572)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763)
原因:java.lang.reflect.InvocationTargetException
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:384)
在android.view.view.performClick上(view.java:4819)
在android.view.view$PerformClick.run(view.java:20152)
位于android.os.Handler.handleCallback(Handler.java:815)
位于android.os.Handler.dispatchMessage(Handler.java:104)
位于android.os.Looper.loop(Looper.java:194)
位于android.app.ActivityThread.main(ActivityThread.java:5572)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763)
原因:java.lang.NoClassDefFoundError:解析失败:Ljavax/imageio/imageio;
位于com.example.lib.LoadImageApp。(LoadImageApp.java:66)
在kostas.sgong.Main_Menu.onClickStart(Main_Menu.java:75)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:384)
在android.view.view.performClick上(view.java:4819)
在android.view.view$PerformClick.run(view.java:20152)
位于android.os.Handler.handleCallback(Handler.java:815)
位于android.os.Handler.dispatchMessage(Handler.java:104)
位于android.os.Looper.loop(Looper.java:194)
位于android.app.ActivityThread.main(ActivityThread.java:5572)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763)
原因:java.lang.ClassNotFoundException:在路径:DexPathList[[zip文件/data/app/kostas.sgong-1/base.apk],zip文件/data/app/kostas.sgong-1/split\u lib\u dependencies\u apk.apk”,zip文件/data/app/kostas.sgong-1/split\u lib\u slice\u slice\u apk.apk,未找到类“javax.imageio.imageio”,zip文件“/data/app/kostas.sgong-1/split_-lib-slice\u 2\u apk.apk”,zip文件“/data/app/kostas.sgong-1/split_-lib-slice\u 3\u apk.apk”,zip文件“/data/app/kostas.sgong-1/split_-lib-slice\u-slice\u 4\u apk.apk”,zip文件“/data/app/app/sgong-1/split_-lib-slice\u-slice\u-5\u apk.apk”,zip文件“/apk“/data/app/kostas.sgong-1/split_lib_slice_7_apk.apk”,zip文件“/data/app/kostas.sgong-1/split_lib_slice_8_apk.apk”,zip文件“/data/app/kostas.sgong-1/split_lib_slice_9_apk.apk”],国家图书馆目录=[/vendor/lib64,/system/lib64]]
位于dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:511)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:469)
位于com.example.lib.LoadImageApp。(LoadImageApp.java:66)
在kostas.sgong.Main_Menu.onClickStart(Main_Menu.java:75)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:384)
在android.view.view.performClick上(view.java:4819)
在android.view.view$PerformClick.run(view.java:20152)
位于android.os.Handler.handleCallback(Handler.java:815)
位于android.os.Handler.dispatchMessage(Handler.java:104)
位于android.os.Looper.loop(Looper.java:194)
位于android.app.ActivityThread.main(ActivityThread.java:5572)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:968)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:763)
抑制:java.lang.ClassNotFoundException:javax.imageio.imageio
位于java.lang.Class.classForName(本机方法)
位于java.lang.BootClassLoader.findClass(ClassLoader.java:781)
在java.lang.B
Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Ljavax/imageio/ImageIO;