1

私はこれらのコマンドを試しました-

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"]];    
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General"]];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=Wallpaper"]];    
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=Safari"]];

これらのコードは、iOS 5.0でそれぞれ場所、一般、壁紙、Safariを開きますが、iOS5.1.1では何も機能しません。

4

2 に答える 2

5

iOS 5.1では、prefs:URLスキームが削除されました。もう使えません。

プライベートAPIの使用がオプションである場合は、次のことを試すことができます。

SBSLaunchApplicationWithIdentifier(CFSTR("com.apple.Preferences"), false);

次に、SpringBoardServicesフレームワークに対してリンクする必要があります。

于 2012-06-25T12:39:44.360 に答える
0

@ H2CO3の答えへの簡単な追加(コメントには収まりません)。Cydiaアプリでそのソリューションを使用して設定を開き、次のエントリを含むエンタイトルメントファイルと組み合わせました。

<key>com.apple.springboard.launchapplications</key>
<string>true</string>

これは、Xcodeがエンタイトルメントファイルをフォーマットした方法であると私は信じています。そして、これは私の2つのテストデバイスで正常に機能しました。ただし、いくつかのベータテスターは、設定アプリが開かれていないと述べました。エンタイトルメントファイルのいくつかの例では、キーの値を示すために異なる形式が使用されていることに気付きました。

<true/>

最初のエンタイトルメントエントリで動作しなかったデバイスでこれを試してみたところ、設定アプリが実際に開きました。

だから私は他の誰かが同様の問題を抱えている場合に備えてこれを投稿しています。(rootとしてアプリを実行することも解決策かもしれませんが、私はそれを試しませんでした。)

于 2013-09-12T12:15:23.957 に答える