What is the best UX of account linking in Google Home App - deep-linking

I'm developing my smart home device.
For now, it doesn't have a native app but only a web client.
My home-actions work well, but I'm worried about the complexity of adding a new device in the google home app.
According to add new device user have to:
Open Home app
Click + button
Click "Set up device"
Click "Have something already set up"
Find my application in the list
And only then starts the process of the user linking.
I think that should be an easier way to link users, for example, deep-link to "user linking" in-home app, but I cannot find one.
Can someone explain the best user experience of account linking in Google Home App, for both mobile application and web application?

For native application, Smart Home documentation now feature a section about App Flip which allow you to "deep-link" to your native application to complete the account linking process.

Related

Google Home application support

I have a device which I want to control with Google Home.
Device also can be controlled via mobile app.
It will be a commercial device so many users have different devices and, of course, I can recognise them in my mobile app.
I read documentation about Action and Home Graph, but it is still not clear how I can integrate my device/app with google home in the same way as, for example, Hue is integrated.
I could not find where I can "register" my device/app with google so it will be shown in supported devices.
What I want to achieve is the following:
User gets device, installs the app, connects it device to the app. <- this already works.
Then user goes to google home integrations, selects my platform and he is ready to go.
Maybe someone can push me to the right direction where to start?
The smart home documentation provides the content to help you get started, along with several codelabs to learn about the webhook fomat.
When you are developing your action, through the Actions Console, you will be able to see your service in the full service list as "[test] Your project name". Once your integration is ready, you submit it to be published in the full list of services.

Firebase dynamic link does not navigate to ios app/ appstore from facebook post in iOS

I have to implement navigation from facebook post to my native iOS app or app store if the app is not installed. For that, I have tried Facebook APP Link feature but it did not work. Then I created Firebase Dynamic link and post it on facebook app directly. After tapping on posted link, it shows one pop up saying "Leave Facebook? This webpage is trying to open an app outside of Facebook. Are you sure you want to open it?"
After tapping on Yes, it does nothing. I have cross verified the created link with https://app_id.app.goo.gl/apple-app-site-association It shows associated bundle id, team id, app store id.
Can anyone please suggest me the proper pathway to implement deep linking with facebook post to the app?
Also, can we test deep linking with the app which is not on the App Store?
Thanks in advance.
Facebook doesn't like users to leave their app. They stopped supporting App Links in their iOS app almost a year ago, and have never supported Universal Links (which is what Firebase Dynamic Links uses).
The only workaround is to send users to a landing page with a CTA button, and put another deep link behind that button (on a different domain than the one on which you're hosting this landing page). It's an extra step for the user, but currently the only option. Branch.io (full disclosure: I'm on the Branch team) does this via the Deepviews feature. Dynamic Links currently doesn't have an equivalent, so you'd need to build something yourself.

Facebook Deep Linking on iOS not starting my app

I'm trying to implement Facebook's Deep Linking feature in order to launch game directly when the user taps a story in the native Facebook app. I've configured and enabled Deep Linking. I've then posted on my timeline using my app, it's a link to my game's site. The link contains a special GUID that enables some social activity in-game. When I click the link on web, my website opens normally. When I tap the story in native app, again, my website opens. However, if I tap the via part of the story in the bottom (such as 3 hours ago via MyApp) then my app launches, but it doesn't work for me as the GUID is not passed that way to the app (and also it would be useless to expect people to tap that part of the story). How can I set it up such that when the user clicks the link in a web browser, they will be taken to my website where there is a link to my app that they can download, but when they tap the same link in native Facebook App (only iOS is concerned), the game will launch and the link will be passed to my game? I don't know why it doesn't take me to the app when I click the link.
Here is a screenshot from my app's dashboard:
The URL scheme suffix is only for if I want to use the same ID for multiple apps, which is not the case.

Opening deep content links in native apps from mobile web

My company has an app (iOS and Android), to which the following scenarios applies. I'm trying to help point my engineers and product team in the right direction.
When one of our users clicks on a content link from one of our emails, or Tweets or Facebook posts, and they're on their mobile device, we prompt the user with a link to download our app. This is similar to what many apps do, including LinkedIn (see i.stack.imgur.com/glSgJ.png).
I imagine this is mildly effective of driving awareness and downloads of a native app, for new users who came in from social media and various web sources. However, it is not helpful at all for a user like me who already has the app!
1) clicking "No Thanks" keeps me on the mobile web (when I want to be in the native app), and
2) clicking "Download the App" takes me to iTunes App Store page for an app I already own.
SUPER ANNOYING. As a result, I have to manually open the app, and search for the content in question. I'm guessing most users don't do this. More importantly, depending on the UI/UX of the app, I may never get there!
Again, I know we are handling mobile web visits in the same way many other companies (including LinkedIn) do, but it seems we are leaving a lot of potential native app use on the table. I want our engineers to build that elusive 3rd option, "Open In App".
Spotify and Rdio have solved this very nicely. Here are deep content links (in the case of these companies, to a specific song) for the two apps respectively:
http://open.spotify.com/track/2SldBUTJSK6xz43i8DZ5r2
http://rd.io/x/QF3NK0JKWmk
If you have a moment, first grab the free version of Rdio or Spotify apps. Then, if you open those links above from an iOS device, you will see how nice the experience is, for existing native app users: Rdio has a nice "Tap to open in Rdio" link (http://i.stack.imgur.com/B7PuE.png), and Spotify's link is even more clear, "I have Spotify" (http://i.stack.imgur.com/Q3IV6.png). Both apps also include a link to download the app, for new app users. More importantly, both apps cookie the user: future visits to links (whether from email, Twitter, Facebook, etc) on mobile web automatically open the app, instead of prompting you to choose each time. SUPER CONVENIENT.
Questions:
1) How do they accomplish this? I'm initially only concerned about iOS (on which I tested this), but this same situation should apply to Android.
2) Why aren't more apps doing this? It doesn't seem like rocket science, so am I missing a key reason why this might be a bad idea? Half of my problem is convincing the use case.
3) Why don't I see discussions about this technique? I've searched a ton for an iOS solution. I come up with a lot of discussion about URL registrations (mainly app-to-app), but no one actually referring to the type of scenario I describe (mobile web prompt to open native app).
It seems that with minimal engineering, app developers could dramatically increase native app use, converting from mobile web. :)
Android supports deep linking. Please refer to
http://developer.android.com/training/app-indexing/deep-linking.html
Tapstream's deferred deep links can send users to specific views within apps (iOS only), even when the app isn't yet installed on their device.

How to prevent auto-launching of our iOS app from links in FB iOS app?

We have an iOS app that publishes certain activity to Facebook that contains links to pages on our domain. Our intention is for friends to click on those links and view them as webpages.
However, when you click on links in these published stories in the FB iOS app, it's auto launching our app instead of going to an embedded Web View or kicking out to safari.
Note: We still want to have single sign on (SSO), so just want to change the behavior of clicking links in published stories.
To clarify, this is what I'm talking about:
My app is able to publishes http://foo.com/123 into the FB newsfeed for a particular user that opts in.
That person's friends see the link, but when they click it, it just goes to http://foo.com/123 in the browser instead of launching my FOO app. This is because my app doesn't yet handle incoming context from FB iOS app.
I still want FB SSO to work from my FOO app. That is, when clicking on FB sign in in my FOO app, it jumps out to the FB iOS app (if installed) and does a single sign on and redirects back to my app. IOW, I don't want to break this authentication scenario that currently works.
What setting in the FB developers App Settings controls this? It's not clear from the documentation. I see sections for Native iOS app and Website which I currently have set but it's unclear which sub-setting affects the behavior in question. Also, it's not clear even if I was to find the setting, can I affect it without affecting SSO.
The setting you want in the Facebook App dialog is under the iOS Native section (see the screenshot below) - set both the highlighted sections to Disabled.
This won't affect Facebook login/SSO in the app, so you'll still be able to do the OAuth dances.

Resources