2

次のタスクがあります。

最初のアクティビティ (たとえば「アクティビティ A」) と 2 番目のアクティビティ (「アクティビティ B」) があります。また、サーバーからの通知をキャッチするためのサービス(単に「サービス」)もあります。次のアルゴリズムを実現したいと思います。

  1. ユーザーは「アクティビティ A」または「アクティビティ B」にいます
  2. 「サービス」がサーバーからの通知を受け取ります
  3. ユーザーが「アクティビティ A」にいる場合、サービスは通知バーに通知を作成する必要があります。ユーザーがすでに「アクティビティ B」を使用している場合、サービスは通知を作成せずに「アクティビティ B」を再作成する必要があります。
  4. 通知が作成されている場合、ユーザーはそれをクリックして「アクティビティ B」に進むことができます

現在のアクティビティを取得する方法がわからないため、3 番目のステップを除いてすべてのステップを実行しました。教えてください、現在のアクティビティを検出する方法はありますか? ありがとう。

4

1 に答える 1

0

Activityユーザーがオンになっていることを取得する「正当な」方法はありません。

あなたはいつでもハックをすることができます:

  • クラスでstatic boolean sVisibleメンバーを宣言するActivityB
  • onStart()、そのフラグをtrue
  • onStop()、そのフラグをfalse
  • あなたのServiceチェック でif(ActivityB.sVisible)
于 2013-09-07T13:41:14.897 に答える