gpt4 book ai didi

android - 并非自动授予 ACCOUNT 权限组中的所有权限

转载 作者:太空宇宙 更新时间:2023-11-03 11:07:48 24 4
gpt4 key购买 nike

在我的应用中,我需要以下权限才能创建帐户:

<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
<uses-permission android:name="android.permission.USE_CREDENTIALS"/>

据我了解,在 M 中,这些应该自动授予。

但是,我看到的是只授予了 GET_ACCOUNTS。我已经使用以下代码对此进行了检查:

@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

logPermissionStatus(Manifest.permission.GET_ACCOUNTS);
logPermissionStatus(Manifest.permission.MANAGE_ACCOUNTS);
logPermissionStatus(Manifest.permission.AUTHENTICATE_ACCOUNTS);
logPermissionStatus(Manifest.permission.USE_CREDENTIALS);
}

private void logPermissionStatus(String permission) {
if (checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED) {
Log.d("AccountPermissions", "Granted: " + permission);
} else {
Log.d("AccountPermissions", "Denied: " + permission);
}
}

打印:

D/AccountPermissions﹕ Granted: android.permission.GET_ACCOUNTS
D/AccountPermissions﹕ Denied: android.permission.MANAGE_ACCOUNTS
D/AccountPermissions﹕ Denied: android.permission.AUTHENTICATE_ACCOUNTS
D/AccountPermissions﹕ Denied: android.permission.USE_CREDENTIALS

如果我尝试请求权限

requestPermissions(new String[] {
Manifest.permission.GET_ACCOUNTS,
Manifest.permission.MANAGE_ACCOUNTS,
Manifest.permission.AUTHENTICATE_ACCOUNTS,
Manifest.permission.USE_CREDENTIALS,
}, 1);

该对话框显示“允许 AccountPermissions 执行未知操作?”,让我相信这些并不是要从用户那里请求的。此外,ACCOUNT 权限组显示在应用信息页面上的旧权限下。

我需要做些什么让 Android 自动授予我这些权限,还是我真的应该向用户请求这些权限?

最佳答案

这已在最新的 M 预览版中修复。

关于android - 并非自动授予 ACCOUNT 权限组中的所有权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30963261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com