【问题标题】:AOSP block installing apps from unknown sourceAOSP 阻止安装来自未知来源的应用程序
【发布时间】:2020-05-08 12:27:36
【问题描述】:

有什么方法可以阻止用户在自定义 Android 操作系统中安装来自未知来源的应用程序?

我正在尝试使用 AOSP 源创建 Android 操作系统的自定义变体,我希望在其中允许用户仅安装来自我在构建期间指定的受信任源的应用程序。

阻止启用开发者选项和 USB 调试。 该解决方案应阻止用户从所有可能的来源(如侧载)或通过连接系统安装应用程序。

【问题讨论】:

标签: android apk android-source package-managers hardening


【解决方案1】:

我已经满足相同的要求,并在 Android 8 中实现它。它使用设备策略控制器来禁用应用安装。它应该在新的 Android 版本中仍然可以使用。

https://cs.android.com/android/platform/superproject/+/master:frameworks/base/services/core/java/com/android/server/pm/UserManagerService.java;l=559

添加如下函数applyInstallAppsRestritions,并在第559行调用。

private void applyInstallAppsRestritions() {
    synchronized (mRestrictionsLock) {
        Bundle bundle = new Bundle();
        bundle.putBoolean(UserManager.DISALLOW_INSTALL_APPS, true);
        Slog.i(LOG_TAG, "disallow install app by default.");
        mBaseUserRestrictions.append(UserHandle.USER_SYSTEM, bundle);
    }
}

【讨论】:

【解决方案2】:

您可以通过创建device policy controller (DPC) 应用来禁止安装未知来源的应用、阻止对某些应用的访问等等。

您可以查看this sample 并检查设备管理员或设备所有者应用程序是否具有您需要的所有功能。

【讨论】:

    猜你喜欢
    • 2015-03-30
    • 1970-01-01
    • 1970-01-01
    • 2018-09-24
    • 2016-08-03
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多