在Android 6.0中的Play商店中不要求更新apk的权限

时间:2017-10-26 14:00:49

标签: java android google-play

我已经在Play商店中安装了应用程序。我最近在Play商店中添加了新的apk。 之前我为位置,相机和联系人添加了3个权限(我以数组格式添加)。

 if (ContextCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED
            && ContextCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED
            && ContextCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.MANAGE_DOCUMENTS) != PackageManager.PERMISSION_GRANTED
            && ContextCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED
            && ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED
            && ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.READ_CALENDAR) != PackageManager.PERMISSION_GRANTED
            && ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.WRITE_CALENDAR) != PackageManager.PERMISSION_GRANTED
            && ContextCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {

        ActivityCompat.requestPermissions(this,
                new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION
                        , android.Manifest.permission.MANAGE_DOCUMENTS, android.Manifest.permission.WRITE_EXTERNAL_STORAGE
                        , Manifest.permission.READ_EXTERNAL_STORAGE, android.Manifest.permission.CALL_PHONE
                        , Manifest.permission.READ_SMS, android.Manifest.permission.READ_SMS
                        , Manifest.permission.GET_ACCOUNTS, Manifest.permission.GET_ACCOUNTS},
                1000);
    }

现在最新的一个具有5个权限(位置,相机,联系人,读取短信,获取帐户)。但在从游戏商店更新旧apk到新apk后。它不是在android 6.0中请求权限。请给我一些建议来克服这个问题。

1 个答案:

答案 0 :(得分:2)

您有逻辑错误。使用||代替&&

仅在拒绝所有权限时才请求权限。如果至少拒绝其中一个,则不会请求权限。

要在不允许任何给定权限的情况下请求权限,请使用||

看起来您在处理运行时权限时遇到了问题。您可以使用我的库轻松处理运行时权限。 https://github.com/nabinbhandari/Android-Permissions