gpt4 book ai didi

android - 为 gradle 生成的 AndroidManifest 指定额外的 XML

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:16:23 25 4
gpt4 key购买 nike

是否可以为 gradle 生成的 AndroidManifest 指定额外的 XML 字段。具体来说,用例是我有一个使用谷歌地图的应用程序,并且根据 their documentation ,应用必须指定:

<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>

在 AndroidManifest.如果您随后尝试使用 gradle 测试此应用,您将获得:

$ ./gradlew connectedCheck
<snip>
:myapp:processTestTestManifest
[manifestMerge1694110764542760523.xml:1, manifestMerge678902239503841223.xml:15] Main manifest has <uses-feature android:glEsVersion='0x00010000'> but library uses glEsVersion='0x00020000'
Note: main manifest lacks a <uses-feature android:glEsVersion> declaration, and thus defaults to glEsVersion=0x00010000.

我当前(相关)的项目结构是:

myapp/AndroidManifest.xml
myapp/project.properties
myapp/res/
myapp/src/com/magic/package/Foo.java
myapp/tests/java/com/magic/package/test/FooTest.java

换句话说,遗留项目结构除了tests/。我还尝试将任意 AndroidManifest.xml 添加到 myapp/tests/,即使 the doc说不要,只是作为测试。然而,我没有运气。

我的 buid.gradle 看起来像:

buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4.+'
}
}

apply plugin: 'android'

repositories {
mavenCentral()
}

dependencies {
compile project('stuff')
}

android {
compileSdkVersion 17
buildToolsVersion "17"

defaultConfig {
minSdkVersion 8
targetSdkVersion 17
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}

instrumentTest.setRoot('tests')
}
}

如果我删除 uses-feature,测试将会运行,但我想尽可能避免这种情况。

最佳答案

无法提供自定义属性,但看起来合并已中断。我必须调查一下。

更新:根据 google bug filed for this ,这已通过新的 list 合并得到解决。来自manifest merger user guide

This new merger was introduced in version 0.10 of the plugin. As of 0.11, this tool is used by default by the gradle plugin.

关于android - 为 gradle 生成的 AndroidManifest 指定额外的 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17354716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com