使用getTemplate
启动外部应用程序时,我们可以检测到UIActivityViewController
中使用了哪个应用程序吗?
在Apple's documentation中,提到了属性completionHandler
,但似乎仅用于检测“内置活动”。我如何检测是否,例如。启动了WhatsApp Messenger?
答案 0 :(得分:5)
设置UIActivityViewController
时,请使用completionWithItemsHandler
设置一个完成闭包,当用户进行选择时会调用该闭包。
此完成块具有四个参数:(可选的)选定活动,一个完成指示符,一个可选的返回项目数组和一个错误。
所选活动的类型为UIActivity.ActivityType
。其rawValue
是代表活动的String
。如果活动类型不是所提供的常量之一,请通过运行一些测试以查看其对给定活动(如WhatsApp)的值,将其rawValue
与您确定的字符串进行比较。