我做了三个应用程序,这是我现在想要一个apk文件(一个安装)出货。 在“包装程序”的启动用户应决定运行哪些应用。
到目前为止,一切都很好,但问题是,每个应用程序使用的是应用程序文件的全局常量。 有三个应用程序构建成一个,其中每个应用程序使用自己的应用程序文件的方法吗?
谢谢!
为了避免混淆我添加一个简短的例子:
应用1:
public class AApplication extends Application {
public static String CONSTANT_1 = "aaa";
}
应用2:
public class BApplication extends Application {
public static String CONSTANT_1 = "bbb";
}
应用三:
public class CApplication extends Application {
public static String CONSTANT_1 = "ccc";
}
好吧,因为我脑袋的想法显然是不实现的,我想出了以下解决方法:
我在新的项目中创建一个Apllication类
public class NewApplication extends OldSuperApplication {}
我添加了一个方法
public static void setApplication(RGCApplication a) { CONSTANT_1 = a.CONSTANT_1; ... }
在这种情况下应用“A”我调用选择的启动画面所需的“子应用程序”后
NewApplication.setApplication(new AApplication());
要么
NewApplication.setApplication(new BApplication());
我不知道这是否是臭编码或不是,但它的作品!
也许你希望可以推出了三个活动。 添加在清单是这样的:
<activity
android:name=".Activityone"
android:label="First Activity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Activitysecond"
android:label="Second Activity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Activitythree"
android:label="Third Activity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
这样用户可以有三种图标(活动)点击。
不能整合3不同APK和其相应的代码库由单一APK运行,无论是在集成单个应用程序的所有3的代码库和把所有3个作为不同的模块由用户根据选择来运行。