gpt4 book ai didi

java - ActivityCompat.requestPermissions 不显示提示

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:31:57 28 4
gpt4 key购买 nike

我正在尝试请求 ACCESS_FINE_LOCATION 权限以获取用户的当前位置。

我的日志记录表明我的应用在查询 ContextCompat.checkSelfPermission() 时目前没有此权限,但在调用 ActivityCompat.requestPermissions() 时没有显示任何内容。

我的 Google map 代码(实现 OnMapReadyCallbackActivityCompat.OnRequestPermissionsResultCallback())在 FragmentActivity 中。

我已经设法让 requestPermissions() 函数在应用程序的其他 Activity 中成功运行,它只是带有 Google map 的那个。当放置在 ActivityonCreate() 方法或 onMapReady() 中(它需要去的地方)时,它不起作用.

if(ContextCompat.checkSelfPermission(LocationActivity.this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
Log.d(TAG, "not granted");
final String[] permissions = new String[] {android.Manifest.permission.ACCESS_FINE_LOCATION};
if(ActivityCompat.shouldShowRequestPermissionRationale(this, android.Manifest.permission.ACCESS_FINE_LOCATION)) {
Log.d(TAG, "rationale");
// Explain to the user why permission is required, then request again
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("We need permissions")
.setCancelable(false)
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
ActivityCompat.requestPermissions(LocationActivity.this, permissions, 1);
}
});
AlertDialog alert = builder.create();
alert.show();

} else {
Log.d(TAG, "request" + android.Manifest.permission.ACCESS_FINE_LOCATION);
// If permission has not been denied before, request the permission
ActivityCompat.requestPermissions(LocationActivity.this, permissions, 1);
}
} else {
Log.d(TAG, "granted");
}

有什么想法吗?是否与我的 Activity 类 (FragmentActivity) 有关,或者可能是 Google map 异步调用权限请求?

最佳答案

在完全剥离我的类之后,它仍然无法正常工作,我意识到这个 Activity 是使用 TabHost 实例化的。

当我停止使用TabHost时,提示成功。我猜想新的权限提示不支持 TabHosts - 这是一个错误吗?

App requests aren't showing up 相同的问题

我最终创建了一个 PermissionsRequestActivity,它代表我的 TabHost 处理权限请求和响应,然后退出(通过 Intent extras Bundle 传递请求的权限信息)。
它将对请求的响应作为广播传回,由我的 TabHost 接收。

有点乱,但工作正常!

关于java - ActivityCompat.requestPermissions 不显示提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37140519/

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