编辑:根据要求添加了info.pslist和代码。
我有一个自定义文档类型,我已经注册了UTI和一个新的MIME类型。我基本上遵循了tutorial的步骤。我正在使用一个Codable对象,它只不过是一个带有自定义扩展和自定义图标的JSON文件。老实说,对我来说这看起来很酷。我正在做的应用程序是一个Grocery列表应用程序,很有意义,能够通过注释或iMessage共享它。
就像我在教程中最终确定的应用程序一样,它在邮件中打开,甚至在笔记中打开!但是iMessage无法识别扩展名并显示文件夹图标而不会打开它。
我的问题是如何告诉iMessage这个文件是由我的应用程序打开的。我需要iMessage扩展吗?我是iOS新手。 info.pslist:
现在代码:
func exportToUrl() -> URL? {
let contents = try? JSONEncoder().encode(shoppingList)
guard let path = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first else {
return nil
}
let saveUrl = path.appendingPathComponent("/list.grabgrocerieslist")
try? contents?.write(to: saveUrl, options: .atomic)
return saveUrl
}
@IBAction func sharedTapped(_ sender: UIBarButtonItem) {
guard let url = exportToUrl() else {
return
}
let activityController = UIActivityViewController(activityItems: ["Shopping List", url], applicationActivities: nil)
activityController.excludedActivityTypes = [.assignToContact, .saveToCameraRoll, .postToFacebook ]
activityController.popoverPresentationController?.barButtonItem = sender
self.present(activityController, animated: true, completion: nil)
}
非常感谢,