-
Notifications
You must be signed in to change notification settings - Fork 427
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Android Update Rejection (New Google Permissions & Location Permissions policies) #1149
Comments
You’re the first to report this rejection. I have nothing to suggest at this time. |
Thanks @christocracy. I'll try to readjust and resubmit and let's see if it goes through. In the meantime, I would also like to know from people in this repo if they encountered this recently. |
Do you have access to the private repo? You might be interested in the new Customers should post issues in and use the private repo for latest updates. |
I see. I have access to it. I'll check Config.locationPermissionRationale, thanks! |
API docs Config.backgroundPermissionRationale |
Hi @christocracy . Sorry I didn't use private repo, I figure it's quicker to continue here. Just a quick question. I've read the changelog regarding Config.backgroundPermissionRationale for v3.9.1 . If I read correctly, this is implemented only for Android right? Similar to that of iOS 'requestTemporaryFullAccuracy' in v3.9.0, which means I've to select platform for ready method. Also, this uses targetSdkVersion 30 so I assume targetSdkVersion 29 won't work then (in that case I've to upgrade my build.gradle)? How about the behaviour on Android9, will this forward user to Location Permissions screen also? ================================= all developers have to go through permission declaration starting Sept30 2020 |
Ok, I submitted the demo-app today and got rejected. Before submission, I configured all the new App access stuff, describing to App reviewers how to login to the demo and get the app to request permission: App AccessYou must explain to the reviewer how to login to your app from a fresh install and initiate requesting location NOTE: I observed http://tracker.transistorsoft.com/google and the App-reviewer (on a real Pixel) actually did register and record a Permissions declaration formRe-releaseI have updated the text in
BackgroundGeolocation.ready({
.
.
backgroundPermissionRationale: {
title: "Allow {applicationName} to access this device's location even when the app is closed or not in use.",
message: "This app collects location data to enable recording your trips to work and calculate distance-travelled.",
positiveAction: 'Change to "{backgroundPermissionOptionLabel}"',
negativeAction: 'Cancel'
}
}) |
Good luck @christocracy for your submission! Let us know if it goes through. Mine is something like:
Is it fine if I build like this or do I need targetSdkVersion=30? |
Release Accepted!My latest change to backgroundPermissionRationale: {
title: "Allow {applicationName} to access this device's location even when the app is closed or not in use.",
message: "This app collects location data to enable recording your trips to work and calculate distance-travelled.",
positiveAction: 'Change to "{backgroundPermissionOptionLabel}"',
negativeAction: 'Cancel'
}
@firdaussoberi the only thing that matters for your root
|
Release Accepted [React Native Demo]. Both the Flutter and React Native demo apps have been accepted. I removed three words in the "Allow {applicationName} to access this device's location even when closed or not in use."
|
It occurs to me with Google’s new app submission policy, where one must describe to Google how to login to the app and how to trigger the app’s UI to request background permission, that this system is susceptible to being gamed, like VW’s Emissions Scandal, where a developer could detect their app being reviewed and throw up a different Just a thought :) |
I have an app that only tracks location in the foreground. My AndroidManifest.xml contains |
The plugin contains its own <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.GET_TASKS" /> See my latest blog entry |
Ah yes the old |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. You may also mark this issue as a "discussion" and I will leave this open. |
Closing this issue after a prolonged period of inactivity. Fell free to reopen this issue, if this still affecting you. |
Hola!, donde debo dejar este codigo? |
Maybe you just got lucky with the reviewer. We are trying to submit an app with the following purpose:
And the google reviewer just rejects it claiming "Based on our review, your declared feature does not meet the requirements for background location access." |
Me too, I got the same message recently for an app update that keeps getting rejected |
wait, my app doesnt use background location, still its getting rejected on playstore. |
So why are you using this plugin here which is named “background-geolocation”.? did you read the last paragraph of that blog post? |
We made a new RN app with the plugin and we get constantly rejected by Google Play because they say we ask : ACCESS_BACKGROUND_LOCATION while we do not request that permission at all in any place! Our AndroidManifest :
Google reporting we ask: android.permission.ACCESS_BACKGROUND_LOCATION So my question is: does the plugin auto set permission somewhere behind ? In the plugin setting we have: locationAuthorizationRequest: 'WhenInUse’, With : compileSdkVersion = 30 and the text above set for backgroundPermissionRationale Still no way to pass Google Play validations! Note: exact same iOS app is approved without any issues so I think this thread can be re-opened |
The plugin's Android library contains its own <uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" /> See my blog about *New Google Play Console Guidelines for "Sensitive App Permissions" |
I was not able to pass google's review standard for requiring background access in my app (which I concede is fair, I'm pro-privacy and their rationale for rejecting my use of location in the background was appropriate) so the part about tools:remove from that blog is what I used. Works great, Play Store approved
<manifest>
<uses-permission
android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
tools:node="remove" />
.
.
.
</manifest> |
adding the remove statement in manifest causes build error Any idea to resolve this issue? <uses-permission
android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
tools:node="remove" /> sorry. I just had to add <manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"> |
i used this with only foreground location too lol i don't know why, it's probably the first one i've found on the internet. |
Your Environment
react-native -v
): 0.60.4Expected Behavior
It is not a bug or installation issue, rather rejection of app update on Google Play Store which I expected to be fine
since I just updated same version of the plugin a week ago.
Actual Behavior
App rejected on Play Store.
Steps to Reproduce
Context
Today my new app update submission just got rejected by the Play Store review team. It's weird because I have never once got rejected on Android before and I updated fine just a week ago. I suspect this is related to the recent crack down on more apps using background location access:
https://arstechnica.com/gadgets/2020/02/google-cracks-down-on-location-tracking-android-apps/
https://support.google.com/googleplay/android-developer/answer/9799150?hl=en
and related to this permission in manifest I suppose:
ACCESS_BACKGROUND_LOCATION
according to:
https://developer.android.com/training/location/background
The reasons given for rejection is as below:
They gave two resolution options to allow submission:
Debug logs
Logs
Question
Have anyone encountered this before (or rather around this time)?
If so and you succeed resubmitting, what steps have you taken to resolve this?
I tend to prefer Option2 since doing Option1 won't do much good since March 2021 is a few months away and I still have to resubmit anyway. Also, is there any option in the plugin for Android that would allow only location tracking while in foreground and less 'intrusive' according to these Google's new policies?
I guess with my configs, I have to do
enableHeadless:false, stopOnTerminate: true and startOnBoot: false
right?The text was updated successfully, but these errors were encountered: