android - 启动时无法找到 Flavored Activity

标签 android android-gradle-plugin android-productflavors

我在 Android Studio 的 Gradle 中创建了 2 种风格,并将 MainActivity 文件放在它们各自的文件夹结构中。

项目是这样的:

enter image description here

这是 Gradle flavor 部分:

productFlavors {
        free {
            applicationId "com.xxxxx.yyyyy.free"
            versionName "1.0.0"
        }
        full {
            applicationId "com.xxxxx.yyyyy"
            versionName "1.0.0"
        }
    }

不幸的是,当我使用完整 风格时,MainActivity 被认为是未设置的。

免费口味:

enter image description here

完整 flavor :

enter image description here

该项目可以在两种版本中编译,只是无法在完整 版本上运行,因为它找不到默认 Activity 。 这两个文件的差别很小。

我应该检查什么?

最佳答案

也许没有直接解决您的问题,但您是否考虑过制作一个纯 Java 帮助程序类来为您的 MainActivity 提供不同的功能?

这里的问题似乎是你移动的 MainActivity 在完整模式下没有被 AndroidManifest 识别,但如果你有 2 个版本的帮助类,一切都应该很好

编辑 如果要指定两个不同的 Activity ,请在 AndroidManifest 中使用相对路径。

<activity android:name=".MainActivity">

尽管如此,请谨慎尝试并在两个 Activity 之间尽可能多地重用通用代码,以免让您自己头疼

关于android - 启动时无法找到 Flavored Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35245740/

相关文章:

android - 为不同的产品 flavor 创建不同的启动器

android - 具有GCM和不同产品口味的Android推送通知

java - 屏幕旋转时保存语言

android - 在 MPChart 中设置 X 轴上的日期格式

java - Proguard 不会混淆方法和类名称

android - 为什么我的 AndroidManifest 需要权限?

android - 每次我点击 "run"按钮时,Gradle 中的构建自动化工具是否会替换 apk 文件?

android-manifest - 适用于平板电脑手机的 Android 应用程序

android - 如何在 Android Studio 中使用 gradle 实验性插件 0.2.0 将静态库(.a 文件)与 APK 链接

android - 无法更改模块 buildVariant