Is it possible to pass params to an iOS app that can be evaluated immediately after installation? - ios

I want to create a different experience based on where they found the link that took them to the App Store. So when the user opens the app for the first time, I want to parse the params if there are any to display some message that continues the experience. Is this possible?

It's not possible, your app has no information about where the buyer came from when they found your app or when he bought it.

Related

Is there a URL forwarding to the App Store review creator in iOS 11?

In iOS 10, I was able to forward directly from my app to its App Store ratings page by using the following link:
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=app_id_here&pageNumber=0&sortOrdering=2&type=Purple+Software&mt=8
However, in iOS 11 with its all-new App Store where the review page doesn't exist any longer, this seems to be broken now.
Does anyone know an alternative url that opens up the review creator page directly? Or does Apple want us to stop using such links?
You need to add a name after the app parameter of your url (here I use 'itunes-u') :
https://itunes.apple.com/us/app/itunes-u/id\(appID)?ls=1&mt=8&action=write-review
Also note that the scheme seems to be working properly so you could instead call :
itms-apps://itunes.apple.com/us/app/itunes-u/id\(appID)?ls=1&mt=8&action=write-review
What you should do is implement the SKStore​Review​Controller for IOS 10.3 and higher.
It's super simple,
import StoreKit
SKStoreReviewController.requestReview()
It turns out that the system will automatically limit the display of the dialog to 3 times over a 365-day period, so there’s no logic required to check this.
There is however a recommendation that you show the prompts at ‘logical points’ when it is clear the user has made some sort of engagement within the app.
The guides also say you should allow a week or two between repeated displays of the prompt so users don’t feel like they’re being pestered(this will require some thoughtfulness and implementation on your part).
Jordan Holland
First, according to apple guidelines you shouldn't do this,
but you can just add to itunes link of your game &action=write-review and just open this link.

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.

Whats d best way to Tell user about ios App update?

If i am making an client/server ios App, and i release a new version of that app on App store + other stores on internet. Then, how to manage to tell user to update the app ???
I searched on this...and i got two ways
1. To have web service tht returns current version of app and inform user to update it.
2. To check the URL of app on itunes and it returns info from which we cn get version (doubtful on this)
Because, if there is such an URL, we will have to write the URL address in code before uploading...Pls guide on this.
Thanks...
Don't reinvent the wheel! What you are looking for is iVersion by nicklockwood.

Form to send iOS app via text message

Is there a service that allows me to put a form on my site that will send a link to my iOS app to a user?
User goes to my site
User inserts their cell phone number in a field
User receives a text message with the link to download my app
Does this make sense? Is there a better way? I've seen this before but can't remember where...
Currently do people really just take out their iPhones, open the app store, search for the app name to download it?
PS: Before posting I searched Google and this site but didn't find any answer.
Not quite what you're looking for, but probably a lot easier for you to do: You could create a QR-Code that contains a link to your app in the App Store. Then people can scan it with their phones (there are tons of popular apps that can do this), and when it opens the URL, the user will be redirected to the app store.
Just use the https://itunes.apple.com/us/app/[...] link from iTunesConnect for your app.

How to implement an iOS app personalized start page?

I'm developing my first iOS app and I'm facing a challenge.
I'd like to present new users a personalized screen when the app starts at the first time. Let me explain more.
The flow should be more or less like this:
My app isn't installed on the user's device.
Then the user gets an SMS on his iPhone with a short message and a link to install my app. The message is part of a conversation. Another user of this app had sent this message (through my backend) in order to join this user to the conversation.
This install URL doesn't necesarrily link directly to the itunes store, it can link to a conversations specific link such as myapp.com/conv/12345
The page at myapp.com/conv/* will detect the device and if it's an iPhone would redirect the user to the appstore to install myapp.
The user then installs myapp and launches it.
Now I'd like to present the same conversation 12345 to the user, before he even needs to login, register or what have you. That's the difficult part... I don't want the user to start an a blank page, I'd like to take it right to the conversation 12345 page.
I assume steps 1-5 are easy, but I can't think of a way to implement 6. I admit that I'm not familiar enough with the intrinsic of the appstore but as far as my understanding goes, "all apps are made equal", I mean the app itself when it gets installed it has no context, it doesn't know what "caused" it to be installed, it isn't aware of the click on myapp.com/conv/12345. Is this correct?
If there was a way for an app to know something like a referrer URL for the instllation or something along these lines that would be awesome.
If there was a way for app to query the device for its phone number
then I could make this work (b/c the SMS was sent to a specific phone
number, so I can track the most recent conversation sent to this
number on my backend). But since apps are sandboxed, accessing the phone
number is off limit.
Well, I suppose I could ask the user to type a unique code from the SMS when the
app starts, say 12345 and then I'd be able to display the
conversation to him. But that's problematic in two ways, first,
security - the user can join a conversation not meant
for him, and second, that's less than optimal
user experience, I want this to work like magic, I don't want to make
users memorize and type strings into my app the first time they
install, I'm sure they won't appreciate it... (they could
copy-paste, but still...)
Another option is asking the user to type his phone number. But that
again has a few drawbacks, one is that again it's less than optimal
UX, I'm asking a user to type his phone number to an app he doesn't
yet know or trust, second I'll need to verify (authenticate) the
phone number, I mean what prevents that user from typing a phone
number that doesn't belong to him?
If I had access to the SMSs then I could dig up that code, but I find
it hard to believe that apps get access to SMSs, it's just sounds
like another reasonable sandbox restriction. Of course I'm not
speaking of jailbroken devices.
BTW, if the user just went over to the appstore to install my app (and didn't go through a conversation SMS) that's fine, in this case I'll just present a normal register/login page. The interesting case is where the user was already part of the conversation when receiving the SMS and now I want him to (effortlessly) become part of the same conversation through my app.
To sum up - is there a trick to present "personalized" pages the first time an app is installed and launched that would get that user right into the context of the conversation sent to him over SMS without having to request additional input?
Thanks!
It's impossible to do. Your application is installed without the knowledge you need whatsoever. As you pointed out, it's a reasonable sandboxing restriction.
What you could do is a challenge-response based system, but it would be about as intrusive to the user as is registering/login in.
Ran, you can keep a flag in NSUserDefaults (equivalent to Android's SharedPreferences)
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/Reference/Reference.html

Resources