0

次の問題があり、問題が発生しないように実装を設計したいと思います。

アプリケーションの起動時に、電話を最新の状態に保つためにサーバー要求を 1 つ (そして 1 つだけ) 実行する必要があります。その後、メインの活動に入ります。

私の最大の問題は、Android の [戻る] ボタンです。これにより、スタックが最初のアクティビティ、つまりサーバー同期を行うアクティビティに戻る可能性があります。

私は次の実装を考えました:

  1. すぐに Main アクティビティを開始しました
  2. onCreate()MainのActivityで、同期プロセスを開始します...いくつかの背景ロゴ、進行状況バーなどを使用して...
  3. 同期が完了すると、finish()私は自分の関数を呼び出しますActivity

次に、メインのonCreate()、またはストレートに戻しますか? この実装は理にかなっていますか?onResume()Activity

4

2 に答える 2

0

更新しました

最初に表示されないようにするには、宣言Activityに次の行を追加するだけですActivity

<activity 
        android:name=".FirstActivity"
        android:noHistory="true" /> 

noHistoryタグを使用するActivityと、プログラムで自分で行う必要なく削除されます

于 2012-10-22T10:34:13.237 に答える
0

同じことを続けることができますが、同期を行う最初のアクティビティでは、それを noHistory タスクにします。http://developer.android.com/guide/topics/manifest/activity-element.html#nohist

または、最初のアクティビティで、呼び出した後、startActivity(MainActivity)finish() を呼び出すことができます。これにより、FirstActivity がバックスタックから削除され、MainActivity がスタックの一番上に残ります。

それが役立つことを願っています。

アップデート

私が言いたいのは、FirstActivityあなたの最初の活動をして、あなたはMainActivityから始めるということですFirstActivity。を呼び出した後、次のステートメントを呼び出しstartActivity()ます。これは完全に受け入れられます。FirstActivityfinish()

于 2012-10-22T10:38:35.750 に答える