如何配置变量以同时运行prod和amp;在同一个Android上调试app?

时间:2015-08-21 17:07:13

标签: android gradle

我在build.gradle中添加了以下内容:

Caused by: java.lang.ClassNotFoundException: 
find class "com.rithmio.coach.debug.mobile.ScrollAwareFabBehavior" 
on path: DexPathList[[zip file "/data/app/com.rithmio.coach.debug-1/base.apk"],
nativeLibraryDirectories=[/data/app/com.rithmio.coach.debug-1/lib/arm,
/vendor/lib, /system/lib]]

但是这会在调试模式下破坏我的应用程序,突然之间根类不在它们应该的位置。

它正在寻找一个类com.rithmio.coach.debug.mobile。*但它应该寻找com.rithmio.coach.mobile。*

我如何保存修改它以查找正确的包?

acknowledge="transacted"

我基本上想要在不更改包名的情况下更改applicationid。

1 个答案:

答案 0 :(得分:1)

如何在构建文件中定义产品风格: -

要定义两种产品风格,请编辑应用模块的构建文件以添加以下配置: -

...
android {
    ...
    defaultConfig { ... }
    signingConfigs { ... }
    buildTypes { ... }
    productFlavors {
        demo {
            applicationId "com.buildsystemexample.app.demo"
            versionName "1.0-demo"
        }
        full {
            applicationId "com.buildsystemexample.app.full"
            versionName "1.0-full"
        }
    }
}
...

产品flavor定义支持与defaultConfig元素相同的属性。所有flavor的基本配置都在defaultConfig中指定,每个flavor都会覆盖任何默认值。上面的构建文件使用applicationId属性为每个flavor分配不同的包名:由于每个flavor定义创建一个不同的app,它们每个都需要一个不同的包名。

这里有更详细的答案: -

https://developer.android.com/tools/building/configuring-gradle.html