Android - 从最近的

时间:2016-08-03 23:01:18

标签: android android-activity android-task

我有MainActivity,我可以启动相机应用程序来拍摄和上传照片。在家中长时间按下相机应用程序并从最近返回我返回相机应用程序。如何从最近或点击启动器图标后始终返回MainActivity?

我的相机应用意图:

private void showCamera() {
    try {
         Intent cameraIntent = new Intent(
         android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

         path = Utils.getOutputMediaFileUri(getApplicationContext());

         cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, path);

        startActivityForResult(cameraIntent, Constant.CAMERA_REQUEST);
    } catch (ActivityNotFoundException ex) {
    } catch (Exception ex) {
    }

}

3 个答案:

答案 0 :(得分:0)

在您的主要活动中

android:launchMode="singleTask"

在Manifest.xml文件夹中

答案 1 :(得分:0)

显示主要活动

if (typeof articleAuthor === "undefined") {
  $('.articleItem').html('');
}

答案 2 :(得分:0)

执行此操作的正确方法是将FLAG_ACTIVITY_NO_HISTORY添加到用于启动相机的Intent,如下所示:

    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    cameraIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
    path = Utils.getOutputMediaFileUri(getApplicationContext());
    cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, path);
    startActivityForResult(cameraIntent, Constant.CAMERA_REQUEST);

通过添加NO_HISTORY标记,您告诉Android您不希望相机Activity留下历史记录。当用户离开相机Activity时(即:通过按HOME按钮或接听来电),相机Activity将立即完成。当用户返回您的应用程序时(通过从最近任务列表中选择它,或者通过按HOME屏幕上的应用程序图标),相机Activity将不再位于顶部。