我想知道是否有一种方法可以在我的设备中安装新应用程序并在我的应用程序中触发一些处理时收到通知。像PACKAGE_ADDED BroadcastReceiver在android感谢
苹果不提供此类信息。相反,您可以添加以下内容:
if([[NSUserDefaults standardUserDefaults] objectForKey:@"firstRun"] == nil)
{
//This is a first run
[[NSUserDefaults standardUserDefaults] setObject:@"NotFirstRun" forKey:@"firstRun"];
}
至applicationDidFinishLaunchingWithOptions:
更新
如果你想检测另一个应用程序的安装,方法是不同的:你无法检测应用程序何时安装,但对于某些应用程序,你可以检测它们是否已安装。在启动自己的应用程序(或者使用后台获取过程)时,如果应用程序响应URL方案,并且您知道该方案,则可以查看应用程序是否已安装。看看
([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:customURL]])
如果此方法为给定的URL方案返回YES
,则您知道该应用程序已安装。以下是一些常见应用程序或搜索的URL方案的部分列表http://handleopenurl.com/.当然,如果你想检测自己的应用程序,你也可以制作自己的URL方案。
否。苹果不会给你这些数据。
然而,您可以做的是维护用户默认数据并在applicationDidFinishLaunchingWithOptions:
委托中进行操作。
我使用了一个名为"GBVersionTracking
"的库来检测他第一次发射的时间。
导入此库,您可以向类"GBVersionTracking
"发送消息,如:
[GBVersionTracking isFirstLaunchEver];
[GBVersionTracking isFirstLaunchForVersion];
[GBVersionTracking isFirstLaunchForBuild];
https://github.com/lmirosevic/GBVersionTracking