首页 > 解决方案 > 在某些棉花糖设备中总是要求运行时权限

问题描述

我创建了一个 android 应用程序,它在启动时要求一些运行时权限!但在某些棉花糖设备中,即使用户授予权限,应用程序在重新启动或加载 MainActivity 后再次请求权限!我不知道为什么!它在 nogout、oreo 等中没有任何问题。我的客户有一个定制的中国设备..我在 genymotion 中尝试过这个,我遇到了同样的问题!

我请求权限,例如;

 String[] PERMISSIONS = {android.Manifest.permission.WRITE_EXTERNAL_STORAGE,android.Manifest.permission.ACCESS_FINE_LOCATION,android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.INSTALL_PACKAGES,android.Manifest.permission.READ_EXTERNAL_STORAGE, android.Manifest.permission.CAMERA};
       Log.e("PERMISSSION ADDED",String.valueOf(hasPermissions(this, PERMISSIONS)));
        if(!hasPermissions(this, PERMISSIONS)){
            ActivityCompat.requestPermissions(this, PERMISSIONS, PERMISSION_ALL);
        }


public static boolean hasPermissions(Context context, String... permissions) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && context != null && permissions != null) {
            for (String permission : permissions) {
                if (ActivityCompat.checkSelfPermission(context, permission) != PackageManager.PERMISSION_GRANTED) {
                    return false;
                }
            }
        }
        return true;
    }

我记录了价值!应用程序/活动重新启动后,它总是错误的!

我怎么能解决这个问题?请帮忙!!

更新

当我删除我Manifest.permission.INSTALL_PACKAGES的问题是固定的.. 但是因为我需要通过从 URL 下载 apk 来安装软件包,所以我需要 INSTALL_PACKAGES 对吗?

标签: android

解决方案


推荐阅读