0

"http://servername/folder/file.png" のような URL を持つリモート ファイルに関連付けられたアプリケーションを取得する際に問題が発生します。

私が使用するコードは次のとおりです。

...
NSURL *url = [NSURL fileURLWithPath:@"http://servername/folder/file.png"];
NSArray *apps = (NSArray *)LSCopyApplicationURLsForURL((CFURLRef) url,kLSRolesAll);
...

私も使用してみURLWithString:ましたが、結果は同じです。これに対する正しいアプローチは何ですか?

ジョシュアのリプレイ後に編集:

悪い編集で申し訳ありません。問題は、LSCopyApplicationURLsForURL呼び出しが nil を返すことです。

4

1 に答える 1

0

まず、-fileURLWithPath:のようなファイル システム パスが必要@"/Users/me/Desktop/MyFile.png"です。

第 2 に、「同じ」結果とは何か、何が問題なのかを述べていないため、何が問題なのかを伝えるのは困難です。

ドキュメントには次のように書かれています。

アイテムの URL のスキームがファイル (ファイルまたはディレクトリのいずれかを指定) の場合、適切なアプリケーションの選択は、指定されたアイテムのファイル名拡張子、ファイルの種類、および作成者の署名と、inRolesMask パラメーターで指定された役割に基づいて行われます。それ以外の場合は、URL スキーム (http、ftp、mailto など) に基づいています。

それで、あなたは何を得て、何を得ることを期待していますか?

于 2010-11-15T16:03:40.677 に答える