问题标签 [android-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.
android - 如何在我的应用程序中为两种风格保留 Java 文件并为其他人排除它?
我有一个 Android 应用程序,比如说,三种风格。第一个叫做free
。第二种味道叫做paid
。而第三种味道被称为b2bClient
。
free
并且pro
需要一个库(让它成为 Google Analytics),并且为了避免代码重复,GoogleAnalyticsHelper
围绕对 Google Analytics 的调用的辅助类位于主源集中。但b2bClient
不使用图书馆。为了减小b2bClient
APK 的大小,我没有将库包含在 Gradle 中的依赖项中。当我运行时它会导致编译错误,assembleB2bClient
这很明显(构建系统只是没有来自com.google.android.gms.analytics
.
GoogleAnalyticsHelper
当风味如下时,我尝试从源集中排除b2bClient
:
那也没用。同样的错误。是否可以从特定风味的主要源集中排除一个类?
android - 3 个不同的 firebase 项目的不同风格
我有 3 个不同的域,A、B 和 C。
我在各自的控制台中创建了 3 个不同的 Firebase 项目。
我的问题
我计划创建一个 Android 项目并向它们添加风味以支持 A、B、C,并将它们各自的 google-json 文件放在各自的风味目录中。
请记住,我不能将 A、B、C 组合在一个 firebase 项目中,因为它们完全是 3 个不同的域。
我想知道创建产品风味是否符合我的要求?
我怎样才能通过风味来实现它?如果不是唯一可能的方法是创建 3 个不同的项目?
android - Gradle 警告:在查看时找不到 google-services.json
我收到以下警告。我怎样才能避免这个警告?
在查看 [src/flavor1/debug, src/debug, src/flavor1] 时找不到 google-services.json 在查看 [src/flavor1/release, src/release, src/ 时找不到 google-services.json flavor1] 在查看 [src/flavor2/debug, src/debug, src/flavor2] 时找不到 google-services.json 在查看 [src/flavor2/release, src/release,源代码/风味2]
我在app/google-services.json添加了两个 client_info
android - 在应用程序中使用风味的最佳实践
我知道我可以检查以下口味:
但这值得非常条件来检查每一步。
检查味道的最佳做法是什么?
java - 来自不同口味的片段膨胀
我正在学习 Android,当它们处于不同的风格时,我找不到片段实例化错误的解决方案。
设置:
- 我有一个加载到主要活动中的主要片段。
- 我有两个好处:付费和免费。
- 应用程序的主要(公共)部分没有片段(布局 + java 文件),我把它们放在了有利位置。
当我尝试运行我的程序时出现以下错误:
我尝试了许多不同版本的片段名称,因为错误消息告诉我问题出在此,不幸的是它们都不起作用。你能帮我找出问题的原因吗(我的意思不仅仅是解决方案,而且为什么这不起作用)?代码可以在 GitHub 上找到,但相关文件在这里:
src/java/com/udacity/gradle/builditbigger/MainActivity.java
src/res/layout/activity_main.xml
src/free/java/com/udacity/gradle/builditbigger/free/MainActivityFragment.java
src/free/res/layout/fragment_main.xml
src/paid/java/com/udacity/gradle/builditbigger/paid/MainActivityFragment.java
src/paid/res/layout/fragment_main.xml
android - 在android中生成签名apk时配置库构建类型
我正在制作一个大型项目模块化。我已经分离了代码和布局文件,除了一个问题外一切正常。
我需要在模块中创建 3 种构建类型,即 beta、stage 和 live(原因稍后提到)。现在有一件事我无法理解。
- 当直接从 Android Studio 运行时,我可以选择在构建时使用库模块的哪个构建变体。但
- 生成签名的 apk 时,它不会询问库的构建类型。
一定有一些
- 可以设置的默认值来配置它。我正在寻找那些可以使用的配置 选项
- 生成签名 apk 时默认选择哪种构建类型的库?
我在库模块中创建构建变体的原因是我在模块中使用了 Content Provider,并且在同一设备中同时安装多个构建类型时出现 CONTENT_PROVIDER_AUTHORITY_CONFLICT 错误。
因此,为了同时安装 beta、stage 和 live build,我在 build.gradle 中添加了 Content Authority 作为字符串资源
android - android BuildConfig.BUILD_TYPE 始终处于发布状态
我正在实现一项新功能,该功能取决于应用程序是否正在运行、调试或发布,在两个 url 之间进行选择。
这是我使用 insidel gradle 来选择使用哪个 url 的代码->
在下面的行中,我想要获取正确的 url,但是当我在调试中使用构建变体进行调试时,代码返回我发布 url。
检查 BuildConfig.BUILD_TYPE ->
我得到释放模式,为什么?在 BUILD_TYPE 中进行一些研究,我发现了不同的 BuildConfig,其中两个在版本中具有 BUILD_TYPE ->
它们之间的唯一区别是 -> 具有 BUILD_TYPE = "debug" 的那些具有像这样的 DEBUG ->
BUILD_TYPE = "release" 有这样的调试 ->
如何更改发布中的调试?知道 BuildConfig 类是单独生成的吗?
android - 具有风味和依赖关系的 Android 库
我有带有“水”和“蓝色”口味的自定义库:
两者都从“主”文件夹覆盖 TestA.class
在应用程序中我有:
但是当我为可能的应用程序选择“blueDebug”变体时,它会像我预期的那样烤“MAIN”而不是“BLUE”
为什么 ?
谢谢
android - Android 风格:在特定风格上添加外部库
在我的项目 gradle 中,我声明了两种风格:
现在我只需要包含和使用外部 jar 库来实现第二种风味。我能怎么做?