我想知道在我的设备中安装新应用程序并在我的应用程序中触发某些处理时是否有通知的方法。就像Android中的PACKAGE_ADDED BroadcastReceiver一样 感谢的
答案 0 :(得分:2)
Apple不提供此类信息。相反,您可以添加以下内容:
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
,您就知道该应用已安装。 Here is a partial list of URL Schemes用于某些常见应用或搜索http://handleopenurl.com/。如果你想检测自己的应用程序,你当然也可以制作自己的URL方案。
答案 1 :(得分:0)
没有。 Apple不会向您提供此数据。
但是,您可以做的是维护用户默认数据并在applicationDidFinishLaunchingWithOptions:
委托中操作。
答案 2 :(得分:0)
我使用了一个名为“GBVersionTracking
”的库来检测他第一次启动的时间。
导入此库,您可以向“GBVersionTracking
”类发送消息,如:
[GBVersionTracking isFirstLaunchEver];
[GBVersionTracking isFirstLaunchForVersion];
[GBVersionTracking isFirstLaunchForBuild];