一个.apk文件,安装两个应用程序

这是一个关于android应用程序的问题,有两个不同的.apk文件(或者一个.apk文件中包含的两个应用程序)

我有两个应用程序完全不同的东西,但是相关的,说一个是标准的用户应用程序,一个是pipe理员应用程序。 但是用户既可以是用户又可以是pipe理员。 我想知道是否有可能创build一个.apk文件,安装两个应用程序到手机? 我怎么会得到这个?

谢谢,Matt

Solutions Collecting From Web of "一个.apk文件,安装两个应用程序"

这取决于你的“应用程序”的定义。 如果您使用更为官方的定义,则不能安装2个应用程序,因为在manifest.xml只能有1个<application>

你可以在你的manifest.xml定义几个活动,他们可以做单独的事情,所以你可以在一个APK有两件事情可以被人描述为“应用程序”

只要定义多个活动,并使用那些可以被定义为一个选项,但它取决于你的'应用程序'的定义,但在这种情况下,我会说它会工作

您可以在同一个清单文件中拥有两个活动元素,这两个活动元素都具有action = MAINcategory = LAUNCHER的意图filter。 此外,对于两个活动元素,还必须使用属性“ android:taskAffinity ”(另请参见此处 ):

 <application android:allowBackup="true" android:icon="@drawable/main_icon" android:label="@string/main_name" android:theme="@style/AppTheme" > <activity android:name="com.foobar.MyActivity2" android:taskAffinity="com.foobar.MyActivity2" android:icon="@drawable/icon1" android:label="@string/name1" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.foobar.MyActivity2" android:taskAffinity="com.foobar.MyActivity2" android:icon="@drawable/icon1" android:label="@string/name2" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> 

当具有此清单的APK文件安装在设备上时,它将在主屏幕上创build两个图标。 这些图标的标题将从属性android:label中获取 ,图标将从android:icon属性中获取。 在“设置|应用程序”下的应用程序列表中,您将看到由应用程序标签的属性定义的名称和图标。 当您在应用程序列表中为此条目select“卸载”时,这两个“应用程序”将从设备中删除。

你应该build立2 APK是使用APK扩展文件 。

顺便说一句,这是一个安全措施。

没有。

你可以做的是检查第二个应用程序是否已经安装,如果答案是否定的,你可以提示请求安装第二个应用程序使用这个职位。

可以,只需安装一个应用即可安装多个应用。
在Manifest.xml中 在这里输入图像说明

项目结构:

在这里输入图像说明