問題描述
App 開啟線上連結出現重新導向,隨後會出現“載入失敗”的提示。
問題排查
可能由於第三方的 Scheme 在手機上沒有對應的 App,導致開啟 URL 的時候用戶端出現錯誤資訊:ERR_UNKNOWN_URL_SCHEME。排查的過程如下:
過濾日誌。在 Android Studio 控制台的日誌資訊中過濾關鍵字
onReceived。查看日誌中是否有ERR_UNKNOWN_URL_SCHEME資訊。若日誌中不包含
ERR_UNKNOWN_URL_SCHEME,請加入DingTalk答疑群 145930007362 諮詢。若日誌中包含ERR_UNKNOWN_URL_SCHEME,則需按下面的操作步驟實現public interface H5SchemeInterceptProvider,在handlerOnScheme中處理網頁端的Scheme請求即可解決該問題。在
H5SchemeInterceptProvider的實作類別中建立handlerOnScheme方法處理網頁端的 Scheme。public class H5SchemeInterceptProviderImpl implements H5SchemeInterceptProvider { @Override //請在如下方法裡面處理scheme的跳轉 public boolean handlerOnScheme(String s, H5Page h5Page) { //返回true表示攔截不走scheme,false表示不攔截 return true; } }在 mPaaS 初始化完成以後設定 Provider。
MP.init(this, MPInitParam.obtain().setCallback(new MPInitParam.MPCallback() { @Override public void onInit() { // This callback indicates that mPaaS has been initialized, and mPaaS related calls can be made in this callback. H5Utils.setProvider(H5SchemeInterceptProvider.class.getName(), new H5SchemeInterceptProviderImpl()); } }) );詳情請參考:初始化 mPaaS。
如果依然不能解決該問題,請準備好相關問題的複現 Demo 工程,加入DingTalk答疑群 145930007362 諮詢。