我在获取与远程文件关联的应用程序时遇到麻烦,如何使用URL:“http://servername/folder/file.png”。
我使用的代码是:
...
NSURL *url = [NSURL fileURLWithPath:@"http://servername/folder/file.png"];
NSArray *apps = (NSArray *)LSCopyApplicationURLsForURL((CFURLRef) url,kLSRolesAll);
...
我也尝试使用URLWithString:
但结果是一样的。
对此有什么正确的解决方法?
约书亚重播后编辑:
对不起可能是不好的编辑。问题是LSCopyApplicationURLsForURL
调用返回nil。
答案 0 :(得分:0)
首先,-fileURLWithPath:
需要一个类似@"/Users/me/Desktop/MyFile.png"
的文件系统路径。
其次,你没有说出“相同”结果是什么以及它们有什么问题,所以很难告诉你问题是什么。
文档说这个:
如果项目URL的方案是文件 (指定文件或 目录),选择合适 应用程序是基于 指定项目的文件扩展名, 文件类型和创建者签名, 以及由...指定的角色 inRolesMask参数;否则,它 基于URL方案(例如 http,ftp或mailto)。
那么你得到了什么,你期望得到什么?