Chromium - 在 Android Studio 中构建 Chome_public_apk 时出错

Posted

技术标签:

【中文标题】Chromium - 在 Android Studio 中构建 Chome_public_apk 时出错【英文标题】:Chromium - Error while building Chome_public_apk in Android Studio 【发布时间】:2020-01-20 12:18:17 【问题描述】:

我正在尝试在 Ubuntu 16.04(LTS) 机器上构建 Chromium for android 作为 Android Studio 项目。

https://chromium.googlesource.com/chromium/src/+/master/docs/android_build_instructions.md#Installing-and-Running-Chromium-on-a-device/

然后为 android studio 创建 Gradle,我按照以下步骤操作。

https://chromium.googlesource.com/chromium/src/+/master/docs/android_studio.md

当我在终端中点击以下命令时。我得到了 chrome_pubilc_apk 的生成代码

build/android/gradle/generate_gradle.py --output-directory out/Default --target //chrome/android:chrome_public_apk --project-dir ~/Projects/chrome_prototype/chrome_public_apk

当我编译代码时出现以下编译错误:-

Task :chrome.android.chrome_public_apk:compileDebugJavaWithJavac
/home/signity/chromium/src/out/Default/gen/base/jni_java/generated_java/input_srcjars/org/chromium/base/BuildConfig.java:2: error: duplicate class: org.chromium.base.BuildConfig
public class BuildConfig 
^
/home/signity/chromium/src/out/Default/gen/chrome/android/chrome_java/generated_java/annotation_processor_outputs/org/chromium/base/natives/GEN_JNI.java:8: error: duplicate class: org.chromium.base.natives.GEN_JNI
public final class GEN_JNI 
^
/home/signity/chromium/src/out/Default/gen/chrome/android/chrome_public_apk/generated_java/input_srcjars/com/google/android/gms/cast/R.java:5: error: duplicate class: com.google.android.gms.cast.R
public final class R 
^
/home/signity/chromium/src/out/Default/gen/chrome/android/chrome_public_apk/generated_java/input_srcjars/com/google/android/gms/cast/framework/R.java:5: error: duplicate class: com.google.android.gms.cast.framework.R
public final class R 
^
/home/signity/chromium/src/out/Default/gen/chrome/android/chrome_public_apk/generated_java/input_srcjars/org/chromium/base/BuildConfig.java:2: error: duplicate class: org.chromium.base.BuildConfig
public class BuildConfig 
^

【问题讨论】:

您在使用 ninja 构建 Chromium 时是否看到相同的错误消息? @Asesh,使用忍者,它工作正常。但是当我将项目拆分为 android studio 并在 android studio 中导入后,我得到了这个错误。 @Asesh,你有什么解决这个错误的想法吗? 我不使用Android Studio,所以我不知道。我使用 ninja 构建 Chromium。很抱歉:( @Asesh 我是 ninja 新手,如果我想使用 ninja 在 Chromium 上开始开发,那么我应该先学习什么技术?我基本上是一个安卓开发者。 【参考方案1】:

我在 android studio 上遇到了类似的问题。

但是如果你想改变版本,就这样做; 修改AndroidManifest.xml(src/chrome/android/java/AndriodManifest.xml)

根据需要添加 VersionName 或版本代码 android:versionName="AAA.BBB.CCC"

【讨论】:

以上是关于Chromium - 在 Android Studio 中构建 Chome_public_apk 时出错的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu18.04上使用LLDB调试Chromium_Android

Chromium - 在 Android Studio 中构建 Chome_public_apk 时出错

Android WebView启动Chromium渲染引擎的过程分析

为 Android 构建 Chromium 时参数无效

Android WebView加载Chromium动态库的过程分析

Android编译chromium