[英]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.