如何找出当用户第一次购买应用/安装它(可能没有UDID?)

我想知道用户什么时候第一次购买我的应用程序…到目前为止,我还没有find一个干净的方式和一个UDID似乎是唯一的select。

理想情况下,将有一个收据,我可以通过StoreKit获得,但到目前为止

我错过了什么? 有人有想法吗?


情况是,我有一个订阅和第一个问题(从你购买应用程序应该是免费的)。 如果我稍后重新安装,我应该总是得到原来的问题)

例如:我在10.2010购买应用程序我安装并运行它,从10.2010免费获得订阅问题(没有在应用程序内购买)现在我删除了应用程序我安装它1.2013,我只从10.2010免费订阅! 不是新的

你可以在钥匙串中存储一个标志。 钥匙串的内容保存在应用程序重新安装。

要获得应用程序的第一次安装时间,请检查第一次将应用程序二进制文件写入磁盘的时间:

if (flag_in_keychain_not_present()) { // installed for the first time set_flag_in_keychain(); struct stat st; stat([NSBundle mainBundle].executablePath.UTF8String, &st); time_t installed = st.st_mtime; } 

我还没有使用商店套件,但告诉我,如果我错了,

1)它需要一个点或另一个服务器

2)当我们使用它来“购买”(不是订阅或消费品),我们可以使用相同的iTunes帐户在所有设备上检索此购买

我的观点是,创build一个应用程序内购买免费项目,当它通过你的服务器时,第一次存储在数据库中,下一次它被称为与相同的帐户“启用”问题相应的第一次免费购买