130
119

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【iOS10】設定画面に遷移するURLスキームの設定について

Last updated at Posted at 2016-10-27

iOS10でアプリから設定画面に遷移するURLスキームの設定が少し変わったようなのでまとめました。
#設定画面への遷移方法(iOS9まで)

特定のアプリから、設定->Twitterへ画面遷移する際には、
呼び出したい設定画面(今回はTwitter)のURLスキームを下記のように設定します。

if let url = URL(string: "prefs:root=TWITTER") {
      UIApplication.shared.openURL(url)
}

iOS9までであれば上記の実装で「設定->Twitter」へ画面遷移することができるのですが、iOS10になり遷移ができなくなっていました。

#対応
URLを設定している”prefs:root=TWITTER”の先頭に「app-」または「App-」を付けることで指定した設定画面へ遷移が可能になります。

prefsの前に「app-」を追加
if let url = URL(string:"app-prefs:root=TWITTER") {
      if #available(iOS 10.0, *) {
            UIApplication.shared.open(url, options: [:], completionHandler: nil)
      } else {
            UIApplication.shared.openURL(url)
      }
}

###URLスキームサンプル

設定 スキーム
Wi-Fi App-Prefs:root=WIFI
Bluetooth App-Prefs:root=Bluetooth
モバイルデータ通信 App-Prefs:root=MOBILE_DATA_SETTINGS_ID
インターネット通信(テザリング) App-Prefs:root=INTERNET_TETHERING
キャリア App-Prefs:root=Carrier
通知 App-Prefs:root=NOTIFICATIONS_ID
一般 App-Prefs:root=General
一般 > 情報 App-Prefs:root=General&path=About
一般 > キーボード App-Prefs:root=General&path=Keyboard
壁紙 App-Prefs:root=Wallpaper
Siri App-Prefs:root=SIRI
プライバシー App-Prefs:root=Privacy
Safari App-Prefs:root=SAFARI
ミュージック App-Prefs:root=MUSIC
ミュージック > イコライザ App-Prefs:root=MUSIC&path=com.apple.Music:EQ
写真とカメラ App-Prefs:root=Photos
130
119
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
130
119

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?