我使用 react native cli,并使用背景地理定位。 (目前我只用于安卓) 我尝试将应用发布到 Play 商店,但他们说我必须添加使用位置服务的权限。
我做了一些搜索,但对我没有用:
我试过了:
async requestLocationPermission(){
try {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
'title': 'Example App',
'message': 'Example App access to your location '
}
)
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log("You can use the location")
alert("You can use the location");
} else {
console.log("location permission denied")
alert("Location permission denied");
}
} catch (err) {
console.warn(err)
}
}
async componentDidMount() {
await this.requestLocationPermission()
但它直接授予..:“您可以使用该位置”。
在我转到后台地理定位之前,它确实请求了许可,但现在我什至没有注意到这一点,直到被 google play 拒绝。
我为此做了一些研究,但无法让它发挥作用。
对不起我的英语,如果你能帮助我,我真的很感激。 我需要那个位置权限对话框。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
<uses-permission android:name="android.permission.CAMERA"/>
<application
android:name=".MainApplication"
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:allowBackup="false"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<!-- <uses-library android:name="org.apache.http.legacy" android:required="false"/> -->
</activity>
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="..."/>
</application>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>