iOS: How to get install referrer source - ios

I want to find out how the user installed the app using what source (attribution).
For Android, it's possible to get the referrer's URL, but I haven't found an obvious way for iOS. There are external services such as AppsFlyer (http://support.appsflyer.com/entries/69796693-Accessing-AppsFlyer-Attribution-Conversion-Data-from-the-SDK-Deferred-Deep-linking-) that let's you do this.
I noticed that starting iOS 8, developers could append the publisher id and the campaign id to the App Store URL for iTunes Connect Analytics (http://www.applift.com/blog/new-era-attribution-analytics.html). Is it possible to get the campaign id and the publisher id inside the app? I couldn't find any API changes or resources on this.
Any help would be appreciated. Thanks.

This has to be solved/implemented by Apple. If another company is coming out and saying they can solve this (Branch, etc.), they aren't being completely truthful.
The issue is that iTunes doesn't pass a referrer into the app, so without passing them the iOS IDFA on the click (redirect or out-of-bounds) every tracking method has to rely on Fingerprinting which drops off in attribution accuracy significantly past 24 hours.

This feature isn´t available in iTunesConnect as of yet (there´s no option for 'Analytics'). The only possibility I know is to sign up for the Affiliate Program (https://www.apple.com/itunes/affiliates/) and use the links generated there.
But maybe it will be available in iTC when iOS8 goes live...who knows!
And your second question: no, you can´t get the App Store URL via the iOS SDK. Apple suggests to copy it over from the AppStore in iTunes (via 'copy link'), e.g. https://itunes.apple.com/us/app/youtube/id544007664?mt=8. When you open this link via
[[UIApplication sharedApplication] openURL:]
iOS will automatically open the AppStore.

Related

How to use url scheme for application not installed in device

I have an application in store, which allow to display a list of items in a first view, details of an item in the second view.
I use the url schemes to access to the details of an item from an external source (Facebook for exemple)
My question: if the application was not installed in the device, is there any way that allow to download the application and open it at the right item (using url scheme)
Thank in advance
For iOS>9
if ([[UIApplication sharedApplication] openURL:SchemaURL] == false)
{
[[UIApplication sharedApplication] openURL:iTunesAppURL];
}
What you're describing is called Deferred Deep Linking (Deep Linking refers to using a link to open your app directly to a specific piece of content, and Deferred means that it works even if the app isn't installed first).
Unfortunately there's no native way to accomplish this on either iOS or Android. URL schemes don't work, because they always fail with an error if the app isn't installed. Apple's newer Universal Links in iOS 9+ get closer in that they at least don't trigger an error if the app isn't installed, but you'd still have to handle redirecting the user from your website to the App Store. You can't pass context through to the app after install with Universal Links, so you wouldn't be able to send the user to the correct item, and they actually aren't supported in a lot of places.
To make this work, you need a remote server to close the loop. You can build this yourself, but you really shouldn't for a lot of reasons, not the least of which being you have more important things to do. A free service like Branch.io (full disclosure: they're so awesome I work with them) or Firebase Dynamic Links can handle all of this for you.
First Query that URLScheme and know about the status of the application whether it is installed or not. If it is not installed give him/her a popup to install that application from app store. You can navigate user to app store link when clicks OK from alert.

IOS Deeplinking- Pass msg from email to your app

Existing user of the app will send email to other user.
Other user may have app installed or not installed on their device.
The email will contain some token. Now I want to pass that token to my app. I have read that by deep-linking, its possible. But how will I handle the case when other user have not installed my app yet in their IOS device.
Any help is appreciated.
What you're describing is called Deferred Deep Linking (Deep Linking refers to using a link to open your app, even directly to a specific piece of content, and Deferred means that it works even if the app isn't installed first).
Unfortunately there's no native way to accomplish this yet on either iOS or Android. URL schemes don't work, because they always fail if the app isn't installed. Apple's new Universal Links in iOS 9 get closer, but you'd still have to handle redirecting the user from your website to the App Store
A free service like Branch.io (full disclosure: they're so awesome I work with them) can handle all of this for you though. Here's the docs page covering exactly how to create email links like you described: https://docs.branch.io/pages/emails/email-partners-list/

iOS Conversion / installation Tracking

Objective: i want to fetch my custom parameter(referrer) from iTunes link upon installation of my application in device.
iTunes links look somethings like this:
https://itunes.apple.com/in/app/complete-gym-guide-lite/id550449574?mt=8
If i append my parameter say(&referrer=xyz)at the end and i open this url in ios safari browser then it will prompt to download the application.
Confusion: will app store send my parameter(referrer) to my application on launch so that i can fetch it in my application and use it.
In case of Android play store link look like this: http://play.google.com/store/apps/details?id=&referrer=guid%3D%guid%
As you can see referrer parameter at the end of url. Once app is installed in device then play store will send this parameter to app using INSTALL_REFERRER broadcast receiver. We can use this parameter.
What i tried OR Other people doing for conversion tracking: Other people are simply sending static data to their server at the first time opening of app and maintain a flag in NSDefault to make sure that app does not send same data again. I can also do the same as well as alternate ways suggested in below links but i want to do something with custom parameter.
I have already seen below links:
iOS - track which ad campaigns my installs are coming from
Tracking iOS installs from multiple marketing sources
Please help me out.
As #Aditya said, for now, Apple is not sending any referrer (or params) from iTunes to installation.
The only way you have it's to use a third party sdk to get your installations.
I have been working on a own sdk to get this but the way to get any info it's really hard and not really confident to use it. So endly we used some third party which are using many techniques to getting this (as fingerprint data, App2App methods, etc...)
I have tested appsflyer sdk and facebook sdk, they work as expected, use this or any else you prefer.
Hope this helps

A way to check if iOS app exists in App Store?

I'm working on episodic game for iOS and would like to have a menu with links to all the episodes. When the menu is shown, I want to check if the episodes are available in App Store or not, and depending on the answer enable a button to take the user to the game's App Store page.
Is there any way of checking the existence of an app in the App Store?
All the questions I found were about checking if the user had INSTALLED certain other app on their device, but all I want to know is if it exists in App Store.
I already tried canOpenURL but that returned true for any App Store url such as http://appstore.com/nononondsds
(Docs say "It does not guarantee that the full URL is valid.")
Thanks in advance!
You can use Apple API as follows:
https://itunes.apple.com/search?term=Skype
Where "term" would be the search criteria. This will give you a JSON encoded result.
For full documentation you can check Apple Search API
Hope this is what you're looking for.
Or you just need to your App's appstore URL to https://fnd.io/ and if it returns correct response mean your app is there on appstore
OK, first thing I'd do is listen to #AdamRichardson. It might be a better idea to release each episode as an in app purchase rather than a new app?
However, if you want to do your AppStore thing then I'd do it by having a server with data on it that you can inspect.
On the server have an API that returns a list of your Apps that are available on the app store.
This way you don't need to go to the app store to check you can just update your server.

Mobile Install Ad was disapproved by Facebook

I setup a Mobile App using the developer's panel and added all the correct information as mentioned in the tutorial video on the Facebook SDK page.
It's a native iOS app so I supplied the bundle ID and the App Store ID. I've installed the SDK and Facebook is registering installs whenever I run it on my device.
However once I tried to use the "Promote" feature to setup install ads it keeps getting rejected by Facebook on the grounds that the URL is bad. The URL works fine as I've tested it multiple times. The URL is generated by Facebook itself using the App ID.
I've tried submitting it again after changing the creative, but I'm assuming I've been blacklisted since it immediately is disapproved.
What can I do?
Is your app limited to a certain region or country?
My ad was also disapproved and this is what I got:
"The destination URL of this ad violates our Ad Guidelines or could not be reviewed. Please check the URL you have submitted to ensure that it is free of any spelling errors and that it complies with our Advertising Guidelines. Please note that all sites must be viewable and functioning properly, regardless of the viewer's location. Additionally, sites are prohibited from linking to proprietary file types (.pdf, .doc, etc,) initiating automatic downloads, or trapping a user's browser in any way (e.g., pop-ups of any kind).
"
In my case the only logical explanation would be the availability of the app, as it is only available in one country. I link directly to the app store so that should not be a problem...
Sorry for my reply, i know it's not very helpful, but there is so little info on the web about it. I need to do detective work in order to understand what is happening.
I had the exact same thing. I think Facebook changed a ton of stuff in their ads dashboard. I created a new ad yesterday and it was finally approved. Try again.

Resources