0

カスタム Camera 実装を持つ新しいアクティビティを開始すると、メイン アクティビティが閉じられます (IsFinishing() を true に設定して onStop が呼び出されます)。他のアクティビティを呼び出す場合、これは起こりません。エラーなしで他のアクティビティを開始できるため、メモリ不足の状態が原因でメインのアクティビティが閉じられているという前提で作業しています。カメラ アクティビティに再利用されるサービスがメイン アクティビティで開始されているため、カメラ アクティビティを呼び出すときにメイン アクティビティがシャットダウンされないようにするにはどうすればよいですか?

新しいアクティビティを呼び出すコード:

startActivity(new Intent(Context, MyClass.Snapshot.class));
4

3 に答える 3

0

MainActivity を閉じないようにすることは実行可能なオプションではないと思います。その理由は、サービスを開始する MainActivity に関連していると述べました。Context を参照するものは何でもサービスを開始できます。シングルトンは非常に簡単に使用できます。メイン アクティビティを維持する必要はなく、Android は常にこのようなことを決定できるため、良い習慣ではないと思います。あなたが試みるかもしれないことの 1 つは、Sticky サービスを開始し、それが違いを生むかどうかを確認することです。我々に教えてください。

于 2012-07-31T22:18:26.807 に答える
0

答えは自分の愚かさです。私のstartActivity呼び出しの下にコメントされたコードがたくさんありましたが、一番下に向かって1行コメントアウトするのを忘れていました...その行はすべてを説明するonFinish()を呼び出していました。

私の愚かさを診断しようとしてくれてありがとう。

于 2012-07-31T22:19:05.183 に答える
0

startActivityForResultを使用して、Activity に結果を配信することを Android に通知してみてください。

于 2012-07-31T22:04:44.487 に答える