我将用户发送到Microsoft Word应用以编辑文档。要做到这一点,我使用的网址方案已将info.plist
列入白名单" ms-word"。我所读到的所有问题和答案都是outdated/involve
解决方案,我曾多次尝试过。
在你说'#34;只使用UIDocumentInteractionController
"之前,该doc控制器不允许编辑同一个文件,并且在查看之后它无法将用户发送回原始应用程序文档。
这是我在Objective - C
中尝试的内容NSURL *ourURL = [NSURL URLWithString:[@"ms-word:ofe|u|https://www.acm.org/sigs/publications/pubform.doc" stringByAddingPercentEscapesUsingEncoding:(NSUTF8StringEncoding)]];
if([[UIApplication sharedApplication] canOpenURL:ourURL] ) {
[[UIApplication sharedApplication] openURL:ourURL];
}
我也试过这种方法的变体,例如删除编码和手动编码管道为%7C,因为这是编码后最终结果的样子。在我看到here的教程中使用了这种变体。
这是另一个tutorial我看到的那件事对我没用。
我还尝试通过按文件类型.doc/.docx
搜索在谷歌上找到的其他面向公众的单词文档,但都没有。
这是我在Swift中尝试过的内容
let ourURL = NSURL(string: ("ms-word:ofe|u|http://www.fcu.edu.tw/wSite/public/Attachment/f1355389313906.doc").stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())!)!
print(ourURL)
let ourApplication:UIApplication = UIApplication.sharedApplication()
if(ourApplication.canOpenURL(ourURL)) {
ourApplication.openURL(ourURL)
}
我再次尝试了多种变体,不同的编码,NSUTF8, stringByAddingPercentEscapesUsingAllowedCharacters(NSCharacters.URLQueryAllowedCharacterSet())
,以及不同的word文档网址...
我还尝试下载文档NSData
并将其本地写入手机中的文件目录,然后打开该文件,但URL
方案没有&#39} ; t支持本地目录(UIDocumentInteractionController
确实支持此功能,但同样,您无法编辑该副本,也无法将用户返回其应用程序)。
关于ms word的url方案有little documentation,我已经对这个主题进行了大量的研究,似乎有很多人仍然坚持同样的问题并且已经去了Microsoft forums以及其他没有解决方案的帮助论坛,因为这些论坛中的人员都没有这个特定领域的经验。
每次尝试都会导致:
1)Word已成功启动,但之后我收到此错误:"无法连接到URL
,请使用有效的URL
"
2)Word成功启动,但后来我收到同样的错误,然后在解除错误后我看到类似" word无法在url打开文件"
答案 0 :(得分:0)
我了解到我一直收到此错误,因为它只是不可能。
要使ms-word网址方案有效,该文档必须位于SharePoint或OneDrive中,并指明为here。
您可以在iOS设备上启用运行Office的用户从任何应用程序打开和编辑存储在SharePoint或OneDrive 中的文件,然后在完成后快速将其返回到原始应用程序编辑文件。