-
-
Notifications
You must be signed in to change notification settings - Fork 735
Why do Parse Push Notification still need "Get_Account" permission to work? #129
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
Comments
Hi @Kuoyhout , you are correct. GET_ACCOUNTS was required only for 4.0.3 and below. We will change the way we check the permission for push. Thanks for open this issue. |
To clarify, the method we use to register and utilize GCM is using Google's old documented method that doesn't require Google Play Services and requires We require it in the manifest since there's no real way to programmatically check minSdkVersion and it would be confusing if developers supported 4.0.3 or below and only tested their apps on 4.0.4+, but never tested on on 4.0.3 and below. There doesn't seem to be a good way to guarantee having |
@grantland So if my app only supported 4.0.4+, and I don't add this permission to my manifest, and in Android Marshmallow (6.0) I don't request user for this permission in runtime, will push notification still working? |
AFAIK that will not work right now since our SDK throws if you're missing |
With the new M permission model, So are you saying that with the current SDK, push will not work on M devices (regardless of having it in the manifest)? |
@tigerpenguin We require it being requested, aka being in With these two things in mind, push will work on all devices as it's currently configured. |
@grantland Out of curiosity, why do you require it being requested, but not granted? I don't want this permission in my Manifest if It's not required, which it isn't by the looks of it. |
|
If (GET_ACCOUNTS is not granted) { |
I'm with Kane-Shih on this one, I've been forced to fork the project and change it myself, which seems really unnecessary. |
How about let developer specify the app's minSdkVersion in the initialize method? From To |
What @Kane-Shih posted is not possible, since there are no APIs to access Adding an extra parameter to |
"runs on", I mean android.os.Build.VERSION.SDK_INT. |
A reasonable solution would be to instead require the following permission in the manifest:
This way the permission will not be included on API 19+ (and thus users won't see that permission in marshmallow), but it will still be available to users on lower versions. Note that 19 is the lowest we can go here because the As far as the runtime check for the permission- I don't follow the logic of why you would need to check the |
We originally designed this to be extra cautious to prevent developers from shipping a bad build due to insufficiently testing with a 4.0.4+ device. Since the probability of developers targeting < 4.0.3 is dwindling and there seems to be enough push from the community, we'll remove this restriction. |
Thanks! Any thoughts on when this might make it into a stable release? |
Unfortunately we don't have an ETA on the next release. |
The next release 1.6.2 is out but GET_ACCOUNTS is required... :/ |
@Zerokcm the latest release is 1.11.0: https://github.com/ParsePlatform/Parse-SDK-Android/releases |
If GET_ACCOUNTS is no longer needed, the information here needs to be updated https://parse.com/apps/quickstart#parse_push/android/native/existing |
We intentionally left it since it's required for Android 4.0.3 and below and if a developer was inclined to remove it they'd see the specifics GCM requires. |
GCM is no longer require "android.permission.GET_ACCOUNTS" to work, but why parse still need that permission.
The text was updated successfully, but these errors were encountered: