How do I move to iPhone settings from an app - iphone

I have created an app,When a user clicks button for twitter sync,It will show an action sheet of twitter accounts in the phone settings
If there is no any accounts,it will show an alert view.How can i move to phone settings(specially creation of twitter accounts) from click on that alert OK button

Apple does not allow doing that via code. You need to popup a dialog and request user to do this manually. Not nice, I know...
It used to be possible, but Apple has now blocked it. More details at iOS Launching Settings -> Restrictions URL Scheme

Jumping to the settings app using a custom url scheme happened to work prior to iOS5.1, but was never officially supported. I've filed a DTS to get an official answer.
Thank you for your inquiry to Apple Worldwide Developer Technical
Support. I am responding to let you know that I have received your
request for technical assistance.
The URL scheme to launch Settings app or to a certain screen in
Settings has never been documented nor supported. Staring with iOS
5.1, Apple has removed support for linked-to system preferences in iOS 5.1, the same with iOS 6.0
If you want URL access support to Settings, please file a bug report
to "http://bugreporter.apple.com".

You can use this on iOS 5.0:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:#"prefs://"]];
But now moving to settings app is no more supported from application. you need to write custom message and alert user to go to setting and make particular thing enabled on/off.
Hope this info helps you..

Related

Safari App takes user to Settings App in iPhone in iOS 6. How can this be done in my iPhone app?

I had a requirement to redirect a user to the iOS Settings application from within my application. I know that in iOS 5, we could use the following URL scheme to achieve this: prefs:root=General.
And I could use the following line of code:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:#"prefs:root=General"]]
But Apple no longer supports this open URL scheme since the iOS 5.1 update.
But recently I have noticed that, in the Appstore app and Safari browser etc, Apple let this happen.Please refer to the attached image where Apple shows the alert. And on clicking the Settings button, user is taken to the Settings app. Any idea, how this is done. I believe if this can be done in App Store application, there should be some way that I can do it in my application also. Please comment if someone has a fix, or more idea on how this can be done.

Allow access to iPhone contact for my app in iOS 5.0

In my application I am accessing phone contact of iPhone so it will ask first time to allow access,but if user will click on "Don't allow" than application will not be able to access phone contact.
I know that in iOS 6.0 there is a option of privacy in setting where I can give permission to access phone contact to my application.
But I couldn't find this kind of tab or setting in iOS 5 or lower,Please inform me where can I give permission to my application to access phone contacts.
-Thanks in advance
In fact, this permission level is introduced in ios6. This one you can't find iOS5. And in iOS6 if user gave Don't Allow at first time, you can change that settings from the Settings App in the iOS.
Privacy Settings
To find your privacy settings, just tap the Settings app to launch it and then scroll down to Privacy. Tap it.
On the privacy screen, you'll see the elements of your iPhone that contain personal information that apps can gain access to.
(like Location Services,Contacts,Calendars and Reminders,Photos). From here you can change the access level.
Hope this helps.

How to launch iPhone settings app from my app?

How can I launch the iPhone settings app from my own app? For example, like the screen shot I got from twitter app below:
I turned off the network, and the twitter shows me a network error alert. But in the alert view, they implement a button "Settings". When I press the button, it brings the iPhone settings app up.
So I am curious on if there any methods can be called to do this?
Thanks in advance.
I don't believe so. This dialog is provided by Apple when data is not available for an app that has set Wifi as a requirement in its info plist.
Typically you would need to use custom URL schemes to access other Apple apps, but settings is not available and not part of this list.
Example:
http://wiki.akosma.com/IPhone_URL_Schemes
http://software-security.sans.org/blog/2010/11/08/insecure-handling-url-schemes-apples-ios/

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)!)

URL for sending a user to the app review page on device's app store

What's the URL to launch in order to bring the iTunes App Store to the front, and open it to show the Reviews page of an app?
I want to send my users to the "Write a Review" page.
Some other SO answers provided URLs like the one below, but it doesn't seem to work:
itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=12345678&pageNumber=0&sortOrdering=1
Any suggestions for a URL that'll work on iPhone and iPad?
Update: iOS 4.2 seems to have fixed this and links now open the App Store app directly rather than the review page.
This article Dissecting iTunes links explains everything.
Heading straight to a review form
It’s also possible to send someone
straight to the review form for an
app.
https://userpub.itunes.apple.com/WebObjects/MZUserPublishing.woa/wa/addUserReview?id=337064413&type=Purple+Software
Simply replace the ID with your app’s
ID to create a URL for your app.
On a desktop or laptop, this will take
you directly to the review form in
iTunes for the app or item. On an
iPhone or iPod touch, this will open
MobileSafari, then open iTunes or the
App Store app on the reviews page,
leaving the user only one tap away
from writing a review.
To find out an item’s ID, right (Mac &
PC) or control-click (Mac) on a link
to the item in iTunes and select Copy
Link. The result will look something
like this.
http://itunes.apple.com/au/album/dig-your-own-hole/id19605549
http://itunes.apple.com/au/app/consume-mobile-isp-packages/id337064413?mt=8
The ID is the number in the URL after
“id’.
It might be worth noting that this URL
was created using iTunes 8. I don't
think there’s a way to create review
links in iTunes 9, so maybe this URL
is being phased out. Use with caution.
Update: #mareMtl has provided an
alternative review link for apps.
Please note that it only works on
iPhone OS devices.
itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=337064413
I tried a bunch of different links, this is only one working for me on iPhone AND iPad consistently:
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?pageNumber=0&sortOrdering=1&type=Purple+Software&mt=8&id=YOUR_APP
Check out Appirater - http://arashpayan.com/blog/index.php/2009/09/07/presenting-appirater/
Every time the user launches your app, Appirater will see if they’ve used the app for 30 days and launched it at least 15 times. If they have, they’ll be asked to rate the app, and then be taken to your app’s review page in the App Store.
this works for me:
itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=584691809
Am using Appirater for Rating my App
These links in AppiRater
// for ios6 or earlier
NSString *templateReviewURL = #"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=APP_ID";
// for ios7
NSString *templateReviewURLiOS7 = #"itms-apps://itunes.apple.com/app/idAPP_ID";
These links works fine .
But takes me to "Details" page of the app .
But it should go to "Ratings and Reviews" page..
suggest me any idea
Thanks
iTunes has a link maker you can use to get the URL. Tested on my app. It works.
For Requesting for rate and review to user after iOS 10.3+
The SKStoreReviewController allows users to rate an app directly from within the app through a dialog box. The only downsite is that you can only request StoreKit to display the dialog, but can't be sure if it will.
import StoreKit
func requestToRate() {
SKStoreReviewController.requestReview()
}