How to open application/itunes store by one link? - iphone

I have idea! E.g I send invite to application for my friend by email. I wanna have link in this email. When user will click it, he will open application, if it's installed, if it's not - show iTunes store. Any idea how to realize it?
Communicating with Other Apps
I begun to read this one, but didn't find solution yet.

I provide the method to check whether an app is installed on iphone.
If the URL scheme for your app is "myapp:", then
BOOL myAppInstalled = [[UIApplication sharedApplication] canOpenURL:[NSURL urlWithString:#"myapp:"]];

Related

Is there a way to start a hangout from another app with openURL: on the Google+ app for iPhone?

I'm building an app that needs to start a video conference from an iPhone.
They way i've implemented it is to first check if Skype is installed, if it is, i start video conferencing with skype.
If not, im checking if the Google+ app installed. And if it is i want to open that app with a Google+ username to start a hangout with the user.
an example would be:
[[UIApplication sharedApplication] openURL:"googleplus://username#gmail.com"]
Do you know if this is possible, and whats the correct identifier to call?
Currently, there is no way to start a Google+ Hangout with only an API call. However, there is a Google+ Hangouts Button that will start one.
https://developers.google.com/+/hangouts/button

Is It Possible To Add A "Rate This App" Link To My App?

Here's what I'm trying to do: I have a button on the settings page in my app - I want this to direct users to the review/rate page on the app store.
I know this is possible using [[UIApplication sharedApplication] openURL: .... ]; but my app is unreleased as of yet, so I don't have a URL to use.
Is it possible to implement this functionality for an unreleased app, or would I have to wait and include it as an update?
Thanks :)
The URL below is what you're looking for.
Just replace the 368754825 after id= with your app's Apple ID from iTunes Connect. This will take you right to the review page and won't have all the redirects like a normal link. Your App's Apple ID will not change between now and when it's on the store.
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=368754825&pageNumber=0&sortOrdering=1&type=Purple+Software&mt=8
Update:
I tested the link I posted more than a year ago. It still works. The idea is that it won't work until your app is live. I know there's some concern about putting this link in and shipping before actually verifying it works, but it's the best option for having a review link in a 1.0. You can alternatively submit a 1.0.1 update (with link) right after 1.0 (without link) is approved which means you're only missing out on about a week's worth of reviews.
This is newest format for creating review form links on iOS (only works for iOS devices) [tested on 4.2]
itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=412843648
Replace the final string of 9 numbers with your app's application ID from iTunes connect or your iTunes url. This link when launched from an iOS device takes you directly to the reviews
Yes you can add a link.
What I did for one of my apps that wasnt released yet was point to a certain URL, like: http://www.wrightscs.com/ios/myapp/review.html which just contained an http redirect.
Once my app was released and I had the iTunes Store link, I just updated the review.html page with my apps URL.
So now my app opens the review.html link, but in return gets redirected to my app in the app store.
First of all you have all the data about your app when creating it on iTunes connect. The thing you need here is the "Apple ID" (you can find it on iTunes connect under the app information).
After taken this number you can use it inside your app (even hard-coded) asking users to rate it or any other thing you want to do with it.
You can use this code for doing so, This method would open the rate page for your app on the App Store without opening safari on the way like other methods here (I've put all code which seems easier to understand sometimes):
static NSString *const iOSAppStoreURLFormat=#"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%u";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:iOSAppStoreURLFormat, (unsigned int)YOUR_applicationID]]];
Where YOUR_applicationID is the one you took from the app store (Apple ID).
I suggest you test that with a working app (active on the app store, even not your, You can use this one for example: 474785950) and change it afterwards. Pay attention to download the app you are rating to your device/account (You can always know the Apple ID of working apps from the link itself : http://itunes.apple.com/us/app/i-ruler/id474785950?ls=1&mt=8 it's the number just after the "id").
Moreover, For this topic I have some other things that should be considered:
1. Apple can reject your app if you are asking users to rate your app with 5 stars, Many developers does that and don't get rejected but I've been rejected couple of times just for that. Beware!
2. Asking users for just a rating mostly doesn't have a good effect, Great feedback comes only after the user used the app and really enjoyed that (users are really used to popups asking them to rate and just skip it). Also if user want to skip this process for now you want to try asking him later, And most importantly you want to ask the user to rate your app after an update (that is super important because rating is for each version!). To solve this case I suggest using iRate (or build something custom using that as starting point) which is very easy to integrate and it can ask for rating only after several days/opening times etc. and remembers to do that for each version. Can download it from: https://github.com/nicklockwood/iRate/tree/master/iRate
I think that the direct link to 'write the review' is undocumented. It is better to give link to the app and it will be up to user to write the review.
You can get the link to your app from your account in iTunes Connect.
You will get the link once you add a new application (not necessarily upload and make it live). That link will open your app regardless of the platform (iPhone, Mac, PC).
That link will not work un till the app is live.
This method worked for me!
Swift 2 version this code works for iOS 9:
let appId = "12345678"
let url = "itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=\(appId)"
UIApplication.sharedApplication().openURL(NSURL(string: url)!)

Linking the Developer Page at the appStore from an iPhone App

So I know how to open an app page on the appStore from within my iPhone app.
Is there a way to open my company's page? On iTunes on my mac I can do that, but using that URL in the iPhone I can't (or I'm not doing it right).
Thanks in advance.
This is a great article on this subject: http://bjango.com/articles/ituneslinks/
Quote from the article:
http://itunes.com/apps/developer — Search for all apps by developer
It’s also possible to link to all apps by one developer, but there’s a catch. On a Mac or a PC,
this will open iTunes and land on a developer’s page. On an iPhone or iPod touch it’ll do a bit of a
dance, opening MobileSafari, then iTunes, then the App Store app. Not ideal, a bit ugly and slow, but
it gets there in the end.
If you’d like to hide the redirections and speed up the process, Apple recommend using NSURLConnection.
this prevents it to do little dance it does normally
NSString *iTunesLink = #"itms-apps://itunes.com/apps/companyname/";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]];
I used such URL in iOS 8, 9:
itms-apps://itunes.apple.com/developer/tivogi/id507966848
where tivogi is the developer's account name and id507966848 is the your developer id.
You can find correct link for you in the any browser: just go to developer page, copy url, and change scheme to itms-apps
In IOS SDK 6 and above, use below link for open developer link from app
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:#"itms://itunes.apple.com/WebObjects/MZStore.woa/wa/viewArtist?artistId=524402507"]];
........

How Can I open another App from my app?

I have rediATM app installed on my iphone. rediATM app is free on itunes.
I want to open that app from my iphone app.
I am not able to find out the way to open it.
i am using the following code to open it but it takes me to the website.
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:#"http://itunes.apple.com/au/app/rediatm-finder/id358936470?mt=8"]];
Please help.
It does not work because you are opening the download link for itunes.
If you want to open another app on your iPhone with your own app, you must find out if this app provides a custom URL scheme. If they do, you could open the app using that custom URL, but otherwise not.
Here is an example how to create a custom URL scheme for your own app Launching Your iPhone App Via Custom URL Scheme and Apple's documentation: Communicating with Other Apps

How can I allow affiliate links to items in my iPhone app?

I'm making an iPhone app that has information about different video games. How can I implement a shopping API that will allow me to redirect users who choose to buy a game?
In other words, I'm looking for some kind of affiliate program API that works with the iPhone and lets me place item buy buttons that redirect the user to a product page.
Thanks.
Your intent is unclear. Are you trying to sell content for your application? If so, there is an established, Apple-approved way to do this:
http://developer.apple.com/iphone/library/documentation/NetworkingInternet/Conceptual/StoreKitGuide/AddingaStoretoYourApplication/AddingaStoretoYourApplication.html
If you're trying to sell something non-iPhone-related, you should redirect to a web page that actually handles the transaction. You can do this as a link that opens a page in Safari, or as an embedded UIWebView.
The first approach is simplest:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString: #"http://www.google.com"]];
The second a little more complicated:
http://developer.apple.com/iPhone/library/documentation/UIKit/Reference/UIWebView_Class/Reference/Reference.html
If your question is really asking how to build an entire product purchase API, then, not to sound sarcastic, I suggest this site as a useful starting point:
http://www.amazon.com/books/
what about pointing to the itunes page, e.g.
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=300136119&mt=8
if you replace "itunes" by "phobos", the app store will be opened when using the iphone to open the linkg, e.g.
http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=300136119&mt=8
Sorry, I may be misunderstanding what you are asking but I'm interpreting your question as you want to create an "app discovery" app where you recommend other iOS games in the App Store. If this is correct then you will want to use the iTunes / App Store Affiliate Program.
More info here -
http://www.apple.com/itunes/affiliates/resources/documentation/itunes-app-store-affiliate-program.html
The API you would then use is the "Search API." More info about that can be found here -
http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html