首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在中国市场上获得广告标识(如MIUI和AliOS)

如何在中国市场上获得广告标识(如MIUI和AliOS)
EN

Stack Overflow用户
提问于 2018-05-17 01:31:09
回答 2查看 1.1K关注 0票数 2

我现在有一些代码,可以在Google和Kindle设备上获取设备标识符(广告ID)。现在,我正在寻找针对开发人员的文档,这些文档将解释如何在其他安卓分叉(类似于亚马逊指令)上获得它,尤其是。小米和阿里巴巴的手机都是面向中国本土市场的。

我可以找到的一个资源是AppsFlyer,它显然是伪造的,因为它声明了"IMEI和Android -这两者都是精确属性所必需的“,而前者是自Android6(除非您想提示用户获得运行时权限) 除了其他的问题而后者是自奥利奥以来没有唯一的设备之后禁用的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-31 22:17:00

这不是我所希望的答案,但经过进一步研究,“中国的第一个也是最大的独立移动广告平台”-- 尤米 --确实有一个开源DeviceInfoUtils类,他们做AppsFlyer推荐的所有事情,即谷歌反对的一切。

具体来说,对于每一个请求,他们派telephonyManager.getDeviceId(); ( GSM手机上的IMEI)、telephonyManager.getSubscriberId() ( GSM手机上的IMSI)、MAC地址ANDROID_ID。同样,前两种情况都需要提示用户允许应用程序“打电话和管理电话”,这是非常令人毛骨悚然的(导致应用程序评等不佳和/或被拒绝权限)。后两种设备曾经起作用,但就奥利奥而言,它们不再像我在问题陈述中提到的那样是独一无二的。

更新:我现在下载了小米的米莫SDK (ads )。反编译显示了一个名为AdvertisingIdHelper的类,它只有两种方法,一种是检查设备是否安装了Google存储,另一种方法如下所示:

代码语言:javascript
复制
  private static d z(Context paramContext)
  {
    if (!y(paramContext)) {
      return null;
    }
    try {
      d localD = new d();
      Intent localIntent = new Intent("com.google.android.gms.ads.identifier.service.START");

      localIntent.setPackage("com.google.android.gms");
      if (paramContext.bindService(localIntent, localD, 1))
        return localD;
    } catch (SecurityException localSecurityException) {
      com.miui.zeus.a.a.b("stacktrace_tag", "stackerror:", localSecurityException);
      return null;
    }
    return null;
  }

它在整个SDK中扮演什么角色尚不清楚,但它显然是一种查询谷歌广告ID的方式,而不是小米的替代ID。如果这是所有情况下的,或者仅适用于中国以外(有谷歌游戏服务的)以外销售的设备,那也不清楚。

票数 1
EN

Stack Overflow用户

发布于 2018-06-07 23:12:51

是的,IMEI、Mac地址和Android ID正在中国的Android市场上使用。团结,Vungle和Ad暴民实际上是在追求Android市场。我们还听说其他广告网络专门为中国市场设计了一个定制的Android。

上一次在中国的Android市场上,我和一位中国开发商交谈是很久以前的事,所以我的信息可能已经过时了。我今晚再查一遍。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50382086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档