包命名约定Android

时间:2016-12-28 14:12:00

标签: android google-play

我有一个Android应用程序,它有两种风格:基本和高级。 Basic已经在AppStore上,包名称为com.domain.something。我想将第二个发布为com.domain.something.advanced。可能吗?或者事实是,第二个是第一个子包将导致麻烦?

1 个答案:

答案 0 :(得分:4)

是的,这是可能的,不会在Play商店中造成任何问题。

您需要阅读Configure Build Variants指南,了解有关为您的"高级"设置产品口味的更多信息。版。您可以在构建类型或产品风格中使用applicationIdSuffix来为该特定变体设置应用程序ID的后缀。

你的build.gradle最终会看起来像这样:

android {

    defaultConfig {
        applicationId "com.domain.something"
    }

    buildTypes {...}

    productFlavors {
        basic {...}

        advanced {
            applicationIdSuffix ".advanced"
        }
    }
}

然后,您可以使用生成的BuildConfig类以编程方式检查产品风格,或者将advanced版本的代码放在advanced产品风格的源文件夹中( /src/advanced/java/src/advanced/res等。)