如何从单个代码库制作多个Android应用程序?

时间:2012-11-28 06:04:48

标签: java android eclipse apk

我完全用iOS完成了这项工作,现在我需要用于Android。我有一个代码库,可以通过简单的配置文件更改创建无限制的不同应用

每个应用程序都是基于我在资源中包含的复杂XML配置文件创建的。我所做的只是我的strings.xml文件中的一个简单更改,它指向所需的配置文件,这反过来使我的项目成为一个新的独立应用程序。容易。

<string name="xmlconfig">nike-shoes</string>

但是现在我已经这样做了,我如何进行更改,以便每个应用程序都是自己的APK?

如何使用一个代码库和一个项目轻松切换应用程序(和可上传的apk)。我听说有人说“使用一个库然后只为每个包含它的项目创建一个项目”但是当你有15个以上的应用程序并且不断增长时,这会变得过于复杂。

我也看到有人说“为什么不只是制作一个应用程序,你可以在应用程序中切换它们”,但这也与我的项目无关,对我的用户没有意义。不幸的是,我无法解释更多,但简短的回答是,这不会有效。

我在iOS项目上所做的是,我只需更改Bundle ID,更改代码签名标识以匹配,更改应用程序名称,并从我的主Info.plist文件中指向新的plist。 BAM!全新的应用程序。一些简单的步骤,花了我不到一分钟。

如何使用Eclipse / Java / Android执行此操作?什么是最简单的方法?

只要我没有弄乱每个文件来完成它,只需几步即可。

3 个答案:

答案 0 :(得分:4)

我想我会在这里使用Android Studio回答我自己的问题(在我输入时为2.2.3),请执行以下操作:

  1. 在AndroidManifest文件中,点击您的包名称(点击whatever的{​​{1}}部分),然后按Shift + F6。选择“重命名包”,然后重命名(不包含com.myapp.whatever部分)。除非需要,否则不要对注释,字符串和文本执行此操作。您需要使用Android Studio窗口底部的按钮批准重构。

  2. 检查您的build.gradle文件,并确保defaultConfig下的applicationId与您更改的内容相匹配。

  3. 在您的strings.xml文件中,根据需要更改您的com.myapp和其他字符串,以使您的应用成为自己的。

  4. 让我花大约1-2分钟来购买一个全新的应用程序。希望其他人认为这很有用。

答案 1 :(得分:1)

您需要做的就是更改清单中的软件包名称(由于基础软件包名称已更改,您的代码文件会稍微重新分解),下一个版本将创建一个新的应用程序。 如果您想维护所有应用程序,我还建议为每个包含此更改集的应用程序创建分支。通过这种方式,您可以修复某些内容并将其推送到所有版本。

假设您将com.foo更改为com.foo.bar,然后重建,所有R导入应该现在添加.bar,只需将import com.foo.R替换为com.foo.bar.R,即关于它。

答案 2 :(得分:0)

在库项目中转换初始项目,然后从所有其他项目引用它。这样您就有了很大的优势:对库项目所做的所有修改都可以在其他项目中使用。参考:http://developer.android.com/tools/projects/projects-eclipse.html#SettingUpLibraryProject