1. 程式人生 > >WebViewGoogle和Chrome的踩坑總結

WebViewGoogle和Chrome的踩坑總結

首先看一下谷歌的敘述

On Android 7.x where first api < 24, you should preinstall a regular APK of both Chrome and WebView, of the same version as each other.
On Android 7.x where first api >= 24, you should preinstall Chrome, and the WebView stub 0.0.0.1.
On Android 8.x and later, you should preinstall Chrome and the WebView stub of the same version as Chrome.

在GMS中WebViewGoogle和Chrome是比較特殊的一對App,更新的時候一不小心就可能造成CTS fail和GTS fail,影響比較大。

對於first api < 24 (一般是 android 7.0 ,7.1的機型 ),只要WebViewGoogle和Chrome的版本保持一致就行了。

對於 first api >= 24 ,有如下總結點:

  1. 國際版預置的是Chrome 和WebViewStub ,國內版沒有Chrome,只預置WebViewGoogle
  2. 在android 7.1 上,WebViewStub的版本是0.0.0.1, android 8.x and later WebViewStub已經有自己的版本且要與Chrome的版本一致。

還有一點必須要注意(親自踩過坑):

在Android 7.1上的機型,有的first api 是23,有的是25,然而我們vendor/google是共分支,所以更新的時候要注意:

  1. WebViewGoogle和Chrome都要更新且版本保持一致,以使用於first api是23的機型。
  2. WebViewStub 保持不變或者更新為一個版本為0.0.0.1的apk(現在比較難找到這樣的apk),以適用於first api為25的機型。
    So,沒什麼必要,不要更新android 7.x and before 機型的Chrome和WebView。

檢視機器的first api :adb shell getprop ro.product.first_api_level