iOS App Store Pass Parameters in Store Download Link
This is now easier with the coming iOS 9, because cookies can be shared between Safari and the in-app Safari View Controller! Simply keep a cookie in the browser and track the last link clicked on. Then when the user opens your app, open up an invisible Safari View Controller in the background while you show a spinner. As soon as you can inspect the cookie and see the last link clicked, you can stop the spinner--it should be a very fast operation.
We offer this for no cost at Branch, where we've had a customizable web banner for some time. Now we're excited to incorporate the Safari View Controller into our open-source SDK! We also have a version of digital fingerprinting that allows you to do the same on pre-iOS 9 devices. We use IP address, OS, OS version and more to compare a click in a browser to an open in an app. This approach has pros and cons.. happy to go into further detail if you're interested.
Related videos on Youtube
Evan Layman
Updated on December 01, 2020Comments
-
Evan Layman over 3 years
Similar to this question: How to make ios App Store link with parameters?
I am interested in passing parameters to the download link in the iOS app store. From what I've read, it seems that the parameters are only passed to the application if it was already installed, and the user tapped the smart app banner.
What I want to do is pass parameters to the download link such that when a user downloads, the first time they open the app, the parameters will be passed.
Mainly, I want to allow users to invite their friends to play my app through email or facebook and when the friend downloads using their link, it will send a push to the original player to notify that their friend now has the app.
Thanks!
-
user102008 over 10 yearsThis doesn't answer the question. The app-argument will only be passed to the app if the app is already installed, like the OP says.
-
Evan Layman over 9 yearsAre you able to parse them in applicationDidFinishLaunchingWithOptions ?
-
greegles over 9 yearsNot to my knowledge, it seems like they only allow you to view the analytics through iTunes Connect
-
Léo Natan over 8 yearsThis is a bad answer as it does not answer what was asked
-
markquezada over 8 yearsI saw Branch on Product Hunt and was curious about how you were doing the linking of post-install data so I started googling around. Thanks for the insight here. Do you have any data on how often this leads to false-positive identification of users after download? Also, do you put a time limit on recognizing a user after they click the initial download link?
-
markquezada over 8 yearsThis is totally unrelated to the OP's question.
-
st.derrick over 8 yearsWe discuss matching in-depth here: dev.branch.io/recipes/matching_accuracy -- collisions are most likely at large events where everyone is on the same wifi and if we've never seen the devices before (and we've seen hundreds of millions of devices). We use 2 hours as the default time limit, but this is completely customizable on both an app-wide and per-link basis. See 'duration' on the page referenced above.
-
Michael over 8 yearsAFAIK, you can only pass contextual data if the app is installed, so this is wrong:
If you include this, and the user has your app installed, she can jump from your website to the corresponding position in your iOS app.
-
Paolo Biavati over 8 yearsWhat appen if I use another browser? does it work only if you start from a link in safari browser?
-
st.derrick over 8 yearsThen you should use digital fingerprinting, as cookies will not be shared unless that other browser is actually an SFSafariViewController
-
swalkner about 7 yearsis this allowed by ? Isn't there the risk of getting rejected when showing an invisible Safari View Controller?
-
Guig almost 7 yearsCan that work if the link is opened from another app that uses a UIWebView, like Messenger?
-
Liubo almost 7 years@swalkner it's not allowed since AppStore guidelines were updated. Now, according to 5.1.1(iv) of the App Store Review Guidelines "SafariViewContoller must be used to visibly present information to users; the controller may not be hidden or obscured by other views or layers."
-
Return-1 about 4 yearsis this still relevant? what's the 2020 approach to this if any?
-
lqsdwtxkzlqafpvluq over 3 years@Return-1 did you find any solution?
-
ina over 2 yearsDoes this work for Chrome and Firefox and other mobile browsers?
-
ina over 2 yearsdoes this still apply in 2021