3

だから私は活動A、B、Cを持っていますアプリの流れはA-> B-> Cです

A、B はログイン機能に接続されており、ログインするために 1 回だけ起動されます。アプリ全体が C アクティビティ内にあります。ユーザーがCを使用すると、A、Bは生きています。すべて正常に動作します。

今..

アプリの PID を kill します。次に、タスクマネージャーから選択します。

A が起動していない、B が起動していない、C->onCreate(not null) が起動します。

A または B のインスタンスが生きているかどうかを確認することで、この状況を検出できます。この特定のシナリオが発生したことを認識したので、アプリを再起動したいと思います -> アクティビティ A に移動して、新たに起動します。

問題は onCraete(not null) 内でアプリを再起動することです

アクティビティ CI の onCreate(not null) では、次のようにします。

if (A==null or B==null)
finish;
return;

次に、アクティビティ B で同じです。これは機能し、C と B が終了し、A がポップアップします。

フラグメント onCreate && onCreateView は、C onDestroy が呼び出される前に起動します。アクティビティ C に多くのフラグメントがあるため、アプリのクラッシュが発生します。

それで、私の質問はです。このシナリオで、フラグメント onCreate と onCreateView が呼び出されないように、アクティビティ C onCreate (not null) (またはマニフェストの C onCreate の外でも) でアプリを強制的に再起動する方法はありますか?

PS : マニフェストで clearTaskonLaunch を試しましたが、画面を一時停止/再開しただけでもアプリの再起動が強制されます。

どんな提案も役に立ちます

4

1 に答える 1