Closed Bug 1221678 Opened 9 years ago Closed 8 years ago

Add new GCM permission to Android manifest

Categories

(Firefox for Android Graveyard :: General, defect)

defect
Not set
normal

Tracking

(firefox45 affected, firefox47 fixed)

RESOLVED FIXED
Firefox 47
Tracking Status
firefox45 --- affected
firefox47 --- fixed

People

(Reporter: nalexander, Unassigned)

References

Details

Attachments

(1 file)

Using GCM requires a new Android permission:

<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

This impacts Fennec (and possibly b2gdroid).  We need to hash out a schedule for this permission to ride the trains.
margaret: I haven't been involved with a permission bump like this before.  The patch is trivial.  Can you explain what goes into this decision?
Flags: needinfo?(margaret.leibovic)
(In reply to Nick Alexander :nalexander from comment #1)
> margaret: I haven't been involved with a permission bump like this before. 
> The patch is trivial.  Can you explain what goes into this decision?

We usually do a cost-benefit analysis to see if the new feature we're getting would be worth the potential update drop-off from users needing to manually approve a new permission. We try to group together new permissions as much as possible, but I don't think we have any other things on deck right now.

We were hoping that we'd have Android M incremental permissions in place by the time we needed to do another permission bump, but here we are... that also wouldn't help users on older versions of Android.

We'll want to message to users why this new permission is needed. If push notifications are important, and it seems like they are, we'll probably have to bite the bullet and just do this.

Barbara, what do you think?
Flags: needinfo?(margaret.leibovic) → needinfo?(bbermes)
Just for my understanding, adding GCM to Fennec is just the first phase of push notification on Fennec? 

I'm basically asking if by the time we ask in the release for a permission bump if we are able to tell the user a good story why and how they will benefit from it. If we only implement the underlying technology first without giving the user true value for that bump (web notifications), I'm a bit hesitant.

Thoughts?
Flags: needinfo?(nalexander)
Flags: needinfo?(margaret.leibovic)
Flags: needinfo?(bbermes)
(In reply to Nick Alexander :nalexander from comment #1)
> margaret: I haven't been involved with a permission bump like this before. 
> The patch is trivial.  Can you explain what goes into this decision?

In addition to what Margaret said, we also need to figure out how this would ride the trains. We would probably not allow the permission bump to ride the trains until the features were ready as well. Until then, it would stay behind a flag.
(In reply to Barbara Bermes [:barbara] from comment #3)
> Just for my understanding, adding GCM to Fennec is just the first phase of
> push notification on Fennec? 
> 
> I'm basically asking if by the time we ask in the release for a permission
> bump if we are able to tell the user a good story why and how they will
> benefit from it. If we only implement the underlying technology first
> without giving the user true value for that bump (web notifications), I'm a
> bit hesitant.

Yeah, we'd only really bump permissions for a real push consumer, Web Push or Firefox Accounts/Sync/Send Tab.  Behind flags (for Release and Beta, for sure) until we were ready to roll the feature out to our userbase.
Flags: needinfo?(nalexander)
Flags: needinfo?(margaret.leibovic)
margaret: I flagged you for review, but could you also suggest if there are additional permissions bumps in the pipeline, so we can coalesce and bump everything all at once?  I don't want to manage this cross-feature co-ordination.

Thanks!
(In reply to Nick Alexander :nalexander from comment #7)
> margaret: I flagged you for review, but could you also suggest if there are
> additional permissions bumps in the pipeline, so we can coalesce and bump
> everything all at once?  I don't want to manage this cross-feature
> co-ordination.

I don't know of anything in the pipeline right now. Redirecting to Barbara to manage this.

Is this still an issue with runtime permissions? I realize that will only help Android M users, but at least it's something.

I don't think we're going to want to ship this new permission without a new feature to go along with it... is it possible to back this out from 47 if we don't ship push in that release?
Flags: needinfo?(bbermes)
Comment on attachment 8725804 [details]
MozReview Request: Bug 1221678 - Add new Android permission to Fennec Nightly (when GCM is enabled). r?margaret

https://reviewboard.mozilla.org/r/37649/#review34231

::: mobile/android/base/FennecManifest_permissions.xml.in:14
(Diff revision 1)
> +#ifdef NIGHTLY_BUILD

Looking at this patch, I'm answering my own question. Let's keep this behind a flag until we're ready to ship it.
Attachment #8725804 - Flags: review?(margaret.leibovic) → review+
Also, according to my local testing and http://android.stackexchange.com/a/61794, this will appear as "NEW - receive data from internet".  Very helpful, Google.
(In reply to Nick Alexander :nalexander from comment #7)
> margaret: I flagged you for review, but could you also suggest if there are
> additional permissions bumps in the pipeline, so we can coalesce and bump
> everything all at once?  I don't want to manage this cross-feature
> co-ordination.

In bug 1241810 ("Content notifications") I want to add the RECEIVE_BOOT_COMPLETED permission to restore alarms (AlarmManager) after reboot. Even though we already have a broadcast receiver listening to BOOT_COMPLETED (Stumbler) we do not have the permission yet.
(In reply to Sebastian Kaspari (:sebastian) from comment #11)
> (In reply to Nick Alexander :nalexander from comment #7)
> > margaret: I flagged you for review, but could you also suggest if there are
> > additional permissions bumps in the pipeline, so we can coalesce and bump
> > everything all at once?  I don't want to manage this cross-feature
> > co-ordination.
> 
> In bug 1241810 ("Content notifications") I want to add the
> RECEIVE_BOOT_COMPLETED permission to restore alarms (AlarmManager) after
> reboot. Even though we already have a broadcast receiver listening to
> BOOT_COMPLETED (Stumbler) we do not have the permission yet.

Let's also flag this for Barbara. We have (or should have) a tag in Aha for tracking permissions bumps, and this lets us group them together in the roadmap.
https://hg.mozilla.org/mozilla-central/rev/b7606518d932
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 47
(In reply to :Margaret Leibovic from comment #8)
> (In reply to Nick Alexander :nalexander from comment #7)
> > margaret: I flagged you for review, but could you also suggest if there are
> > additional permissions bumps in the pipeline, so we can coalesce and bump
> > everything all at once?  I don't want to manage this cross-feature
> > co-ordination.
> 
> I don't know of anything in the pipeline right now. Redirecting to Barbara
> to manage this.
> 
> Is this still an issue with runtime permissions? I realize that will only
> help Android M users, but at least it's something.
> 
> I don't think we're going to want to ship this new permission without a new
> feature to go along with it... is it possible to back this out from 47 if we
> don't ship push in that release?

I don't think there is any permission bump in the pipeline for 46/47. 

So I agree, if there is nothing visibly beneficial to the user to ask for a permission bump, we should hold off with this until we can tie this with a user facing benefit/feature.

How does this work fit into https://mozilla.aha.io/features/FENN-199? As this card is ready for 46. Should I create a new card to track the GCM work specifically as I don't see anything related in 47 in Aha?
Flags: needinfo?(bbermes)
(In reply to Barbara Bermes [:barbara] from comment #15)
> (In reply to :Margaret Leibovic from comment #8)
> > (In reply to Nick Alexander :nalexander from comment #7)
> > > margaret: I flagged you for review, but could you also suggest if there are
> > > additional permissions bumps in the pipeline, so we can coalesce and bump
> > > everything all at once?  I don't want to manage this cross-feature
> > > co-ordination.
> > 
> > I don't know of anything in the pipeline right now. Redirecting to Barbara
> > to manage this.
> > 
> > Is this still an issue with runtime permissions? I realize that will only
> > help Android M users, but at least it's something.
> > 
> > I don't think we're going to want to ship this new permission without a new
> > feature to go along with it... is it possible to back this out from 47 if we
> > don't ship push in that release?
> 
> I don't think there is any permission bump in the pipeline for 46/47. 
> 
> So I agree, if there is nothing visibly beneficial to the user to ask for a
> permission bump, we should hold off with this until we can tie this with a
> user facing benefit/feature.
> 
> How does this work fit into https://mozilla.aha.io/features/FENN-199? As
> this card is ready for 46. Should I create a new card to track the GCM work
> specifically as I don't see anything related in 47 in Aha?

This isn't technically related to https://mozilla.aha.io/features/FENN-199.  That tracks Web Notifications, which are the display part.  This work tracks Web Push, which is the messaging part and isn't /necessarily/ user visible.  It is user visible in that sites will prompt to push updates to the user, and the behaviour can include displayed notifications.

This is Nightly only for now.
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: