问题描述
App 打开在线链接出现重定向,随后会出现“加载失败”的提示。
问题排查
可能由于第三方的 Scheme 在手机上没有对应的 App,导致打开 URL 的时候客户端出现错误信息:ERR_UNKNOWN_URL_SCHEME
。排查的过程如下:
过滤日志。在 Android Studio 控制台的日志信息中过滤关键字
onReceived
。查看日志中是否有ERR_UNKNOWN_URL_SCHEME
信息。若日志中不包含
ERR_UNKNOWN_URL_SCHEME
,请加入钉钉答疑群 41708565 咨询。若日志中包含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 工程,加入钉钉答疑群 41708565 咨询。
文档内容是否对您有帮助?