Connecting the LITE Version to the FULL Version on App Store - iphone

OK, so I have the full version of my application up and running on the App-Store. Now I'm working on the lite version; I placed a button in it that supposes to direct the user to the App-Store to the application FULL Version page.
I'm using the [[UIApplication sharedApplication] openURL:[NSURL URLWithString:#"itms://itunes.com/apps/AppName"]] command.
several issues I would very much appreciate assistance with:
Is there a better command line for this action? currently it goes (automatically) through several pages till it reaches the relevant page on App-Store. Is there a command line that goes directly to the page I'm directing it to?
My application's name is combined out of 2 strings (for example "App Name"); currently, when I test it on a device, it doesn't find it while being directed to the App Store and instead it goes to a page where I have a "Search" button and if I click this button it does find the App on the App Store (the command line itself works perfectly; if I enter "Shazam" or any other familiar application's name instead of my AppName it goes to the right page). How should I write it in the command line? "App Name" or "App_Name"? maybe something else?
any assistance would be very much appreciated...

Using the itms:// protocol will ensure the link goes directly to the App Store app rather than through Mobile Safari (as you're correctly doing).
Using your app name and app ID will ensure the link goes directly to your app rather than searching for it, which is what happens when you use the path format you have there.
You want your url to look like this:
itms://itunes.apple.com/us/app/its-on-my-way/id334996949?mt=8
except using your app information, of course. You can easily get the properly formatted name and the app id by navigating to your app's page in iTunes and then right-click on you're app's icon where you'll get the option to "Copy Link". Replace the http with itms and you're set.
You can also get the appropriate app name and id using Apple's iTunes Link Maker.
If the app you're linking to isn't in the store yet you can get the id from iTunesConnect and, in most cases, figure out the name; mostly it's just using lowercase letters, stripping out punctuation, and replacing spaces with hyphens, though sometimes it can be a bit different. If you have an app with any unusual characters or are not sure how iTunes will change it, check other apps with similar punctuation/characters.
Edited to add
Obviously (from the URL) this link goes to the US App Store link; I'm not sure how it will work internationally.
Further edited to add
You could get the user's current country code via NSLocale like this:
NSLocale *currentLocale = [NSLocale currentLocale];
NSString *countryCode = [[currentLocale objectForKey:NSLocaleCountryCode] lowercaseString];
Then you could substitute the us part of the string I used above with this lowercase string, which would often send the user to the correct store (unless there was no store associated with their country code). Your app would have to be in that store, though, and I'm not sure how the name part works: it might be that iTunes wants the app as named in that locale or it might be that it's fine with the English version.

I have used the following - link changed to obscure customer ;-)
NSString *iTunesLink = #"http://itunes.apple.com/gb/app/wired-news-uk/id435728870?mt=8";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]];
All I do is grab the link via iTunes itself. Of course that means the app you wish to link to already has to exist in iTunes. However I understand it is possible to anticipate a link after creating the app in iTunesConnect - though I haven't had the need to do this yet.

Related

How to set FacebookDisplayName?

I recently hit a problem while trying to integrate FaceBook in an iOS app.
Fortunately I found the answer here:
Facebook SDK: app not registered as a URL Scheme
This is where I have a question:
In the post mentioned above the answer gives the following as the second step:
Create a key called FacebookDisplayName with a string value, and add the Display Name you configured in the App Dashboard.
How do I write this Display Name in case it is changing according to the user Language Settings?
I tried ${DisplayName} or ${CFBundleDisplayName} but I have no confidence I am using the right syntax and name.
In the InfoPlist.strings you can add
FacebookDisplayName = "AppName";
for all the languages you have implemented. This way it will be consistent to the facebook configured details regardless of what your app is really called on the device.

Can I render content dynamically within an iPhone app according to the referrer to my app in iTune appstore

I have an app that I need to render different content depending on which site refers the user to download my app. For example, website A has a link to let its users to download my app, I would like to display some products from website A when user first runs my app after installation. Is this doable? Thanks.
This is definitely doable, the easiest way I can think of would be to have the user enter some kind of promo code corresponding to the website they downloaded your app from. From there you can compare what they entered to an array of valid promo code strings and if it matches set a bool for that particular promo code to YES, then set up your UI to something like
if(website1bool == YES){Display customized UI};
Then add this bool to NSUserDefaults to remember the changes. It might end up being a lot of "ifs" but it's definitely doable!
EDIT: in defaults set up would be more or less...
if([myDefaults boolForKey#"website1Bool"] == YES){Configure};

Access TomTom navigation solution via URL scheme

I'm currently working on an iPhone Application which allows the user to navigate to POIs. Those POIs are defined via lat/lon, and the user should have the possibility to start his navigation solution with one click to navigate to this POI.
This works fine with Navigon, using URL scheme navigon://myapp|name||||||lat|lon
Now I know that there is an URL scheme named tomtomplus:// for the TomTom iPhone app, I'm only able to start tomtom, no other action is possile.
I tried tomtomhome://geo:action=navigateto&lat=mylat&long=mylon&name=myname - but did not work. Only tomtom app is starting.
Even when I try to go over the http://addto.tomtom.com API, tomtom does only start, no action in adding and POI or chance to navigate to.
Codesniplet:
NSString* launchurl = [NSString stringWithFormat:#"tomtomhome://geo:action=navigateto&lat=%.8f&long=%.8f&name=%#", myEntry.getLon, myEntry.getLat, myEntry.name];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[launchurl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
Any suggestions?
I used Tomtom to send me an email from the route planning option on my iPhone. In that email is a tomtomhome:geo link which I used.
To test I clicked on the link on my Mac in Safari, and obviously nothing happened. Then I saved the link as a bookmark, which immediately is synced to my iPhone using MobileMe. I clicked on the bookmark on my iPhone Safari browser and viola Tomtom opens with a map centred to the location in the link. It pops up with a balloon with the links name, and an right arrow allows me to choose first option "Navigate there"
The link generated is:
tomtomhome:geo:action=show&lat=26.123456&long=28.123456&name=linkname

Get itunes link for app before submitting

I read in another post that you can submit the app without the binary but I based on what I have seen this is no longer possible. It seems you cannot submit without the binary and the binary is submitted through the application loader. Is there any other known way to get the itunes/app store link to my app before I submit the binary?
The manual way:
Your should copy your "Apple ID" from iTunes connect and use this link:
http://itunes.apple.com/us/app/APPNAME/idXXXXXXXXX
Would open the US store ("APPNAME" is that app name and XXXXXXXXX is the "Apple ID". You can use more general method (Recommended):
http://itunes.apple.com/app/idXXXXXXXXX
and replace "XXXXXXXXX" with your "Apple ID" (from iTunes connect - after creating the app there).
Pay attention that those would open safari if you won't preprocess them, You could also use itms:// to open iTunes directly.
The easiest way to do this now is through iTunes Connect. Once you create an app there is a link to 'View in App Store'. Even if you haven't uploaded a binary yet you can click this link to get your App Store link.
The other answers work too but this generates your url for you. This is the URL it creates with my info removed (replace app-name and the numbers after /id with your own):
https://itunes.apple.com/us/app/app-name/id12345678?ls=1&mt=8
Once you create application in iTunes for submission under App Information tab click in View on App Store you will get app link.
Option 2: (In new update this is no longer available) you can create as below
https://itunes.apple.com/in/app/your-appname/id123456?mt=8
Note : Just replace app name and numbers after /id with your app-id in above link
Use this url example and just change your Apple ID at the end! Replace only the numbers!
https://itunes.apple.com/app/id111111111
You can find the value of your Appple ID by login into your App Store Connect and navigating to 'My Apps' under the 'App Information' -> 'General Information' -> 'Apple ID'
This url format works always and it is particularly helpful if you need the link before you publish your app
The standard URL is:
http://itunes.com/apps/yourlowercaseappname
As of today and for reference, I would say the best option is #"http://itunes.apple.com/app/%#/id%#?mt=8", inserting:
your application lowercase name,
your application ID.
In fact, this is essentially the link you can get for your application on your app's page in iTunes Connect (iTunes Connect > Manage Your Apps > Your App > View in App Store). Minus some parameters (which seems - between other unidentified things - to link to a precise country).
I thinks it's better than the itms://... one because this one redirects you to the iTunes Store on your device, which is not the App Store. You're then redirected, etc. The http://... link seems to be directly hooked to the App Store app.
I ended up using - itms://itunes.apple.com/app/id?mt=8
This seems to be what I was looking for.
Remember http://itunes.apple.com/app/id[Apple_ID] is gone. It will work for the old links and it should work fine for new ones too maybe, but to be safe use the new https://apps.apple.com/app/id[Apple_ID]
You can get application link before uploading your binary file on iTunes Connect.
You just need to upload your meta data using iTunes Connect. And after submitting these data you will get Apple ID. And by this ID you can get the URL for your application.
e.g. http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=appID
where appID="Your application ID when you submit the meta data"
Please check this. It is working here. And If you still have any problem then please let me know. I will help you out to solve the problem.
According to Apple's iTunes Connect documentation the View on App Store link is only available if at least one version of the app has had it's status set to Ready for Sale.
Having said that you can still see what the actual link will be, you just will not be able to load the page.
Best way to get app link is
login to itunes connect
Go to My Apps -> create app record if
you don't have any.
select your app -> go to App Information
section
At bottom of the page check additional information
section, there is a link called "View on App Store". Click on the
link and you will get exact URL for your app.Copy-Paste and Enjoy.
Apple has a documentation for creating easy-to-read app links. If your app name is specified, creating your links with this way is much more clear.
It seems the app id is now the Apple ID in the itunesconnect page. Go to App Information and scroll down until you see Apple ID. That is your app id.
http://itunes.apple.com/app/id[Apple_ID]
Go to https://itunesconnect.apple.com,
if not yet created, create a new App.
Open it and in the first screen (AppStore -> App information -> General) there is a field called "Apple ID" with the id number.
Copy and use it. Is this one.
If AdWords does not allow a link to iTunes, this will solve it...
If you use the link generated at the bottom of iTunesConnect, and you are selling internationally, you will find /us/ or /gb/ or /de/ etc that indicates the language of the relevant store. Adwords will not approve a link with the language indicated.
Why?
Because Adwords does not accept redirects and unmatched URLs. If the link is to the USA store, but the Adword test originates in Germany, then a redirect is detected. Of course, this behavior is correct because no matter what the link says the user will go to her local app store.
Solution: Edit the link from iTunes Connect. Strip out unneeded info. Simply match the display and final URL, disregarding any message about length in the display URL warning text.
URL copied from iTunes:
https://itunes.apple.com/us/app/this-is-my-app-name/id1111111111?ls=1&mt=8
Edited URL suitable for AdWords
DISPLAY URL
itunes.apple.com/app/id111111111
FINAL URL
http://itunes.apple.com/app/id111111111
notes:
- appstore.com is a redirect
- itunes.apple.com by itself is a redirect. Only in full as above does it go directly to your app page.
- When one URL - no matter how valid - redirects, then the result is mismatched URLs.
/gb
1- Go > https://appstoreconnect.apple.com/
2- My Apps > Select Your App
3- App Store > App Information > View On App Store
The best simple link is
http://itunes.apple.com/app/idXXXXXXXXX.
You can get id from your App Information in http://itunesconnect.apple.com.

A link to my iPhone apps that works correctly?

I'm trying to put a button in my iPhone app that will move the user to the appStore and list ALL of our apps.
This wastes time loading safari... then the music store... then the appStore:
itunes.com/apps/OurCompanyName
This tries to load Music Store... and never reaches the app store at all:
itunes.apple.com/us/artist/OurCompanyName/id27628833
This link shows many other company's apps along with ours:
ax.search.itunes.apple.com/WebObjects/MZSearch.woa/wa/search?media=software&submit=media&term=OurCompanyName
Apple's own "link maker", even with the correct "id#" doesn't work.
The link we cut/paste directly from our "more apps by this developer" in iTunes doesn't get
directly back to that app-list.
Isn't there a simple "direct to the appStore link" that will list all the apps by ONE company?
We do NOT want a clickable link for a browser on a PC. We need a link from a UIButton inside our app.
Well Its doable. Use the UIButton as a way to link to safari and give the url of the code that launches a page or search.
This for example works
[[UIApplication sharedApplication] openURL:[NSURL URLWithString: #"http://ax.search.itunes.apple.com/WebObjects/MZSearch.woa/wa/search?media=software&submit=media&term=Playdom"]];
What about developing one html page with all your apps or make it inside the app and use that.
Try refining your search or inside of your descriptions put something pretty unique in all of your apps
Say developed by CompanyiPhoneDev or whatever and search for that!
also I think there is a way to link to an iphone app store search
Tada!
Hope that helps!
Does the link on AppStore work for you?
For example, the Apple Bumper app is at: http://itunes.apple.com/hk/app/iphone-4-case-program/id383941000?mt=8
When viewing the app in iTunes, right-click on the "Apple Inc." text will give you an option to copy a link, which is: http://itunes.apple.com/hk/artist/apple-inc/id284417353
Another way : http://arstechnica.com/apple/news/2008/12/linking-to-the-stars-hacking-itunes-to-solicit-reviews.ars
has a lot of info like
Searching iTunes relies on the Search
web object application or "woa". This
is located at
http://phobos.apple.com/WebObjects/MZSearch.woa.
You can access this service via your
web browser and it will redirect to
iTunes, which will handle the request.
Here's what a typical search request
looks like: view plainprint?
http://phobos.apple.com/WebObjects/MZSearch.woa/wa/search?WOURLEncoding=ISO8859_1&lang=1&output=lm&country=US&media=software&term=ad+hoc+helper
http://phobos.apple.com/WebObjects/MZSearch.woa/wa/search?WOURLEncoding=ISO8859_1&lang=1&output=lm&country=US&media=software&term=ad+hoc+helper
If you paste this URL into Safari,
iTunes launches and displays the
search results for the phrase "ad hoc
helper."
You can perform the same search
directly from the iPhone. The
following code snippet shows you how
to escape the URL and use the
UIApplication openURL: method to
switch control from your application
to App Store, opening its search
window with the phrase you pass. I
have put the search phrase into a
separate string here so you can easily
generalize this operation.
(void) doSearch
{
NSString *search = #"ad hoc helper";
NSString *sstring = [NSString stringWithFormat:#"http://phobos.apple.com/WebObjects/MZSearch.woa/wa/search?WOURLEncoding=ISO8859_1&lang=1&output=lm&country=US&term=%#&media=software",
[search
stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
[[UIApplication sharedApplication] openURL: [NSURL
URLWithString:sstring]];
}
the solution is very simple it works like this:
NSString *iTunesLink = #" itms-apps://itunes.com/apps/CompanyName/id123456789";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]];