我的应用就是积分和赢钱,我需要做的就是让用户分享我的应用,然后给他一些积分。
问题是我不知道如何检测用户是否真正共享了应用程序
我正在使用以下代码:
func shareTapped(){
let text = "example"
let url = URL(string: "example.com")
let image = UIImage(named: "example_image")
let shareViewController = UIActivityViewController(activityItems: [text, image!, url!] ,applicationActivities: nil)
self.present(shareViewController, animated: true, completion: {() in
print("done")
})
}
共享方法运行良好,但我想知道在这种情况下是否可以调用任何委托(delegate)。
谢谢。
所以有两种情况用户可以取消分享。
一个是当 UIActivityViewController
出现时,UIActivityViewController
上有一个取消按钮,用户可以从中取消它,是的,您可以使用方法检测它
shareViewController.completionWithItemsHandler = { activity, completed, items, error in
}
在上述方法中,如果用户从 UIActivityViewController
取消按钮取消,则 completed
将为 false
。如果用户共享成功,它将返回 true
但这是第二种情况。
所以对于第二种情况,假设用户想要通过 watsapp 共享并单击 UIActivityViewController
中的 watsapp 图标,然后出现 watsapp 用户列表。
但是该屏幕上有一个取消按钮,用户可以从中取消共享,但您仍然会获得 completed
标志 true
因此您无法检测用户是否点击 watsapp 用户列表中的 cancel
按钮。
关于ios - 如何知道用户是否共享了我的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54841472/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |