假设我在activityA中打开相机:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photoFile));
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
在相机拍摄过程中,收到来自服务器的message,需要在activityA中,执行某些操作,例如addview
但是activityA已经不再forground了,这个时候怎么用code来finish拍照的activity?或者有没有其他的思路?
戻れたら更新します
こういう事は写真を撮って帰ってからでないと出来ません。まずメッセージを別の場所に保存し、アクティビティに戻ったら、onResume 中にチェックして未処理のメッセージがあるかどうかを確認し、あれば更新します。
バックグラウンドでサーバーによってプッシュされたメッセージを受信したときに、アクティビティ A を自動的にポップアップする、つまりアクティビティ A をフォアグラウンドに置くことができるので、写真を撮るアクティビティを閉じる必要はないと思います。通知バーに表示することもできます。通知をポップアップ表示して、ユーザーが写真を撮り続けるか、アクティビティ A に入るかを決定できるようにすることで、問題を解決できます。