如果我们的应用程序从iPhone上卸载了,我想知道日期?
就像其他人已经回答的那样 - 你无法知道。
然而,如果你在你的应用中启用了推送通知,你可以使用APN反馈服务来获取一个非常粗略的想法,看看哪些APN令牌被删除了(假定卸载)。在这个SO帖子中有更多信息:“推送通知”- 反馈,卸载应用
同样,这只应该用于给出一个非常大概的想法,因为用户可能选择退出推送通知,或者用户的令牌由于某种原因发生变化。
很抱歉,您无法做到这一点。因为没有办法告诉应用程序是否被删除,苹果也不会追踪卸载的应用程序,供您作为开发人员访问。
没有直接获取此信息的方法。
但是,您可以通过将第一次下载日期保存在钥匙串或其他文件中,并在需要知道时检索它来完成。
所有钥匙串都存储在设备中,即使删除了应用程序。考虑到您删除了应用程序并再次下载它,您的钥匙串将保持不变,包括第一个日期和时间。
使用此钥匙串或文件,列出应用程序并进行比较以查找缺失的应用程序。
您可以使用一些小技巧来完成此操作。
阅读此文:http://iphonedevsdk.com/forum/iphone-sdk-development/37103-finding-out-what-apps-installed.html
如果您已越狱,可以按以下方式操作:
-(NSMutableArray *)desktopAppsFromDictionary:(NSDictionary *)dictionary{
NSMutableArray *desktopApps = [NSMutableArray array];
for (NSString *appKey in dictionary){
[desktopApps addObject:appKey];
}
return desktopApps;
}
-(NSArray *)installedApp{
BOOL isDir = NO;
if([[NSFileManager defaultManager] fileExistsAtPath: installedAppListPath isDirectory: &isDir] && !isDir)
{
NSMutableDictionary *cacheDict = [NSDictionary dictionaryWithContentsOfFile: installedAppListPath];
NSDictionary *system = [cacheDict objectForKey: @"System"];
NSMutableArray *installedApp = [NSMutableArray arrayWithArray:[self desktopAppsFromDictionary:system]];
NSDictionary *user = [cacheDict objectForKey: @"User"];
[installedApp addObjectsFromArray:[self desktopAppsFromDictionary:user]];
return installedApp;
}
return nil;
}