Android Nativescript 应用提示 ACCESS_BACKGROUND_LOCATION

Android Nativescript App Prompting ACCESS_BACKGROUND_LOCATION

我正在尝试在 Google Play 商店发布 NS8 应用程序。该应用程序需要蓝牙才能工作,因为它可以连接到其他设备。由于 Google 播放政策,我将以 SDK 30 为目标。

我知道为了让它工作,我需要在 AndroidManifest

中声明以下权限

ACCESS_FINE_LOCATIONACCESS_BACKGROUND_LOCATION

但是,当我将 Bundle 上传到 Google Play 时,我收到以下警告

This release includes permissions that haven't been declared in Play Console. Go to Sensitive app permissions to update your permission declarations.

我想我需要在应用程序中提示请求后台位置权限。使用 nativescript-community/ble 我已经知道请求 FINE_LOCATION。但是我想知道,如何获得后台位置访问的明确提示?我的视频需要一个。

编辑:所以我设法找到了一些手动提示位置的代码,所以我试图将其调整为 ACCESS_BACKGROUND_LOCATION,但我仍然需要帮助。

import {
   AndroidActivityRequestPermissionsEventData,
   AndroidActivityResultEventData,
   AndroidApplication,
   android as andApp
} from '@nativescript/core/application';

...

let permissionCb = (args: AndroidActivityRequestPermissionsEventData) => {
                        console.log(args);
                        console.log(args.requestCode);
                        console.log(args.permissions);
}
              

andApp.on(AndroidApplication.activityRequestPermissionsEvent, permissionCb);

const neededPermission = android.Manifest.permission.ACCESS_BACKGROUND_LOCATION;
                    

androidx.core.app.ActivityCompat.requestPermissions(this._getActivity(), [neededPermission], 0);

问题是,我的应用无法识别 android.Manifest.permission.ACCESS_BACKGROUND_LOCATION。我该怎么办?

事实证明,只有 ACCESS_FINE_LOCATION 是必需的,因为我的应用程序的蓝牙功能无论如何只在前台扫描。