現在、カメラまたはギャラリーから次のような写真を取得しています。
Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, RESULT_LOAD_IMAGE);
これはうまくいきます。ちょっと誤解を招くのは、現在のアクティビティの動作です。
これは onSaveInstanceState を正常に呼び出しますが、コールバック onActivityResult を取得すると、onRestoreInstanceState を呼び出すことはありません。今ではライフサイクルを理解していますが、これは直感に反するようです。onSaveInstanceState/onRestoreInstanceState に関して物事がどのように実行されるかを本当に知る必要があります。それとも、それを無視して onPause/onResume で perm ストレージを使用しますか。それぞれ onPause/onResume に先行する onSaveInstanceState/onRestoreInstanceState の説明を見てきました。したがって、アクティビティのライフサイクルは実際にはこれを処理していないようです。直観的には、onSaveInstanceState が呼び出された場合、onRestoreInstanceState を呼び出す必要があると考えるでしょう。複雑なアクティビティでは、自分で書く準備がほぼ整っています。この種のシナリオを処理する最善の方法は何ですか?