繁体   English   中英

如何检查用户是否从另一个应用程序安装了我的应用程序? iOS(统一)

[英]How to check if a user installed my app from my another app? iOS (Unity)

我有2个应用程序,我想知道是否在我的应用程序1中安装了应用程序2(在我的应用程序2中检查了是否安装了我的应用程序1)。

我知道功能:
[[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:url]]

但是问题是我必须在Info.plist的LSApplicationQueriesSchemes中添加urls方案,但是也许明天我想开发第三个应用程序,并且我不想重建我的所有应用程序并将新的url方案包含在我的应用程序1中,并且2。

是否可以通过开发者ID或类似的方式检查用户是否拥有我的应用程序之一? 如果不重新发布应用程序的新版本,而只是在发布新应用程序时添加1个URL方案?

谢谢

您可以让所有应用程序使用相同的“应用程序组”(有关如何设置它的更多信息,请访问Google,这很容易),并且可以使用该组标识符创建NSUserDefaults套件。

在推出后,每个应用程序可以写Appname Installed关键就在NSUserDefaults浴室,并因为它是你的应用程序之间共享的一套,其他人可以阅读的价值,知道Appname安装。

这样做的缺点是您的应用程序无法知道何时将其卸载,因此,如果安装了该密钥,即使删除了该应用程序,密钥也会显示在该位置。

最好的方法是使用URL方案。 您的每个应用程序都应该注册一个可以处理的URL方案,然后从另一个应用程序中调用UIApplication上的canOpenURL(_ :)以测试您的应用程序是否已安装。

例:

如果您的myapp1://已注册URL方案myapp1:// ,则可以从其他应用程序中进行以下操作:

UIApplication.shared.canOpenURL(URL(string: "myapp1://")!)

请特别注意需要添加到Info.plist中的LSApplicationQueriesSchemes项。 这是工作所需的,我在上面链接的文档页面中对此进行了提及。

与应用程序组方法相反,这可以正确识别何时卸载应用程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM