从Chromium为Android构建WebView

Jak*_*ake 9 android webview chromium webviewchromium

我试图按照说明从铬基建立webview apk.我正在运行Android-7.0版本.我完成了铬的编译过程并生成了APK.我有两个与APK生成后的步骤相关的问题.

首先,图书馆名称与我的预期不同.默认webview.apk有一个库名libwebviewchromium.so,但我从chrome(SystemWebView.apk)构建的APK 包含lib libwebviewchromium.cr.so.我想问一下,这是否会引起问题,如果其他人也看到了这个问题.

其次,我无法com.android.webview从设备上卸载应用程序.说明需要卸载此应用程序并删除其文件夹才能安装新的APK.我收到错误:

$ adb uninstall com.android.webview     
[DELETE_FAILED_INTERNAL_ERROR]
Run Code Online (Sandbox Code Playgroud)

我想问一下是否有人知道如何解决这个问题.我看到了一个相关的问题,想问一下是否有其他方法可以做出这个答案所暗示的内容.

Jak*_*ake 5

以下答案与我的问题的第二部分有关.

我做了以下步骤来完成SystemWebView.apk工作(注意:这webview.apk是我的构建中的系统应用程序/system/app;以下步骤用于安装和测试SystemWebView.apk作为第三方应用程序)

(首先看一下第6步,取回2个文件)

  1. 首先,我按照链接的答案 adb pull&edit packages.xmland packages.listfiles(我还没推过它们)
  2. adb shell停止
  3. 我推了两个文件
  4. 然后我删除了以下文件夹(基本上是任何痕迹com.android.webview):
 /system/app/webview
 /data/data/com.android.webview
 /data/user/0/com.android.webview
 /data/misc/profiles/cur/0/com.android.webview
 /data/misc/profiles/ref/com.android.webview
 /data/user_de/0/com.android.webview
Run Code Online (Sandbox Code Playgroud)
  1. adb install SystemWebView.apk

  2. 我也保留了备份libwebviewchromium64.relrolibwebviewchromium32.relro文件/data/misc/shared_relro/.在安装之后,我注意到这些文件由于某种原因被删除,所以我再次复制它们(首先复制到sdcard然后移动到shared_relro文件夹中).

  3. adb shell启动

之后我测试了一个包含a的简单app WebView,并且可以看到加载的网页.