根据外媒 9to5 Google 报道,3 月 23 日几个小时内,大量安卓用户遇到一些安卓应用连续闪退的情况,有人发现卸载安卓系统 WebView 就可以停止闪退。目前,谷歌已经发布了应用崩溃问题的永久修复,涉及更新 Android System WebView 和 Chrome 浏览器 89.0.4389.105 版本升级。

实际上,Android 碎片化问题自其诞生之初业已存在,而且目前看上去并没有好的解决方案。不同系统、不同厂商中的浏览器内核同样存在差异,导致层出不穷的兼容性问题令众多安卓开发同学头疼不已。

为了彻底解决并且掌控这些问题,mPaaS 集成独立的 UC 浏览器内核,由此针对 WebView 所产生的闪退、卡顿等问题可以被有效收敛,统一管控。同时,根据众多业务的应用和测试,使用 UC 浏览器内核,浏览器相关的闪退和 ANR(Application Not Respond) 有明显的下降。

除此之外,围绕 WebView 所产生的任何安全问题,mPaaS 可以在第一时间修复并发布[1],远比厂商升级更有效率。

除 UC WebView 内核之外,mPaaS 同时继承了支付宝深度应用的容器及离线包[2]技术。

常规情况下,在 App 中启动一个线上页面,通常会有一个白屏阶段,这是浏览器需要从服务器下载 HTML 资源。由于手机网络限制,资源加载时间不可控,通常会花费 300ms 以上的实践,用户在这个时间段就会看到页面白屏。

为了优化用户体验,减少白屏时间,支付宝在容器内引用了离线包技术。离线包可以简单理解为一个 zip 压缩包,其中包含前端页面所需的 HTML、CSS、JS、图片等资源,内置到客户端后,容器打开离线包页面时会直接从离线包中获取资源。这个过程仅需毫秒,消除了页面启动白屏的问题。

目前,mPaaS 容器方案支持 HTML5 及小程序。借助离线包能力轻松实现渲染、逻辑、配置等静态资源的预置,摆脱网络环境对页面加载的影响,提升用户体验。

同时,借助 mPaaS 动态发布服务,针对新的产品/业务需求,能够实现快速开发,并通过 mPaaS 控制台即可完成发布;而终端用户客户端中集成的容器 SDK 将自动拉取最新的离线包。这种发布、更新的过程无需通过应用商店审核,最大化提升业务迭代效率。

参考文档

[1]mPaaS 动态发布产品文档:https://help.aliyun.com/document_detail/49580.html

[2]mPaaS H5 容器及离线包产品文档:https://help.aliyun.com/document_detail/59192.html

- END -


行业资讯 | Android WebView 致安卓应用闪退,mPaaS 助你规避这波 Bug的更多相关文章

  1. Android使用百度地图出现闪退及定位时显示蓝屏问题

     目录 1.Android使用百度地图出现闪退 2.Android使用百度地图定位出现蓝屏问题     1.Android使用百度地图出现闪退 一般情况下出现闪退是在AndroidManifest.x ...

  2. Xamarin Android项目真机测试闪退

    Xamarin Android项目真机测试闪退 项目在模拟器中运行正常,但在真机上闪退.这是由于项目设置使用共享的Mono运行时.Visual Studio中,在项目属性-Android Option ...

  3. XAMARIN 安卓程序闪退问题

    参考:https://forums.xamarin.com/discussion/25780/unfortunately-app-name-has-stopped 在VS 2017中使用Xamarin ...

  4. Xamarin Android 真机调试时闪退

    方法1:引起此问题的原因一般是因为 Mono Shared Runtime 在手机上没有运行,这个程序相当于.net运行时,没有运行的话用C#开发的程序自然无法运行. 解决方法是将此程序设置为自动运行 ...

  5. Xamarin.Android真机调试时闪退解决办法

    项目->属性->Android Options,Packaging页签 去掉 Use Shared Runtime可解决

  6. 如果你使用上述这段12行的JavaScript代码,就可以能让firefox、chrome、safari浏览器崩溃,而且还能让iphone重启,安卓手机闪退!

    <html> <body> <script> var total=""; for (var i=0;i<1000000;i ) { tot ...

  7. 阿里安卓面试分析: Android应用的闪退(crash)问题跟踪和解析

    一:问题描述    闪退(Crash)是客户端程序在运行时遭遇无法处理的异常或错误时而退出应用程序的表现,请从crash发生的原因分类与解决方法.在出现crash后如何捕捉并分析异常这两个问题给出自己 ...

  8. 阿里客户端工程师试题简析——Android应用的闪退(crash)分析

    1. 问题描述 闪退(Crash)是客户端程序在运行时遭遇无法处理的异常或错误时而退出应用程序的表现,请从crash发生的原因分类与解决方法.在出现crash后如何捕捉并分析异常这两个问题给出自己的解 ...

  9. Android 5.0 5.1 webview 闪退问题

    自定义webview /** * 处理Android 5.0 5.1 webview 闪退 */ class MyWebView : WebView { companion object{ priva ...

随机推荐

  1. java面试一日一题:mysql中常用的存储引擎有哪些?

    问题:请讲下mysql中常用的引擎有哪些? 分析:该问题主要考察对mysql存储引擎的理解,及区别是什么? 回答要点: 主要从以下几点去考虑, 1.mysql的存储引擎的基本概念? 2.mysql中常 ...

  2. 老和尚给小和尚讲故事引发了Java设计模式:组合模式

    目录 示例 组合模式 定义 意图 主要解决问题 优缺点 安全式和透明式的组合模式 安全式的合成模式的结构 透明式的合成模式的结构 老和尚和小和尚的故事 示例 有一个绘图系统,可以描绘各种图形,假设现在 ...

  3. Vue和Node.js交互之token

    博主最近工作的时候,公司后台使用的JAVA,在做登陆时总会传来一个token然后我存在了本地存储中或Vuex中,之后每一次请求把它带在请求头上,然后就好奇想要自己做一个后台服务器然后做一个完整的登陆的 ...

  4. 05- 移动端APP的分类 与对比webApp hybridApp nativeApp

    随着智能手机的普及,移动端应用几乎成为每个互联网产品的标配.在快速迭代的互联网战场中高效开发.低成本上线产品,是每个应用开发团队追求的目标.此时,选择合适的应用类型和开发模式便至关重要.移动应用可以粗 ...

  5. PHP生成随机数的几种方法

    第一种方法用mt_rand() function GetRandStr($length){ $str='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV ...

  6. mysqli_fetch_array()、mysqli_fetch_assoc、mysqli_fetch_row()和mysqli_fetch_object()的区别

    mysqli_fetch_array() 来使用或输出所有查询的数据. mysqli_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有 返回根据从结果集取得的行生 ...

  7. 用户模式下的线程同步的分析(Windows核心编程)

    线程同步 同一进程或者同一线程可以生成许多不同的子线程来完成规定的任务,但是多个线程同时运行的情况下可能需要对某个资源进行读写访问,比如以下这个情况:创建两个线程对同一资源进行访问,最后打印出这个资源 ...

  8. Windows中的用户和组以及用户密码处理

    目录 用户帐户 Windows 默认账户 Windows 内置用户账户 查看.创建和删除账户 组账户 内置组账户 组的查看.创建和删除 Windows中对用户密码的处理 LM-hash NTLM-ha ...

  9. 16.PHP_Ajax模拟服务器登录验证

    Ajax模拟登陆验证 index.php <script language="javascript">    var http_request = false;     ...

  10. 十进制转n进制

    #include <stdio.h> #include <stdlib.h> #define OK 1 #define ERROR 0 #define TRUE 1 #defi ...