在我的应用程序中,我使用
Android设备相机捕获我的图像.在某些设备上它工作正常,但不是全部,我只是测试了LG nexus 5 E960,在我捕获图像后它总是结束崩溃而无法保存结果这是我的代码:
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(cameraIntent,1); protected void onActivityResult(int requestCode,int resultCode,Intent returnimage) { super.onActivityResult(requestCode,resultCode,returnimage); switch (requestCode) { case 1: if (resultCode == RESULT_OK) { Uri selectedImage = returnimage.getData(); String stringUri; stringUri = selectedImage.toString(); Intent i1 = new Intent(MainActivity.this,Secondpage.class); i1.putExtra("Stringuri",stringUri ); startActivity(i1); } break;
我的logcat是:
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null,request=1,result=-1,data=Intent { act=inline-data (has extras) }} to activity {com.photostikers/com.photostikers.MainActivity}: java.lang.NullPointerException 02-13 12:27:54.315: E/AndroidRuntime(28759): at android.app.ActivityThread.deliverResults(ActivityThread.java:3365) 02-13 12:27:54.315: E/AndroidRuntime(28759): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2775) 02-13 12:27:54.315: E/AndroidRuntime(28759): ... 12 more 02-13 12:27:54.315: E/AndroidRuntime(28759): Caused by: java.lang.NullPointerException 02-13 12:27:54.315: E/AndroidRuntime(28759): at com.photostikers.MainActivity.onActivityResult(MainActivity.java:335) 02-13 12:27:54.315: E/AndroidRuntime(28759): at android.app.Activity.dispatchActivityResult(Activity.java:5423) 02-13 12:27:54.315: E/AndroidRuntime(28759): at android.app.ActivityThread.deliverResults(ActivityThread.java:3361) 02-13 12:27:54.315: E/AndroidRuntime(28759): ... 13 more
解决方法
使用像
@Override protected void onActivityResult(int requestCode,Intent data) { if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) { Bundle extras = data.getExtras(); Bitmap imageBitmap = (Bitmap) extras.get("data"); Intent i1 = new Intent(MainActivity.this,Secondpage.class); i1.putExtra("bitmap",imageBitmap ); startActivity(i1); } }
并在Secondpage活动中
得到像这样的图像
Bitmap bitimage = getIntent().getParcelableExtra("bitmap"); your_image+_view.setimageBitmap(bitimage);
浏览Get the Thumbnail的Android开发人员文档
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。