当前位置: 首页 > 知识库问答 >
问题:

Android 4.4.3 web view不再遵循重定向

姬振
2023-03-14

我们的混合应用程序使用网页视图,从android版本4.4.3开始,网页视图不呈现。该应用程序尝试加载HTTPS web视图,并仅停留在那里大约50秒,之后它抛出一个异常,类似于这个Android致命信号11(SIGSEGV)在0x636F7D89(代码=1)。怎么能追查到呢?。显然,我们沿着这条建议的道路走下去了,所以没有多大的效果。

通过我们的实验,我们确定了以下几点

  1. 最后一个HTTP请求/响应(执行重定向)与版本4.4.2和4.4.3相同。我们在charles代理中验证了这一点。
  2. 重定向后,4.4.2创建购物车(SSL)请求/响应,但4.4.3甚至没有创建请求。
  3. Chrome远程调试无济于事,inspect只是显示一个空白屏幕。
  4. 设备上的chrome浏览器版本并不重要。
  5. 我们使用的重定向代码是302。
  6. 所有以前的android版本都正常工作

虽然最初我们认为它是一个Lollipop/ART特定的bug,但现在看起来已经不是这样了。我们应该如何进行有什么想法吗?

实际上崩溃发生在这个位置libwebviewchromium.so

墓碑文件也位于-https://gist.github.com/prolificcoder/ebd82081b47640a3cae2

来自设备的墓碑-https://gist.github.com/anonymous/2a6a28b2ec976075f587

Logcat日志-https://slack-files.com/T02RAT9SZ-F0351N4NW-997F5C

共有1个答案

元彦君
2023-03-14

看起来Note3libWebViewChromium.so与您可以从AOSP构建的栈不匹配,但x86的栈却匹配,所以这里是符号化的栈。

不幸的是,您似乎在WebView使用的呈现引擎Blink中发现了一个bug。无论你试图加载什么页面,似乎都会使WebView崩溃,同时扼杀你的应用程序。您能验证在不同的WebView(编写一个简单的WebView应用程序或使用基于WebView的浏览器)中加载特定URL是否也会崩溃吗?如果是这样的话,那么如果您可以共享URL或者隔离HTML/CSS/JS中的冒犯部分并共享它,那将是非常理想的。

 类似资料:
  • 前端:localhost:3000(反应应用程序)加载pp.js(客户端)调用api/ 后端:localhost:8082(nodejs express应用程序)发送重定向到客户端上的/测试endpoint 主要问题在于客户端(react),一旦API调用完成,重定向将被阻止。。。如何使客户端应用程序响应此重定向到'http://localhost:3000/test'我的后端已经有cors,启用

  • 这是我认为不遵循代码应该做什么的代码片段: 如果我发表评论 代码显然不起作用。如果我取消注释,它就会取消注释! 注意:只要按“s”开始游戏,启动就是真的。但是,该方法在开始时被调用,因此“hi”应该显示多次并无限期地显示,直到我按“s”键。 一张图片说一千个字,所以我给你几百张图片(视频)来解释我的意思:https://dl.dropbox.com/u/2792692/CodeWeird.ogv

  • 问题内容: 我有以下python脚本,它可以很好地工作。 但是,我提供的某些URL可能会将其重定向2次或更多次。如何在加载数据之前让python等待重定向完成。例如,当使用上面的代码 这相当于在Google搜索上点击即时幸运按钮,我得到: 香港专业教育学院尝试了(URL,数据,超时),但是,我不确定该放在哪里。 编辑:我实际上发现如果我不重定向,而只是使用第一个链接的标头,我可以抓住下一个重定向的

  • 问题内容: 我想在节点中打开一个页面并处理应用程序中的内容。像这样的事情似乎运作良好: 但是,如果页面返回301/302重定向,则此操作无效。万一有多个重定向,我将如何以可重用的方式进行操作?http上方是否有包装器模块,可以更轻松地处理来自节点应用程序的http响应? 问题答案: http上方是否有包装器模块,可以更轻松地处理来自节点应用程序的http响应? 请求中的重定向逻辑

  • 问题内容: 我觉得这里缺少明显的东西! 输出: 当然应该输出: 这是怎么了 问题答案: 字典未排序。如果需要依赖顺序,则需要一个OrderedDict- Python 2.7的模块中有一个,或者您可以使用多种食谱之一。

  • 问题内容: 这是我认为不遵循应执行的代码的代码段: 如果我发表评论 该代码显然无法正常工作。如果我取消注释,那就可以了! 注意:只要按“ s”开始游戏,start就为true。但是,该方法在一开始就被调用,因此应多次无限制地显示“ hi”,直到按“ s”键为止。 图片说出一千个单词,所以我给你数百张图片(视频)来解释我的意思:https : //dl.dropbox.com/u/2792692/C