deeplink跳轉快應用返回出現兩次系統新增桌面的彈框
現象描述
從應用市場開啟快應用,點選返回時,系統新增桌面圖示只出現一次彈窗。但是使用 deeplink開啟跳轉頁面,點選返回時,系統新增桌面圖示會出現一次彈窗後再閃一次。
問題分析
現網正常透過 Deeplink、網頁跳轉方式進入快應用時,使用系統建立桌面圖示時,出現一次彈框,不會再閃一次。對Deeplink跳轉的頁面程式碼進行分析,發現頁面程式碼裡對onBackPress(監聽返回按鈕動作)函式進行了重寫處理。
其中 this.entryDirect為Deeplink跳轉時攜帶的引數。
onBackPress是使用者點選返回按鈕時觸發的,當返回true表示頁面按應用自己的返回邏輯處理,返回false表示按預設的返回邏輯處理,不返回值則和返回false一樣,按預設的返回邏輯處理。
在這段程式碼中,開發者在 onBackPress中判斷為Deeplink進入快應用時,呼叫this.app.exit()退出應用,此時會觸發finish事件,而開發者沒有在onBackPress返回true,所以按預設的返回邏輯處理,也觸發了finish事件。快應用中心在監聽到finish事件後,就會彈框引導使用者建立圖示,從而導致出現兩次彈框。
解決方法
對介面 onBackPress函式程式碼進行修改,呼叫this.app.exit()退出應用後,不再使用預設按鈕返回邏輯。
建議與總結
當頁面需要使用 onBackPress(監聽返回按鈕動作)函式處理自己邏輯時,需要在函式最後返回true,否則處理完onBackPress程式碼後預設會走系統返回邏輯,容易導致異常。
原文連結: https://developer.huawei.com/consumer/cn/forum/topic/0204422876080970622?fid=18
原作者:Mayism
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69970551/viewspace-2769037/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Deeplink跳轉提示應用下架
- 卡片跳轉快應用指定頁面,如何點返回直接退出快應用回到卡片
- 短視訊商城系統,系統提示框、確認框、點選空白關閉彈出框
- 彈框 在Avalonia中,使用系統預設的彈框
- Deeplink實現華為應用外商品支付功能
- 如何用Deeplink為快應用提供多個快速直達入口
- win10系統下應用商店登入出現黑框如何解決Win10
- 教你如何在快應用中跳轉到Android的appAndroidAPP
- Android應用內外跳 — 跳轉到應用市場Android
- 頁面的跳轉技巧-setViewControllersViewController
- win10系統返回傳統桌面的方法Win10
- JS學習之Bom(系統彈框)JS
- uniapp接入微信分享iOS總是跳轉兩次APPiOS
- SpringMVC---02---實現頁面的跳轉 轉向與重定向SpringMVC
- Cordova + Vue 實現點選兩次退出應用Vue
- 如何區分router.push跳轉快應用的來源渠道
- win10系統怎麼禁用應用軟體彈出廣告Win10
- uni-APP 新增頁面實現路由跳轉APP路由
- Win10系統下怎麼新增跳轉列表的專案數Win10
- Flutter | 超實用簡單選單彈出框 PopupMenuButtonFlutter
- 短視訊直播系統,Vue實現element-ui彈框可以拖拽VueUI
- Android主介面連續兩次點選物理返回鍵退出應用功能實現Android
- swift實現仿知乎搖一搖彈出框Swift
- html + css + js 原生 彈出提示框的實現HTMLCSSJS
- sweetalert 彈出框瞬間消失
- 記一次編寫彈框元件元件
- laravel-admin 模態框裡面的彈出表單 select 聯動不能使用Laravel
- 用setjmp和longjmp實現跳轉
- 3.系統呼叫跳轉流程
- asyUI分頁中,如何實現頁面跳轉,再返回時,...UI
- SAP UI5 Web Component不同React頁面的跳轉實現UIWebReact
- 城市選擇頁面的 路由配置 跳轉路由
- 實現彈框的樣式
- 點選彈出居中登陸框
- 彈框
- easyui form表單提交新增額外引數,富文字框內容顯示兩次UIORM
- vue 跳轉的兩種方法Vue
- php 跳轉頁面之前彈窗提示PHP