Android ACTION_IMAGE_CAPTURE 重新启动应用程序
Android ACTION_IMAGE_CAPTURE restarts application
当我在我的应用程序中使用相机拍照时,app/activity 在我保存我拍摄的照片时重新启动(并且所有其他活动也关闭)。另外当我调试应用程序时,调试器在拍照后断开连接。
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
File file = getOutputMediaFile(1);
picUri = Uri.fromFile(file);
i.putExtra(MediaStore.EXTRA_OUTPUT, picUri);
startActivityForResult(i, 0);
我的 onActivityResult:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) {
super.onActivityResult(requestCode, resultCode, imageReturnedIntent);
if (resultCode == Activity.RESULT_OK) {
switch (requestCode) {
case 0:
mProgress.show();
loadCameraImage();
break;
case 1:
mProgress.show();
Uri uri = imageReturnedIntent.getData();
loadFileImage(uri);
break;
}
}
}
Android 必须为相机应用程序释放内存,您的进程已终止。当相机应用程序退出并控制 returns 到您的应用程序时,它会自动重启。这是完全正常的,在许多其他情况下,当您的应用程序不在前台时,您的应用程序进程将被终止。
当我在我的应用程序中使用相机拍照时,app/activity 在我保存我拍摄的照片时重新启动(并且所有其他活动也关闭)。另外当我调试应用程序时,调试器在拍照后断开连接。
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
File file = getOutputMediaFile(1);
picUri = Uri.fromFile(file);
i.putExtra(MediaStore.EXTRA_OUTPUT, picUri);
startActivityForResult(i, 0);
我的 onActivityResult:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) {
super.onActivityResult(requestCode, resultCode, imageReturnedIntent);
if (resultCode == Activity.RESULT_OK) {
switch (requestCode) {
case 0:
mProgress.show();
loadCameraImage();
break;
case 1:
mProgress.show();
Uri uri = imageReturnedIntent.getData();
loadFileImage(uri);
break;
}
}
}
Android 必须为相机应用程序释放内存,您的进程已终止。当相机应用程序退出并控制 returns 到您的应用程序时,它会自动重启。这是完全正常的,在许多其他情况下,当您的应用程序不在前台时,您的应用程序进程将被终止。