一个应用多个品牌

One app multiple branding

我有两个共享相同功能的应用程序,除了图像、图标、颜色、应用程序名称和包更改以及在网络 activity 时调用的 URL。

在 iOS 中,我们可以使用 targets.

的强大功能从一个源代码轻松创建两个不同的应用程序

这是 link 如何在 iOS

中做到这一点

但是如何在 android

您应该为此利用 product flavors

在您的 build.gradle 中,您将像这样定义口味:

android {
    productFlavors {
        brand1 {
            // ...
        }

        brand2 {
            // ...
        }
    }
}

然后您可以创建风味特定的资源。例如,如果您要创建一个名为 ic_launcher.png 的图标,您通常会将其放在 main/res/drawable-xhdpi/ic_launcher.png 等位置。相反,您可以将 brand1 版本放在 brand1/res/drawable-xhdpi/ic_launcher.png 并将 brand2 版本放在 brand2/res/drawable-xhdpi/ic_launcher.png.

当您 运行 gradlew build 时,它将构建所有变体。您还可以通过指定变体名称来构建特定的变体,例如:gradlew assembleBrand1Debug。在 Android Studio 中,您可以 select 使用 "build variants" 窗格查看您想要查看的变体。