之前做了一个 app ,限免10天左右被下载了20多w,之后转入收费状态。
不过那个时候只有 40 个关卡,最近要对这个 app 做一个升级,包括画质提升、bug修正,关卡数目增多。
这里我面临一个问题,升级要兼顾新老用户。
我们采用的是这样一种策略,新用户的话只给免费玩20个关卡,其他的关卡以内购的方式提供。
如果升级版对新老用户都一视同仁的话,那么之前下载过这个 app 的老用户,在升级到新版本的app之后,
能玩的关卡数就从 40 个变成 20 个了,这样的话无疑就要捱老用户的骂。鉴于此,我们决定做一个判断,如果是以前下载过该 app 的用户,那我们就给他开 50个免费关卡,
在之前 40个关卡的基础上多提供 10个 给他玩。
如果是新用户的话,就只给玩 20 个关卡,这样的话就解决了惹毛老用户的问题。问题就是:
我们该怎么获知某个用户以前是否下载过这个app 呢?
苹果官方有提供相应的 api 么?
或者是,因为用户之前下载过,那么再下载我们的 app 就算是更新,有没有办法判断用户是新安装还是更新老版本呢?
急急急,高手救命~

解决方案 »

  1.   

    内购会记录是否已经购买,然后告诉你结果。
    多读读,查查,IAP 的相关资料。
    程序本身是记不住的。
      

  2.   

    除非你们自己做了后台tracking,记录了已经安装的设备,否则没办法苹果没有相关的api
      

  3.   

    记录设备的UUID,不能吧?
    以前貌似听到过不允许获取用户设备的 UUID,不然不准上线~
    不过我也不确定,只是有这么一说
      

  4.   


    苹果会有用户的购买时间这类的数据的,看看有没有可能查到购买时间的API。
      

  5.   

    用NSUserDefaults保存用户安装信息,只要用户不删app,升级后NSUserDefaults还会有保存,这样就可以知道用户有没有安装了
      

  6.   

    给自己顶一下啊,ios区貌似一点儿都不火爆啊