目前我正在做一個呼叫輔助應用程式的專案,并通過 InAppWebView 啟動第二個應用程式。當第二個應用程式面向用戶時,inappwebview 仍在運行并發送實時更新,我正在捕獲它以觸發事件,例如它將發送支付完成,允許我觸發進入摘要頁面。
我遇到的問題是,我無法順利轉回我的應用程式。所以我發現有兩種方法可以讓我回到應用程式。
一,使用我的動態鏈接啟動 URL,但這種方法我無法接收鏈接。
其次,通過chrome等外部應用程式啟動它。
除了螢屏跳轉到 chrome 之外,第二種方法效果很好。它從我離開的地方繼續。
但是,我想要的是兩者,從我離開的地方繼續,而不是讓 chrome 跳躍。或者從我所讀到的正確方法是使用意圖過濾器定向到活動。但是平滑的方法我沒有收到鏈接,而是跳轉的方法我收到了鏈接。
請幫忙T-T
uj5u.com熱心網友回復:
如果您需要使用 firebase 添加動態鏈接,您可以在檔案中找到設定,并在firebase_dynamic_links的幫助下處理應用程式內部的位置,還可以從下面函式中的鏈接執行引數,您可以創建一個流收聽應用程式在后臺或前臺單擊的任何動態鏈接,即PendingDynamicLinkData應用程式終止的時間。業務邏輯以及應用程式如何與您互動。
static Future<void> initDynamicLink() async {
FirebaseDynamicLinks.instance.onLink.listen((dynamicLink) async {
if (dynamicLink.link != Uri.parse("uri")) {
log(dynamicLink.link.queryParameters.toString());
final Uri deepLink = dynamicLink.link;
// you should handle the navigation or you logic here
}
}).onError((error) {
debugPrint("error from dynamic link Stream : : :: ${error.toString()}");
});
final PendingDynamicLinkData? initialLink =
await FirebaseDynamicLinks.instance.getInitialLink();
try {
if (initialLink != null) {
log(initialLink.link.toString());
final Uri deepLink = dynamicLink.link;
// you should handle the navigation or you logic here
}
} catch (e) {
debugPrint('No deepLink found');
}
}
不要忘記main像這樣呼叫這個函式
void main()async{
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
initDynamicLink();
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/511819.html
