10

So it seems that in the spirit of having documentation all over the place, docs.microsoft has once again taken the cake.

Looking into sending push notifications, I came across these two pages:

  1. https://docs.microsoft.com/en-us/appcenter/sdk/push/uwp

  2. https://docs.microsoft.com/en-us/azure/app-service-mobile/app-service-mobile-windows-store-dotnet-get-started-push

Notice how there's no reference from either page to the other.

So I tried searching Google, doing similar searches to the title of this question, only to find little more than the above two pages.

Which brings me here, with the following question: What is the relationship (and/or difference) between App Center Push and Azure Notification Hub?

Martin Zikmund
  • 34,962
  • 7
  • 63
  • 83
AjLearning
  • 419
  • 4
  • 13

2 Answers2

13

They don't have a reference from either to the other because they are two completely unrelated solutions (except for the fact they solve the same problem).

Both allow you to setup a cross-platform push notification infrastructure for your mobile app, but App Center is free, specifically built for iOS, Android and Windows notifications and requires less setup, but gives you a bit less control over how the notifications look. However it makes it easier to segment notifications based on analytics data. Notifications Hub is a Azure service, so you need a Azure subscription and you need to build a backend to make it work. It takes a more work but you have more complete control over the notifications.

The awesome James Montemagno made a nice summary article comparing the two options.

Martin Zikmund
  • 34,962
  • 7
  • 63
  • 83
  • It really seems as if departments at Microsoft don't communicate with each other and they each end up providing different solutions for the same sort of problem without realsing what the other is doing. Clearly the case, when James Montemagno, Principal Program Manager for Mobile Developer Tools at Microsoft, has to ask good friend Andrew what the best option is, before posting to his own domain name instead of editing either page (in my post) or better yet, adding a new doc under docs.microsoft entitled "Options for push notifications. Start Here!". – AjLearning May 25 '18 at 07:58
  • Anyway, personal frustration aside (hey if my Manager complains about taking too long to find a solution, I take it out on the rest of the world, it's how software development goes); what does that article mean when it says "Implementing all of this yourself would be pretty much terrible as you would need to worry about device registration, device refresh, talking to each service, and then integrating a different SDK into each application"? Seems as if you still need to do all that with Notification Hub. Or at least that's what the Xamarin University video suggested. Or am I missing something? – AjLearning May 25 '18 at 08:01
  • I'm sorry, but I have to disagree with your point of view. App Center and Azure are two completely different services. This is not about not knowing that there are two offerings, they are absolutely aware of that. This is about having options - some scenarios are better suited for App Services, as that is the fastest way to implement cross-platform push; in other cases Azure Notification Hubs is the only way to go because of the better control over the implementation and backend. I think it is much better to have multiple options than one that is limited or might not suit everyone. – Martin Zikmund May 25 '18 at 08:03
  • In addition there is a myriad of other mobile push notification solutions available outside Microsoft and you could even go nuclear and implement it all natively, separately for each platform. Another option, but I doubt developers would be happy if Microsoft just said - you can do all the work so do it yourself. More options is better than none I think. – Martin Zikmund May 25 '18 at 08:06
  • To the other question - yes that is the case. Notification Hub is the more "general solution" so it requires more work to set up. If you want a more streamlined process, App Center is better. – Martin Zikmund May 25 '18 at 08:08
  • 1
    I’m not saying it’s bad to have more than one option. They can have 50 for all I care. I’m saying if there’s more than one option, there either needs to be a central place that lists all available options or links from one to another with information about which might be better suited. So similar to what was in that blog post except on domain ending in microsoft.com and not montemagno.com. Clearly a newcomer with no previous knowledge of push notifications clearly hasn’t been considered when documenting these options. – AjLearning May 25 '18 at 08:19
  • Had you not directed me to that post, i may have never found it. I only look at official docs whenever possible. – AjLearning May 25 '18 at 08:21
  • That is true, there should be a place to see the differences in the docs. The thing to keep in mind is that previously these docs were on separate locations - one in Azure docs, one in App Center docs. After the documentation unification it seems a bit more confusing as they share the same "home" so it may seem as though they are more related. Luckily the documentation is now open source so anyone can contribute and even add this kind of comparison between the options there. It just takes time for the docs to evolve. – Martin Zikmund May 25 '18 at 08:43
  • 1
    Oh really, open source, I didn’t know that. That’s cool. I’ll see if I can update it myself with this info, to save someone else the grief. Ah, the separate location thing explains why things often seem ‘all over the place’ like I said. Thanks! – AjLearning May 25 '18 at 08:48
  • You definitely can update it :-) . The whole docs are hosted on Github, so editing creates a Pull Request which others review and then merge into docs. I have pushed a few updates here and there as well :-) – Martin Zikmund May 25 '18 at 08:51
3

I think its important to add the fact that App Center Push, Auth and Data are now being retired, despite Push being a fantastic offering IMO:

https://visualstudiomagazine.com/articles/2020/02/14/app-center-mbaas.aspx

"We are discontinuing efforts in the Auth, Data, and Push services and working to retire these preview services in App Center," said John Wargo, principal program manager for Visual Studio App Center. "With this change, we will focus App Center on delivering a world-class mobile and desktop DevOps experience. We will also work together with Azure teams to help migrate developers to the native Azure services, and ensure that Azure continues to be a great platform for your mobile apps."

There seems to be no full migration path at time of writing, but there is the hint this will be handled mostly for existing users -

https://docs.microsoft.com/en-us/appcenter/migration/push/

We don’t expect customers to manually migrate from App Center Push to Azure Notification Hubs; so before the service shutdown, we’ll provide detailed instructions for how to streamline your app’s migration from App Center Push to Azure Notification Hubs.

WickedW
  • 2,123
  • 3
  • 21
  • 46