2012-11-28 123 views

回答

2

您不能,也无法确定应用程序是否被删除,Apple是否跟踪您和开发人员可以访问的已卸载的应用程序。

+0

我想你可以做一个更新,看看你有多少更新。这是获取任何数据的sl way方式,但它仍然是一种方法。 – Christoffer

1

没有直接的方法来获取此信息。

但是,您可以通过在钥匙串或其他文件中保存第一个下载日期,并且只要您想知道恢复它就可以了。

即使删除应用程序后,所有的钥匙链都存储在您的设备中。考虑你已经移除了应用程序并再次下载了它,你的钥匙链将会在第一次的日期和时间内完好无损。

使用此钥匙串或文件具有应用程序列表并比较以找到丢失的应用程序。

你可以使用一些调整来做到这一点。

阅读: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; 
} 
+0

这将帮助他为其他人的应用程序 - 而不是实际上想要了解的应用程序。 – Dejell

7

正如其他人已经回答了 - 你不能。但是,如果您的应用中启用了推送通知,则可以通过使用APN反馈服务查看哪些apn令牌已被删除(假定卸载),从而得到一个非常粗糙的想法。在这篇文章中有更多信息:"Push notification" - feedback, uninstall application

同样,这只能用来给你卸载一个非常粗略的想法,因为用户可能出于任何原因选择退出推送通知或用户令牌更改。

4

有几个工具可以跟踪应用程序的卸载。我觉得有用的是Uninstall tracking - MoEngage。他们为您提供卸载应用的完整用户列表。您还可以推断出用户卸载您的应用程序的原因。最好的部分是,您可以通过MoEngage仪表板将电子邮件发送给那些已卸载您的应用的用户,以获得反馈或让这些用户加入。

相关问题