java.lang.SecurityException:未知的调用UID xxxx

时间:2018-08-27 06:12:18

标签: android

我在由test-dpc创建的托管配置文件中安装了一个appstore应用。在appstore应用程序中,我已使用此代码来卸载应用程序。

    PackageManager pm = context.getPackageManager();
    PackageInstaller packageInstaller = pm.getPackageInstaller();    
    pm.setInstallerPackageName(packageName, "com.example.appstore");
    Intent broadcastIntent = new Intent(BROADCAST_ACTION_UNINSTALL);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(
            context, // context
            0, // arbitary
            broadcastIntent,
            PendingIntent.FLAG_UPDATE_CURRENT);
    packageInstaller.uninstall(packageName, pendingIntent.getIntentSender());

packageName是将要卸载的应用程序的名称。 com.example.appstore是我的应用商店的软件包名称。

但这会导致崩溃:

08-27 10:12:56.391 13822-13963/? E/AndroidRuntime: FATAL EXCEPTION: IntentService[InstallerService]
    Process: com.example.appstore, PID: 13822
    java.lang.SecurityException: Unknown calling UID: 1210083
        at android.os.Parcel.readException(Parcel.java:2004)
        at android.os.Parcel.readException(Parcel.java:1950)
        at android.content.pm.IPackageManager$Stub$Proxy.setInstallerPackageName(IPackageManager.java:4124)
        at android.app.ApplicationPackageManager.setInstallerPackageName(ApplicationPackageManager.java:1842)
        at org.fdroid.fdroid.installer.PrivilegedInstaller.uninstallPackage(PrivilegedInstaller.java:342)
        at org.fdroid.fdroid.installer.InstallerService.onHandleIntent(InstallerService.java:79)
        at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:76)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:164)
        at android.os.HandlerThread.run(HandlerThread.java:65)

但是,当我在所有者个人资料中安装了应用商店时,应用商店成功卸载了应用。仅在托管配置文件中会发生此崩溃。 有人对此错误有解决方案吗?

0 个答案:

没有答案