Android Studio如何根据功能管理变体

时间:2014-12-08 05:28:46

标签: android android-studio android-gradle

我有一个由功能1,功能2,功能3组成的应用程序A.现在我想创建一个仅包含功能1的应用程序B和仅包含功能3的应用程序C.

我尝试过的事情

我根据功能组织了包裹。现在将应用程序A,B和C维护为单独的项目将导致重复工作。

Android Studio

使用Android Studio我创建了“Variants”。我可以将应用程序A,B和C作为apks但是所有apk的大小都相同,即它们包含完整项目的所有代码。我想要应用程序A,B和C,它只包含与该功能相关的代码。从this链接可以看到,不支持在构建时排除包。我是否遗漏了某些内容,或者是否有其他方法可以自定义应用程序的构建脚本

1 个答案:

答案 0 :(得分:1)

您最好的方法是将您的功能(1-3)分离为可以是Java或Android库模块的独立库。在Android Studio项目中,您可以为应用程序A-C提供更多模块,并让它们依赖于所需的功能模块。

将这些功能维护为独立库并将不同的应用程序与它们分开可能会使您的代码更加模块化并且更易于维护,因此它也应该在这方面为您提供帮助。

如果应用程序非常相似并且将共享大部分代码,则在Android Studio中使用flavor来区分应用程序类型是有意义的。示例是同一应用的免费版和付费版。如果应用程序在概念上有所不同,您可能会发现将它们作为单独的应用程序模块更好。