是否有機會通過單擊按鈕在iOS中顯示settings.app?它應該與iOS 5.1一起工作,所以「prefs:root ...」url是沒有選擇的。iOS中的訪問設置應用程序
你知道如何解決這個問題嗎?
是否有機會通過單擊按鈕在iOS中顯示settings.app?它應該與iOS 5.1一起工作,所以「prefs:root ...」url是沒有選擇的。iOS中的訪問設置應用程序
你知道如何解決這個問題嗎?
您無法在iOS 5.1上執行此操作。儘管蘋果很有可能故意刪除了這個能力(你會得到「請輸入一個有效的URL」,儘管Twitter仍然可以調用設置)。請參考:
iOS6的顯示選項,直接從「AlertView」(自動顯示),如果它檢測到,如果你想張貼到FB或Twitter無需這些帳戶設置打開設置應用程序。
我知道這個問題是關於5.1具體來說,但如果任何人有興趣:
由於iOS 8的,很可能採取從您的應用程序用戶直接進入設置應用。它們將與您的應用的特定「設置」頁面深入鏈接,但它們可以退出到頂級設置屏幕。
UPDATE:
感謝帕維爾的評論,我簡化了if語句,避免在iOS 7
UPDATE 2 EXC_BAD_ACCESS:如果您的部署目標設置爲
8.0或以上,Xcode 6.3會給你以下警告:
Comparison of address of 'UIApplicationOpenSettingsURLString' not equal to a null pointer is always true
這是因爲該功能從8.0開始可用,所以該指針永遠不會是NULL
。如果您的部署目標是8.0+,只需刪除下面的if語句。
if (&UIApplicationOpenSettingsURLString != NULL) {
NSURL *appSettings = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
[[UIApplication sharedApplication] openURL:appSettings];
}
在iOS 8的蘋果給我們的可能去應用程序設置直接從我們的應用程序
你可以使用這個代碼:
- (IBAction)openSettings:(id)sender {
BOOL canOpenSettings = (UIApplicationOpenSettingsURLString != NULL);
if (canOpenSettings) {
NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
[[UIApplication sharedApplication] openURL:url];
}
}
UIApplicationOpenSettingsURLString導致上iOS7一個EXC_BAD_ACCESS。更好地這樣: if(&UIApplicationOpenSettingsURLString) – Pavel 2014-09-06 14:15:10
謝謝@Pavel,我更新了我的代碼示例。 – djibouti33 2014-09-08 15:40:19