web调用ios 失败问题

Posted 无雪冬天

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web调用ios 失败问题相关的知识,希望对你有一定的参考价值。

在某些ios版本的app上,通过web 调用app存在失败的想象,通过联调
发现JSbridge 这个地方并没有发送请求


        var WVJBIframe = document.createElement(\'iframe\');
        WVJBIframe.style.display = \'none\';
        WVJBIframe.src = \'wvjbscheme://__BRIDGE_LOADED__\';

测试了很久,以为是app缓存了iframe的请求造成的问题,
后来一想没准iframe 延迟创建,再赋予 WVJBIframe.src值的时候是空的对象,并没有负值成功
所以代码追加了 setTime 测试正常了

 setTimeout(function(){
          WVJBIframe.style.display = \'none\';
          WVJBIframe.src = \'wvjbscheme://__BRIDGE_LOADED__\';
          document.documentElement.appendChild(WVJBIframe);
          setTimeout(function () {
              document.documentElement.removeChild(WVJBIframe)
          }, 0);
          sessionStorage.phoneType = \'ios\'
        },100)

此问题只在部分系统版本中出现,大部分没有问题。

以上是关于web调用ios 失败问题的主要内容,如果未能解决你的问题,请参考以下文章

从soap Web服务结果更新文本字段失败

Flutter Web:google_sign_in_web:适用于桌面和 iOS。在 Android Chrome 上失败

iOS 上的 PhoneRTC:链接器命令失败,退出代码为 1(使用 -v 查看调用)

导致资产预编译在heroku部署上失败的代码片段

有关链接器命令的错误失败,退出代码为 1(使用 -v 查看调用)

对 ASP.NET Web 服务的 jQuery ajax POST 调用随机失败