android - 从 Activity 上下文外部调用 startActivity() 需要 FLAG_ACTIVITY_NEW_TASK 标志? nabinbhandari/Android-权限库

标签 android android-permissions

使用时

nabinbhandari/Android-Permissions library: Link

当我在 Android 设备 API 级别 > 20 上运行应用程序时出现错误

这是非 Activity 类。 MainApp.getmContext() 返回应用上下文:

String[] permissions = {Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION};
    Permissions.check(MainApp.getmContext(), permissions, null/*rationale*/, null/*options*/, new PermissionHandler() {
        @Override
        public void onGranted() {
            // do your task.
            Toast.makeText(MainApp.getmContext(), "Granted", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onDenied(Context context, ArrayList<String> deniedPermissions) {
            Toast.makeText(MainApp.getmContext(), "Denied", Toast.LENGTH_SHORT).show();
        }
    });

Permissions.check 行出现错误。

最佳答案

我们必须在权限参数中传递[您要在其上显示权限]上下文的 Activity :

public static void permissionGrant(Context mContext){
    String[] permissions = {Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION};
    Permissions.check(mContext, permissions, null/*rationale*/, null/*options*/, new PermissionHandler() {
        @Override
        public void onGranted() {
            // do your task.
            Toast.makeText(MainApp.getmContext(), "Granted", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onDenied(Context context, ArrayList<String> deniedPermissions) {
            Toast.makeText(MainApp.getmContext(), "Denied", Toast.LENGTH_SHORT).show();
        }
    });
}

关于android - 从 Activity 上下文外部调用 startActivity() 需要 FLAG_ACTIVITY_NEW_TASK 标志? nabinbhandari/Android-权限库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55170710/

相关文章:

java - 无法解析符号 'MyGcmListenerService' 和 'MyInstanceIDListenerService'

android - Phonegap 在设备列表中看不到 Sony Xperia Z1

android - 如何保持发布版本的断言活跃

android - 使用 MVP 架构在运行时检查权限的最佳方法是什么?

android - Api 23 权限编译时检查

android - 执行需要粗略位置许可的网络扫描

android - 在我的 Android 应用程序中使用 map 应用程序

android - 错误 :Cause: buildToolsVersion is not specified in build. 等级(项目:xxx)

android - 如何修复未 protected SMS BroadcastReceiver lint 警告

android - 检测一个人在 Android 中接听电话需要多长时间