How I verify that user installed an iPhone app? - iphone

We provide advertising capabilities to iPhone app customers, where they can advertise apps to millions of users on social network, and stand out among large number of apps in app store.
Now, to prove the ROI, we also want to provide statistics of how many users actually installed the app using our advertisements on social network.
My question is:
How do I verify whether user installed an app (when user clicks on advertisement and we take user to App Store (on mobile device) or itunes page (on PC/Mac) )
Is there a way to integrate with developer's interface to get this information?
Thanks in advance.

This is a broad question and there are some simple solutions which may require some work. Apple provides you no feedback for when an app is installed. Assuming you are storing the click of the ad on a server you will need to match to that click with something you send up when the app is opened for the first time.
(if the ad is shown in a native app on the phone) You can send up a unique key when the click happens and also send that same unique key when the app opens for the first time and match them on the server. This key can be a hashed mac address or something you save to the UIPasteboard. This requires integration on the side of your clients app because they will need to send a http request to you when the app launches.
If the social network is web based then your best bet is to match on IP address which isn't perfect but can give you a high percentage of accuracy.
I guess I'm assuming you are hosting the ads though. If you are not then you will have to rely on what the ad networks give you and many of them can provide some form of install tracking.

Well, you can always look at that persons phone and check if your app is present there :P
Just kidding.
You have some ways to get information such as these.
If you have registration in your app, you can monitor the userInfo, along with the UDID.
You can setup some webservice calls on applicationDidFinishLaunching for the first time events (using NSUserDefaults key to save the first time info) and use that.
Check out FLURRY for data analytics in your app. This is an awesome service, and allows you to track your users and how they interact with your app. I would recommend this !

Most ad networks have conversion tracking capabilities, but once you click an ad from the web and go to iTunes, all hope is lost tracking a conversion.
I guess you'd be able to track a conversion if you require the user to provide information (like an email address) before directing them to the appstore then requiring them to input that same email once the app is opened.

Related

Paid App : need to uniquely ID the user

I am designing a paying app that will require users to create their own profile.
This app will of course be downloadable on each of the devices the user has.
This is the precise scenario I want to bypass :
the user downloads the App on an iPhone
he creates an account and start using the app that makes server
calls
he downloads the app on his iPad and with his login & password
retreives the data on the server, so far so good
Now, he lends his iPad to a friend (who didn't pay for the app).
The friend wants to use the App, and wants to create his own
account. Yet, I want to forbide this since he didn't pay for the
App.
So my problem is : I want to restrict the use of the app only to the user that paid for the App, not for his friend.
Of course, I cannot use the AppleID since there is no way to reach it from code.
I thought one moment that I could use iCloud like mentioned here but since the ( iOS unique user identifier )user can choose not to use iCloud, my problem is not solved ...
Is there an easy solution that I missed to solve that issue?
You friend will be using different apple id. You could use Restoring Transactions api of apple to get understand whether the user has purchased the app or not. This is possible for non-consumable in app purchase. Please do check the below link :
https://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/MakingaPurchase/MakingaPurchase.html#//apple_ref/doc/uid/TP40008267-CH3-SW1

Prefill user data just after download and first launch iPhone app

User downloads my iPhone app from the appStore link I provide from invite email. Is it possible to persist/cache the user-data say email Address and pre-fill when the app launched.
Thank you.
You can get all the data that Apple allows you to get, which is absolutely none - you can't get the user's email, you can't get his phone number, you can't get his UDID. No way to identify him. If you want anything from the user, he needs to enter it manually. If you think about it - it's actually a good thing. All your iphone information is completely secure and protected.
No, this can't be done. Your special link might take the user to the app store, but then that's it. The act of installing the app has nothing to do with your link anymore and no data can be passed to the freshly installed app.
Of course once the app is installed, if the user taps on a special link you provide, it could force your app to run and provide data to it.
Maybe you could provide a QR code the use can scan with your app the first time they run it. The QR code can contain the data you want. Of course the user may choose to not scan the code. Then again, the user can install your app without using your link to begin with.

Non-android, non-ios, non-web apps

We plan to manufacture a device that we want it to communicate with Facebook. If the user presses a button on the device, we want something to appear on users wall as a post. It means that the device will post on behalf of the user on Facebook.
As we see from the Facebook developer page, the types of applications are a Facebook app, a web app or a mobile app. The thing we have just explained does not belong to any of these categories. For instance, it is not a web app because the device does only support http connection but does not have a built-in web browser. It is not an Andorid or iOs app because the operating system in this device is none of these.
What would you suggest for this kind of application?
Thanks in advance.
Definitely look into http://developers.facebook.com/docs/authentication/devices/
Your other decent option would be to run an HTTP server on your device that users could connect to from a computer or phone to authenticate.
Once authorized, a simple HTTP request is all that it will take to share anything.
Edit: Just noticed that Facebook is no longer accepting applications for new partners with the auth device pattern. This is definitely what you want. You could try contacting them anyways.
Possible Answer = make it web app but dont forget the facebook policies about the user privacy issues. Your device can send a signal to your server and server can make the post i think it is possible (hmmm but to acquire access token again your clients have to login your webapp again every 60 days, there must be a better solution)
I am also working on similar problem
I have a prototype device for jogging wrist band and I am trying to post a wall story about number of steps in current day and the tempo on behalf of a user by just clicking on a button on the machine when it is connected to wlan or android phone in a wireless fashion.

Unique identifier for an iPhone app, NOT device

I want to avoid user registration in my app, and to identity my user by purchased app.
If someone purchase app on his iPhone, and with the same Apple ID download this app on other device, I want to use the same settings and content on this devices.
Is posible to use identifiers like AppleID (without entering in input field by user)?
I found similar question but UniqueIdentifier is unique only for physical device, not for user.
No. Apple does not give an app access to the user's Apple ID without the user's involvement. And for good reason.
I don't think you should outsmart the user. You can't assert that the user will want the same settings on another device. For instance I manage all my family iphones and download apps for them, all of them have their own accounts in apps and like different preferences. That's why it's the best to allow users to create accounts and sing in. This way user has a clear understanding what he/she is doing.

Is there any mechanism provided by Apple Store to make the user sign-up to my website before he/she can download the application?

I am creating an iphone application that requires the users to have an account at my website.
But if i have to distribute it through apple store, how should I make the users of this Iphone Application first create an account with my website. There could be a few options like :
1) Ask the user to create an account when he/she tries to run the application on iphone.
2) Provide a 'Sign-Up' page in the Iphone application itself.
My question is "Is there any mechanism provided by Apple Store to make the user sign-up to my website before he/she can download the application".
Kindly give in your suggestions for the same. Which would be the best approach for solving my problem.
Thanks,
LG
There's no way to do this through the app store.
Yes: your two options are to create a sign in / sign up screen with cocoa, or to display your login webpage with a NSWebview.
I'd recommend the native control route...
No, you can't do that through Apples App Store.
You could provide the user with aviability to register to your site when opening your app, throug, say a NSWebView.
There are many ways to solve this, just not the one you might like.