我有一个现有的Android应用程序
我想从现有的应用程序中提取另一个应用程序,以便它只包含原始活动的某个子集。
最好的方式/方法是什么?
这两个应用程序将同时主动维护,那么最佳方式是什么,以便可以减少开销?
我的开发环境是Android Studio + gradle ...我应该创建另一个变体吗?..从那时起,我应该只定义源文件夹吗?我可以更改AndroidManifest并使用原始活动的子集吗?
感谢
答案 0 :(得分:1)
您可以做的最好的事情是将应用程序的公共部分(在本例中为活动)提取到库项目中,然后,如果您需要在具体应用程序中使用特定行为,则只需从公共类中进行子类化以适应你的需求。
答案 1 :(得分:0)
我最终遵循的方法是创建一个像这样的新变体:
flavorGroups "features"
productFlavors {
normal {
flavorGroup "features"
}
stripped {
packageName "other.package"
flavorGroup "features"
}
}
我只是通过从每个变体发送不同的意图来改变活动过渡(我为每个变体创建了单独的源文件夹,即
src / main,src / stripped,src / normal等。
我认为这是最快的方法,并且具有能够在常见活动中定制小部件的优势,而不是具有提取的库项目并且具有相同活动的两个副本仅用于小型定制。