问题标签 [android-build-flavors]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1097 浏览

android - Android 构建变体不适用于不同的风格

我的应用程序中有大约 20 种不同的口味。以前它自去年以来一直运行良好,但在更新到新的 gradle 版本 4.4 后,它开始引发一个问题,即No matching client found for package name

注意:现在只有默认风味是工作文件。

请建议我解决此问题,

我已经解决了这个问题,现在错误是

谢谢阿米特夏尔马

0 投票
1 回答
80 浏览

android - 开发应用程序免费和付费版本的正确方法

我有一个具有免费功能和付费功能的应用程序。

假设一个活动,在免费版本中可以执行操作A,操作B,并且有一个免责声明,为了解锁操作C,用户必须购买完整版。这个活动也有广告。

相同的活动,在付费版本中,具有相同的操作 A、相同的操作 B,当然还有解锁的操作 C。此活动没有广告。

现在,我读到管理应用程序的免费和付费版本的正确方法是创建 2 种风格,以便具有类似于以下的结构: 风味结构

我主要将应用程序的“共享”部分放在哪里,然后将唯一免费的部分放在“免费”风格中,将唯一付费部分放在“付费”风格中。但是之前描述的活动呢?如何在两种风格之间共享此活动(及其功能),并根据安装的应用程序版本显示或不显示操作 C 和广告?我不认为(也不明白这一点)我需要将此活动放在免费和付费版本中,因为我不想在添加该活动的代码时编写 2 次代码,但是,而是共享两个版本中都存在的代码。

当然,我会将唯一付费功能放在付费版本中。

0 投票
1 回答
607 浏览

android - 当我用 flavorDimensions 打开experimental = true 时未解决的参考

我想flavorDimensions在我的应用程序 gradle 中构建版本应用程序,如下所示

当我运行我的应用程序时,出现此错误

在使用 android 扩展的活动中找不到我的视图

我的活动代码

activity_main.xml

0 投票
1 回答
459 浏览

android - 为什么发布构建抛出错误,但当 buildTypes 相同时不调试?(Android gradle 构建类型)

我试图弄清楚为什么我无法使用 Android Studio 正确安装发布版本。这是我的 buildTypes 块:

这些是我的产品口味:

当我安装调试付费或免费版本时,一切都很好。一点都没有错。当我尝试安装发布版本(付费或免费)时,我得到:

我的问题是:为什么重复类异常仅在发布期间发生,而我在发布和调试 buildTypes 之间没有定义任何不同?

编辑我已经通过删除 gradle 中的 YouTubePlayer 库依赖项解决了这个问题(b/c 显然我对 google YT 服务的实现导致了一个内部库的创建,所以依赖于导入的库是多余的吗?)。这仍然使我的问题有效。为什么调试工作正常,但没有任何声明不同时的发布?

0 投票
1 回答
25 浏览

android - 使用 Flavors 构建不同的应用程序 - 不同的代码。

我正在构建一个具有几种不同风格的应用程序。我的问题是,如果我对基于风味的活动使用不同的代码,我是否需要在所有风味目录中包含该代码的副本,或者如果我只是将代码的副本留在 app/src/main/java 目录中,如果我不将它包含在风味目录中,所有其他风味是否会使用 main/java 中的文件。

我有

app/src/main/java/com/mycompany/CodeA.java

app/src/flavor1/java/com/mycompany/CodeA.java

并且flavor2没有特殊的源集文件夹,flavor2会使用app/src/main/java/com/mycompany/CodeA.java中的代码文件吗?或者我是否需要创建一个源集文件夹,其中包含每种风格的代码副本?我对几种风格使用不同的资源文件夹,但对于所有其他风格,资源文件夹默认为 app/src/main 目录中的文件。

0 投票
0 回答
299 浏览

android - 如何在主文件夹中导入口味的java文件?

我正在创建一个具有不同产品风格的 android 项目。我的项目结构是这样的 Flavor1

风味2

主要的

其中 Flavor1 包含一个 Constants.java 文件,Flavor2 也包含一个 Constants.java 文件,但它不在 main 中。我的主包包含另一个类 Controller,它使用常量中定义的变量。当我尝试运行我的项目时,它会引发错误“无法解析符号常量”。当我按 alt+enter 时,它从选定的风味导入文件,错误消失了,但是当我切换到其他风味时,它无法识别导入,因为它来自风味 1。这是我的 build.gradle 文件中的代码,它定义了产品风格和源集。

我希望每种口味都有自己的常量文件。如何做到这一点?如何在 main 中使用每种风格的常量文件,以便它导入或使用所选构建变体的文件?任何帮助将不胜感激。

0 投票
2 回答
648 浏览

android - 如何在productFlavors中管理两个不同的applicationId?

我需要在单个项目中管理两个不同的客户端代码,因此我使用了 productFlavors 并为每个客户端定义了风格。

现在的问题是两者的源代码库相同,但需要定义不同applicationId

  1. com.abc
  2. com.def。

我将如何制作风味以使代码保持相同和appId不同?

0 投票
2 回答
566 浏览

build.gradle - Android Studio - productFlavor 组合设置版本

在我的build.gradle中,我定义了 2 个不同的风味维度:

我希望能够设置versionCodeversionName基于组合,因此以下每个都可以有自己的版本信息:

  • 风味1手机
    • 版本名称 = 1.0.0
    • 版本代码 = 3
  • 风味电视
    • 版本名称 = 1.0.2
    • 版本代码 = 5
  • 风味2手机
    • 版本名称 = 3.0.0
    • 版本代码 = 10
  • 风味电视
    • 版本名称 = 2.0.0
    • 版本代码 = 4
0 投票
1 回答
1049 浏览

android - 在 android studio 中创建构建变体源集时出错

我是 Android Studio 构建变体的新手。我创建了一个新应用程序,在 gradle 中编辑了构建风格并成功同步了它。但是,当我为其中一个构建变体(demoDebug)添加源集时,它会显示错误。

模块级 build.gradle 文件:

项目结构截图:

项目结构

主要的 Manifest.xml

演示调试的 Manifest.xml

为 demoDebug 的源集创建文件夹时出现错误:

我做错什么了?我如何解决它?

0 投票
2 回答
1565 浏览

android - 资源没有从不同的应用程序风格中设置

https://drive.google.com/file/d/1cIoD5Uw5Jkut--qsJUX_hYBx13gbFNM2/view

见上面的视频

我有一个有 2 种不同口味的应用程序。我添加了不同的应用程序图标和一些要替换的不同图像。图标,背景图像适用于另一种风格,但一个图像不是从资源中提取的,它只显示默认图像。

毕业典礼:

这是屏幕截图,其中清楚地表明预览很好,但是在运行应用程序时它不显示相应的徽标

fibodo调试

jd调试

京东截图

斐波多截图