【问题标题】:How we know if our app uninstalled from iphone? [closed]我们如何知道我们的应用程序是否从 iPhone 上卸载? [关闭]
【发布时间】:2012-11-28 11:15:42
【问题描述】:

如果假设我们的应用从 iphone 上卸载,我想知道日期?

【问题讨论】:

    标签: iphone ios app-store


    【解决方案1】:

    正如其他人已经回答的那样 - 你不能。

    但是,如果您在应用中启用了推送通知,您可以通过使用 APN 反馈服务来查看哪些 apn 令牌已被删除(假设卸载),从而获得一个非常粗略的想法。此 SO 帖子中有更多信息:"Push notification" - feedback, uninstall application

    同样,这应该仅用于对您的卸载提供一个非常粗略的了解,因为用户可能出于任何原因选择退出推送通知或用户的令牌更改。

    【讨论】:

      【解决方案2】:

      有一些工具可以为您跟踪应用卸载情况。我觉得有用的是Uninstall tracking - MoEngage。他们为您提供了卸载您的应用程序的用户的完整列表。您也可以推断出是什么让用户卸载了您的应用程序。最好的部分是您可以通过MoEngage 仪表板向那些卸载了您的应用程序的用户发送电子邮件,以便获得反馈或让这些用户加入。

      【讨论】:

        【解决方案3】:

        你不能,没有办法判断应用程序是否被删除,Apple 也不会跟踪你和开发者可以访问的已卸载应用程序。

        【讨论】:

        • 我想你可以为它做一个更新,看看你得到了多少更新。这是获取任何数据的一种草率方式,但它仍然是一种方法。
        【解决方案4】:

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

        但是,您可以将首次下载日期保存在钥匙串或其他文件中,并在您想知道时将其取回。

        即使在删除应用程序后,所有钥匙串都存储在您的设备中。假设您删除了该应用并再次下载它,您的钥匙串将与第一个日期和时间保持不变。

        使用此钥匙串或包含应用程序列表的文件并进行比较以查找丢失的应用程序。

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

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

        【讨论】:

        • 这将帮助他使用其他应用程序 - 而不是真正想要了解的应用程序。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-10
        相关资源
        最近更新 更多