簡體   English   中英

如何通過Titanium中的推送通知判斷應用程序是打開還是恢復?

[英]How do I tell if the app was opened or resumed as a result of a push notification in Titanium?

你如何處理Titanium中的推送方式取決於推送到達時應用程序是否打開?

當推送通知進入並且我的應用程序正在運行時,我想彈出一個消息提供,以將用戶帶到通知所引用的項目。 如果應用程序關閉,並且用戶點擊推送通知並導致應用程序打開,我想直接將用戶帶到該項目而無需彈出窗口。

Titanium的registerForPushNotifications似乎只有一個回調“回調”,無論推送到達時應用程序的狀態如何都會被調用。 根據收到推送通知時如何判斷我的iPhone應用程序是否正在運行? 您可以在Objective C中使用didReceiveRemoteNotification和didFinishLaunchingWithOptions,但Titanium似乎不提供對它們的單獨訪問。

如果用戶來自通知,“回調”功能將在“恢復”后立即觸發。

所以我會按照以下方式處理你的情況:

有一個變量來跟蹤應用程序是否暫停(la var is_paused = false;運行時)。 在Ti.App'pause'事件后,is_paused將切換為true,並在Ti.App'resume'事件后切換回false狀態並超時(1秒將完成)。

然后,通過檢查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)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM