gpt4 book ai didi

Android 权限对话框在应用程序后面打开

转载 作者:行者123 更新时间:2023-11-29 02:41:13 27 4
gpt4 key购买 nike

我正在使用以下代码在我的应用程序中请求精确定位权限,但是当它运行时,请求对话框会在应用程序后面打开,因此用户在应用程序关闭之前看不到它。

    ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
MY_PERMISSIONS_REQUEST_ACCESS_FINE_LOCATION);

我怎样才能让对话框在应用程序前面打开,而且我的应用程序有没有办法知道用户何时回答了请求(接受或拒绝 - 我不一定需要知道哪个)?

Activity 的完整代码:

package com.myApp;

import android.Manifest;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;


public class permissionsCheckAndSet extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.activity_permissions_check_and_set);
}

@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
}

public void clickRequestPermissions(View v) {
Toast.makeText(this, "Request permissions now", Toast.LENGTH_LONG).show();
doRequestPermissions();

}

public void doRequestPermissions() {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
MY_PERMISSIONS_REQUEST_ACCESS_FINE_LOCATION);

}
}

解释完整的用户流程...

首先会显示启动画面。这个屏幕检查各种东西——网络可用、互联网可​​用、在线数据库可用。此初始屏幕还会检查是否已向应用程序授予所需的(不是必需的,但需要的)权限。在进行这些检查时,会向用户提供视觉反馈,以便他们可以看到发生了什么。

如果一切正常,则会打开主应用程序 Activity 屏幕。

如果权限检查确定未授予多个所需权限之一,则会打开上面显示的 Activity 。

此 Activity 的屏幕会告知用户某些权限尚未授予。它继续解释每个权限的用途。最后它解释说,单击屏幕底部的按钮将提示他们允许或拒绝应用程序所需的每个权限。

clickRequestPermissions 是附加到权限信息屏幕底部按钮的函数。

我假设我不需要发布与 Activity 布局相关的所有 XML,但它是 android:theme="@style/AppTheme.NoActionBar" Activity 。

最佳答案

您可以先创建 SplashScreenActivity 检查权限,然后接收结果您可以启动您的 Activity。

关于Android 权限对话框在应用程序后面打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43966754/

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