5

プッシュが到着したときにアプリが開いていたかどうかに応じて、Titanium でプッシュをどのように処理しますか?

プッシュ通知が届き、アプリが実行されているときに、通知が参照するアイテムにユーザーを誘導するメッセージをポップアップ表示したいと考えています。アプリが閉じていて、ユーザーがプッシュ通知をタップしてアプリを開くと、ポップアップなしでユーザーを直接アイテムに移動したいと思います。

Titanium の registerForPushNotifications には、プッシュが到着したときのアプリの状態に関係なく呼び出されるコールバック「callback」が 1 つしかないようです。プッシュ通知を受信したときに iPhone アプリが実行されているかどうかを確認するにはどうすればよいですか? によると、Objective CでdidReceiveRemoteNotificationとdidFinishLaunchingWithOptionsを使用できますが、Titaniumはそれらへの個別のアクセスを提供していないようです。

4

1 に答える 1

1

ユーザーが通知から来た場合、「再開」の直後に「コールバック」関数が起動されます。

したがって、私はあなたのケースを次のように処理します。

アプリが一時停止されているかどうかを追跡する変数があります (実行中の場合は、変数 is_paused = false;)。is_paused は、Ti.App の「一時停止」イベントで true に切り替えられ、Ti.App の「再開」イベントでタイムアウト (1 秒で十分) で false 状態に戻ります。

次に、is_paused var が true か false かを確認することで、コールバック関数にさまざまな機能を持たせることができます。

//in notification callback
if(is_paused){ 
   //user is coming from background (do your thing automatically)
}else{
  //user is in app (display the alert)
}
于 2012-08-24T07:41:42.870 に答える