5

iOS にインストールされている「Routing Apps」のリストをプログラムで取得するにはどうすればよいですか?

これの背後にある理由は、iOS が山ほどのナビゲーション アプリを提供しており、そのリストを手動で維持したくないからです。

Apple は iOS 6 以降、アプリをルーティング アプリとして登録するための新しい機能を提供しています。 apple_ref/doc/uid/TP40009497-CH8-SW7

その後、通常のマップ アプリでルーティングを開始すると、次のように、ルーティングできるアプリのリストが表示されます。

ここに画像の説明を入力

リストを取得する方法が見つかりませんでした。もちろん、UIApplication で canOpenURL: を使用して特定のアプリがインストールされているかどうかを照会することもできますが、これは非常に面倒です。

有名な「どこへ?」アプリはそのような機能を提供します。

ヒントをいただければ幸いです。

4

2 に答える 2

0

iOS 6 のサンドボックス化により、自分のアドレス空間以外にはアクセスできないため、これを行う真の方法はありません。マップ アプリケーションがこれを行うことができるのは、Apple が、ユーザーがインストールしたアプリを含め、ユーザーの携帯電話に必要なすべてのデータにアクセスする権利を保持しているためです。

于 2013-03-28T21:40:50.773 に答える
0

Ok, I give it a try myself. Maybe the author of "Where to?" does maintain a list of routing apps and checks whether an app is installed or not by querying the url scheme of that app. For all apps that he finds he presents a "ROUTE" button. For all apps the he does not find, he presents an entry that links to the app store.

Of course this would not list all routing apps but it creates the impression that it does by having a long self-compiled list of routing apps.

EDIT: This is a screenshot from "Where to?":

Screenshot from

于 2013-03-29T00:34:21.970 に答える