如何在没有UDID的情况下跟踪iOS5上的下载

时间:2011-10-09 05:11:01

标签: iphone tracking ios5 udid

知道如何在没有UDID的情况下跟踪iOS应用下载(通过网络广告)的任何人?

我认为如果用户来自AppStore的网站就变得不可能了。但是一家名为WDA的公司似乎有可能实现这一目标。

http://www.lovefortech.com/2011/09/17/developers-track-ads-on-ios-and-android-devices-without-udid-with-apptracker/

http://wda.us/press/track-app-downloads-from-web-ads-without-udid.php

我有一些想法,但我不确定哪种方法最好。

1)Cookie:iOS应用无法访问Safari中的Cookie。 2)共享本地存储:是否有可以由Safari编写并由本机iOS应用程序读取的共享存储空间?

1 个答案:

答案 0 :(得分:8)

我正面临着类似的问题。以下是我提出的解决方案 - 我自己即将实施第二个解决方案。

第一个解决方案:

编辑:正如John Ballinger在下面的评论中指出的那样,作为UIDevice-with-UniqueIdentifier-for-iOS-5的作者gekitz将其许可证更改为麻省理工学院:)感谢John!

如果您只需要更换可靠的UDID,请尝试this,请注意其许可。您还可以在GitHub上搜索其他解决方案。

第二种解决方案:

更新此解决方案:由于太多开发人员告诉我它会违反HIG,我已经放弃了这个想法。

更加灵活,允许跟踪您的关联公司的安装活动(例如,为每个关联企业分配一个特定的“UDID”值,您可以在安装应用程序后稍后检查,并将“UDID”发送到您的服务器)。

SO用户:如果以下任何一项可能违反HIG,请告诉我们,实际上会导致申请被拒绝(特别是第5,6和7步)。

  1. 准备指向执行脚本的页面的链接 cookie的值是唯一的(例如,服务器生成的“UDID”)。
  2. 用户点按Mobile Safari中的链接。脚本存储cookie和 然后使用您的应用重定向到iTunes页面(例如 http://itunes.apple.com/us/app/skype/id304878510?mt=8&uo=4)。
  3. 启动App Store应用程序并显示包含您的应用程序的页面。
  4. 用户安装应用程序并启动它。
  5. 在第一次启动时:在启动后,您会显示一条警告,要求用户激活该应用程序(只需一个按钮即可,例如“激活”)。
    • 注意:当应用程序进入后台并恢复时,您需要确保警报仍然可见。此外,你需要
  6. 用户点击“激活”,您的应用程序退出/暂停和iOS 打开Safari并转到页面(例如,在您的应用中硬编码链接), 它读取cookie值(我们的“UDID”)并启动您的应用程序 使用URL方案传递“UDID”值。
    • 注意:您需要允许Safari打开该链接(可能需要一些额外的编码,不确定);
    • 我相信一些带有EULA的页面(例如)必须呈现给用户和一个允许继续的按钮,因此UX对用户来说是清楚的(即没有经验的应用程序离开打开野生动物园和第二次野外探险之后辞职并打开你的app)。
  7. 应用程序启动/恢复,存储“UDID”并解锁 应用程序允许显示主UI等。
  8. 现在,您可以在为您生成事件时使用存储的“UDID” 统计服务器等。
  9. 您可以稍后通过共享链接(在我的案例中分发在简报中的应用程序的URL方案链接)更新/删除您的“UDID”,这将打开您的应用并传递新值。
  10. 注意:您需要涵盖许多边缘情况,例如使用(或不使用)URL方案或推送通知等启动/恢复应用。

    P.S。出去一段时间,但稍后会检查你的反馈。谢谢!