gpt4 book ai didi

java - 一遍又一遍地询问相同的 Android Studio 权限

转载 作者:行者123 更新时间:2023-12-02 08:51:56 25 4
gpt4 key购买 nike

我需要访问用户的位置,并且其权限对于我的应用程序至关重要。我尝试了这段代码,但第二次它没有请求许可(依此类推):

while(ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED)
{
ActivityCompat.requestPermissions(MainActivity.this, permissions, 1);
}

最佳答案

如果该权限对于继续应用程序确实至关重要,据我所知,您唯一能做的就是当您收到尚未授予此权限的权限回调时结束应用程序。

这样,下次打开应用程序时,它会再次请求位置权限。

我们检查主要 Activity 的权限,并显示一个提示,说明需要权限并在一个应用程序中完成主要 Activity ,这在没有位置的情况下使用它是没有意义的。该应用程序已发布在 Google Play 商店中。

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
if (permissions.length > 0 && requestCode == REQUEST_PERMISSIONS) {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
setUp();
} else {
Toast.makeText(this, R.string.permissions_required, Toast.LENGTH_LONG).show();
finish();
}
}
}

尽管如果应用程序的其余部分可以在没有位置的情况下使用可能会更好,但有时没有其他方法,如果您一次又一次尝试请求相同的权限,对话框在某些时候将不会显示.

关于java - 一遍又一遍地询问相同的 Android Studio 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60719635/

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