无法在Jelly Bean上的第二个用户帐户上安装Android应用程序

时间:2013-01-14 22:24:59

标签: android android-4.2-jelly-bean

在Android 4.2上,我正在尝试将同一个应用安装到2个不同的用户帐户上。当我尝试这样做时,在单击权限页面上的“安装”后,我收到“应用未安装”。以下是我用来获取此消息的步骤:

1)在平板电脑上登录所有者帐户 2)下载(使用Chrome)app.apk,然后从“下载”弹出窗口中选择它以进行安装 3)在权限页面上单击“安装” 4)注销
5)登录平板电脑上的其他用户帐户
6)下载(使用Chrome)app.apk,然后从“下载”弹出窗口中选择它以进行安装 7)单击权限页面上的“安装”

对话框未显示无效消息“X App not installed。”

如何将此应用安装到同一平板电脑上的2个不同用户帐户?

这是应用程序的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  android:versionCode="121212"
  android:versionName="0.1"
  package="com.company.app">
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.VIBRATE"/>
<application android:icon="@drawable/app_icon" android:label="@string/app_name" android:debuggable="true"  >
    <activity android:name="Activity1"
        android:configChanges="keyboardHidden|orientation"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name="Activity2" android:configChanges="keyboardHidden|orientation" />
    <activity android:name="Activity3"   android:configChanges="keyboardHidden|orientation" />
</application>

1 个答案:

答案 0 :(得分:3)

经过进一步调查后,从logcat我确定我收到了一个INSTALL_FAILED_UID_CHANGED错误。这是由版本问题引起的。我们有一个流程,我们会将旧版本的应用程序通过电子邮件发送给想要安装它的用户。该应用程序首先做的是检查并安装新版本(如果可用)。

所以问题是第一个用户安装了旧版本,然后更新到最新版本。然后,当第二个用户尝试安装旧版本时,它被拒绝,因为它是旧版本,然后是由vi安装的应用程序。

在多用户平板电脑上,只能安装一个版本的应用。如果我为一个用户更新应用程序,则所有其他用户也会更新。

希望这有助于其他Android开发者。