簡體   English   中英

應用程序終止狀態下的 IOS 博覽會推送通知

[英]IOS expo push notifications in app killed state

為了更清楚地說明這個問題,我正在為 IOS 開發這個,在我當前的項目中使用 expo 推送通知和 react-navigation v6 以及 expo sdk44。

當應用程序處於終止狀態時用戶與通知交互時我遇到問題(通知成功到達所有數據),我遇到的問題是,我想將用戶導航到特定屏幕。 問題是因為我的navigationRef is null 在這里我需要提到我沒有創建單獨的RootNavigator 就像這里顯示的那樣https://reactnavigation.org/docs/navigating-without-navigation-prop/

處理這個問題的“正確”方式是什么? 到目前為止,我已經嘗試將所有相關的推送通知偵聽器代碼放在 NavigatonContainer 的 onReady 回調中(這有效)。

我還嘗試制作單獨的useEffect並更改isReady變量的狀態並在<NavigationContainer ref={navigationRef} onReady={() => {setNavigatorReady(true)}}>中設置其新值以強制重新渲染並因此運行再次使用useEffect中的代碼。 (這種方法不起作用)

只是總結一下我目前的問題。 當用戶在應用程序處於終止狀態時與通知交互時,我希望它們被導航到特定屏幕。

提前致謝。

我也在使用react-navigation 6.xexpo 為了解決這個問題,我幾乎遵循了expo文檔的這一部分: https ://docs.expo.dev/versions/latest/sdk/notifications/#addnotificationresponsereceivedlistenerlistener-event-notificationresponse--void-void。

它向您展示了如何實現addNotificationResponseReceivedListener ,每當用戶與通知交互時都會調用它。 它適用於所有情況,即使應用程序被killed ,這是您感興趣的特定情況。 在此處輸入圖像描述

該文檔還向您展示了如何將此偵聽器與react-navigation集成。 鏈接: https ://docs.expo.dev/versions/latest/sdk/notifications/#handling-push-notifications-with-react-navigation

暫無
暫無

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

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