小米手机调用系统截图挂掉问题
调试系统切图 用户修改头像,当用户选择相册图片,然后调用系统切图工具后 小米手机直接退出程序,测试 MX 三星 都没问题
以下代码最关键地方
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.parse(imagePath));
intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString());
public static void startPhotoZoom(Context context,Uri uri,String imagePath, int size, int requestCode) { Intent intent = new Intent("com.android.camera.action.CROP"); intent.setDataAndType(uri, "image/*"); // crop为true是设置在开启的intent中设置显示的view可以剪裁 intent.putExtra("crop", "true"); // aspectX aspectY 是宽高的比例 intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); // outputX,outputY 是剪裁图片的宽高 intent.putExtra("outputX", size); intent.putExtra("outputY", size); intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.parse(imagePath)); intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString()); ((Activity)context).startActivityForResult(intent, requestCode); }
调试系统切图方法 在onActivityResult方法中
Uri uri = data.getData(); String name= DateFormat.format("yyyyMMdd_hhmmss", Calendar.getInstance(Locale.CHINA))+AppConfig.IMAGETYPE; filename=fileUtils.getExtPath()+"/"+AppConfig.SD_DIR+"/"+name; Camera.startPhotoZoom(context, uri, "file://"+filename,AppConfig.outputX, PHOTOALBUM_RESULT);
将图片在imageview 在onActivityResult方法中
if(requestCode==PHOTOALBUM_RESULT){ FangDaImageLoader.getInstance().setImage("file:///"+filename, img_photo); }