相关疑难解决方法(0)

Android Studio 3.0编译问题(无法在配置之间进行选择)

最新3.0版本(Beta 2)的问题我的项目由第三方有1个子模块,所以我只能访问他们的build.gradle.

我的项目有3种口味,snap,uat,production.每个都有2种构建类型,调试和发布.当我尝试构建时,我得到了这个.

Error:Cannot choose between the following configurations of project :lp_messaging_sdk:
  - debugApiElements
  - debugRuntimeElements
  - releaseApiElements
  - releaseRuntimeElements
All of them match the consumer attributes:
  - Configuration 'debugApiElements':
      - Found com.android.build.api.attributes.BuildTypeAttr 'debug' but wasn't required.
      - Found com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but wasn't required.
      - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
      - Found org.gradle.api.attributes.Usage 'java-api' but wasn't required.
  - Configuration 'debugRuntimeElements':
      - Found com.android.build.api.attributes.BuildTypeAttr 'debug' but wasn't required.
      - Found com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but wasn't required.
      - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but …
Run Code Online (Sandbox Code Playgroud)

android project gradle android-studio

60
推荐指数
3
解决办法
4万
查看次数

在Android Studio和Gradle中的Android App模块中使用不同的构建类型的库模块

我有一个工作区,包含几个不同的应用程序和一个公共的库项目,我希望从Eclipse转换为Android Studio,从Ant转换为Gradle.目前,在我们的ant脚本中,我们会在编译之前替换一些类中的文本,具体取决于构建是用于调试目的,QA,Beta /客户验收测试还是用于发布到Google Play.

我想利用Gradle中的构建变体系统并使用值资源(布尔值,字符串等)来防止构建脚本替换我的类中的文本.

由于在我的所有应用产品中复制所有构建类型的不同值将是一个维护问题,我想将它们放在我的公共库中的构建类型中.我尝试了这个,但无论我在我的app模块中使用哪种构建类型,app模块都会引入公共库模块的Release版本.

有没有什么办法可以让app模块的不同构建类型使用库模块的相应构建类型?

这是从Android Studio运行的,其中Build Variants工具窗口将两个模块显示为使用调试变体.图像应该读取应用程序和库的调试.

调试调试

android build gradle android-studio

21
推荐指数
3
解决办法
1万
查看次数

react-native run-android在设备上构建旧版本的代码

这在生产和开发构建中都会发生.我可以连接到开发服务器,重新加载,新代码构建并在设备上运行.

我尝试过的一步一步:

  1. 修改代码.

  2. 再包:

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

  1. ./gradlew clean

  2. react-native run-android - 构建旧版本

  3. react-native run-android --variant=release - 构建旧版本

有没有办法彻底擦除android构建并从头开始构建?我的直觉告诉我,这run-android不是一个完整的清洁构建.

react-native react-native-android

14
推荐指数
1
解决办法
4692
查看次数

React native卡在旧版应用程序中

当我运行react-native run-android时,它只在模拟器中安装旧版本的应用程序,并且不会显示更改.

任何建议表示赞赏.

react-native

9
推荐指数
2
解决办法
6312
查看次数

在依赖中选择特定的构建类型

假设我有一个具有三种构建类型的Android应用:

buildTypes {
    release {
        ....
    }
    optRelease {
        ....
    }
    debug {
        ....
    }
}
Run Code Online (Sandbox Code Playgroud)

我有一个依赖模块:

dependencies {
    implementation project(':myDependency')
}
Run Code Online (Sandbox Code Playgroud)

假设此依赖项只有两种构建类型(比如debugrelease),我想完全控制我的应用程序的哪种构建类型使用哪种依赖项的构建类型。例如,我希望我的应用程序optRelease使用库的release,而应用程序release使用库的debug

在Android Studio 3.0之前,这曾经是可能的,但是新的构建变体系统似乎不再允许这样做了。

如何明确说明要使用的构建类型?假设我无法控制依赖项,并且无法修改其gradle配置。

android android-build android-gradle-plugin

7
推荐指数
2
解决办法
1244
查看次数