不同名称的多个应用程序阅读这篇文章,觉得有同样的问题 - One code base, two applications on Android与相同的代码库
我已经创建了一个有一个像topics
,splash screens
,logos
,charts
,rules
,statuses
和项目申请testApp
/或events
。
现在,我想从相同的代码库不同的应用程序(testApp_USA
,testApp_Canada
,testApp_Australia
),并把他们在谷歌Play商店,这样,如果用户下载的应用程序,比方说,testApp_USA,则只有特定的物品到区域应该显示像美国的闪屏,USA标识等。
所以我想根据国家配置多个应用程序,然后根据该应用程序的用户已经下载设定的项目为默认值。
目前,我有一个单一的应用程序是针对所有地区,我强加多种条件来区分或更改项目根据地区。
例如:
(在许多Java文件中,我使用)
if(rule.contains("USA"))
{
//Show splash screen of USA
}
(类似地,在许多的Java文件中,我使用)
if(rule.contains("Australia"))
{
//Show splash screen of Australia
}
这只是一个项目了许多在整个代码重复。考虑到所有情况,它会更多。
应该有更好的方式来创建不同的名称和设置在Android的多个应用程序。
我知道,iOS
让我可以很容易地改变应用程序的名称和配置文件,以允许创建多个应用程序。但我不知道或者这是不容易对Android的代码做。
我的问题:
是否有可能在Android的创建具有相同的源代码不同的应用程序与项目不同的设置,并将它们发布到谷歌Play商店?如果YES,如何设置这样的配置?
UPDATE:
阅读这篇文章 - multiple-android-application-package-apk-files-from-single-source-code
于是我想出了同样的想法 -
1)以保存有关的应用程序类型,你要值一些字符串变量创建。
public static final String app_Name = "testApp_CANADA" ;
2)有多个AndroidManifest.xml
文件需要为多个应用程序创建.apk for。
3)为每个清单创建相应的启动器活动。
但如何在一个应用程序中有多个AndroidManifest.xml
文件?
UPDATE:
我的第一个AndroidManifest.xml
是主体工程文件夹(应用程序根文件夹)像往常一样,我们有。考虑这个为testApp_USA
。
我的第二个AndroidManifest.xml
是独立的包下主体工程。考虑这个testApp_CANADA
。
AndroidManifest.xml
都有不同的启动器活动和相应的启动画面,图标定义。软件包名称在这两个文件中都有所不同,因此它们将根据需要创建不同的.apk文件。
public static final String app_Name = "testApp_CANADA" ;
OR
更清楚,
如何调用特定AndroidManifest.xml
根据:现在
,之间如何testApp_USA
/testApp_CANADA
提供我的主要的应用程序已经设置切换代码值为app_Name?
随着我现有的设置,只有第一个AndroidManifest.xml
被称为总是。
http://developer.android.com/guide/topics/resources/localization.html - values/rules.xml为每个地区/本地化,并简单地阅读? – damian
尽管链接很有帮助,但并未解决使用不同配置创建不同应用程序的问题。这是一种区域设置查找,并根据设备的配置使用区域设置来定义资源。 –