NativeScript Android 应用中的运行时请求权限

Runtime request permission in NativeScript Android app

我用 Native Script 编写应用程序代码,我需要在首次启动应用程序后使用 requestPermission。我知道如何使用请求权限,但我不知道如何在首先 运行 应用程序后使其工作。我必须在应用程序中的什么地方使用请求权限功能?在 ngOnInit() ?

您可以使用 nativescript-permissions 插件获取 Android 上的运行时权限。

使用hasPermission(permissionName);方法可以知道您的应用是否已经有权限或者您还没有获取权限。

通常建议仅在绝对必要时才请求许可。例如,如果您想访问 micro phone 来录制任何内容,您只会在用户尝试录制时请求权限,而不是在启动时请求权限。

您仍然可以在启动时请求权限,这会起作用。但在我看来,这可能会让用户感到厌烦。可能他不打算使用该应用程序的特定功能,而只是其他功能。

// HTML

<Button text="Take Permissions" (tap)="getPermission()"></Button>

// TS 文件

import * as camera from "nativescript-camera";



getPermission() {
    camera.requestPermissions().then(
      function success() {
        console.log('granted');
      }, 
      function failure() {
        console.log('failure');
      }
      );
  }

// 搜索 AndroidManifest.xml 并在所有匹配项中添加此代码。

<uses-permission android:name="android.permission.CAMERA" /> 

就这些了!