したがって、2つのAndroidアクティビティがあります(アクティビティ1( SignUpActivity )、アクティビティ2( RegisterActivity ))
最初のアクティビティは、新しいユーザーの場合に 2 番目のアクティビティを開始することになっています (問題ではありません)。
秘訣は、最初に特定のサービスを呼び出す必要があることです。このサービスは、特定のサーバーを呼び出し、データを取得して (RegisterActivity) に提供します。
そのためには、いくつかの可能な解決策があります
サービスは必要ありません。アクティビティ 1 から HTTP 要求を作成するだけで済みます。ただし、SignUpActivity に AsyncTask を拡張するクラスが既にあります。別のジョブがあります (基本的に、ユーザーをサインインさせます。
サービスを呼び出してからアクティビティ 2 を呼び出すことができます (これは簡単な解決策です)。しかし、サービスが終了する前に 2 番目のアクティビティが開始されます。つまり、まだ null であるデータにアクセスしようとします。
2 番目の解決策は実装が簡単に思えますが、私が考えることができる唯一の方法は、セマフォ ロックを使用することです。これは私があまり得意ではないことであり、それが最も賢明な解決策であるかどうかはわかりません.
私はそれを使用しようとしましたが、うまくいかず、これが正しい方法だとは感じませんでした
その問題を解決する賢い方法は何だと思いますか。