【问题标题】:How to install app using PackageInstaller for Profile Owner?如何使用 PackageInstaller 为 Profile Owner 安装应用程序?
【发布时间】:2019-07-02 11:34:13
【问题描述】:

我正在尝试使用 Package Installer 安装 apk 文件。我的应用程序是当前的个人资料所有者。该方法成功完成,但在我的 BroadcastReceiver 中,我得到了 PackageInstaller.STATUS_PENDING_USER_ACTION。根据 android docs https://developer.android.com/reference/android/content/pm/PackageInstaller 应用程序应该能够静默安装 apk,如果它是个人资料所有者。

     public static boolean installPackage(Context context, InputStream 
   in, 
       String packageName)
        throws IOException {
      final PackageInstaller packageInstaller = 
    context.getPackageManager().getPackageInstaller();
    final PackageInstaller.SessionParams params = new 
     PackageInstaller.SessionParams(
            PackageInstaller.SessionParams.MODE_FULL_INSTALL);
    params.setAppPackageName(packageName);
    // set params
    final int sessionId = packageInstaller.createSession(params);
    final PackageInstaller.Session session = 
   packageInstaller.openSession(sessionId);
    final OutputStream out = session.openWrite("TestDPC", 0, -1);
    final byte[] buffer = new byte[65536];
    int c;
    while ((c = in.read(buffer)) != -1) {
        out.write(buffer, 0, c);
    }
    session.fsync(out);
      in.close();
       out.close();

       session.commit(createInstallIntentSender(context, sessionId));
       return true;
    }

【问题讨论】:

  • 您使用的是哪个操作系统版本?我已经看到棒棒糖仍然需要用户操作的 cmets...
  • 我试过 O,P 和 Q

标签: android android-studio android-enterprise android-enterprise-features


【解决方案1】:

您的应用必须设置为设备所有者或附属个人资料所有者。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    • 1970-01-01
    • 2013-09-07
    • 2015-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多