【问题标题】:How to get user details upon app installation and before opening the app?如何在应用安装和打开应用之前获取用户详细信息?
【发布时间】:2019-03-30 19:41:59
【问题描述】:

当我试图获取刚刚安装我的应用程序的用户详细信息时(用户尚未打开我的应用程序,刚刚下载)。由于 Google Play 控制台不提供统计信息,因此出现了这个问题。根据地区(仅限国家/语言/版本/运营商等)。 我正在尝试获取用户的州/邮政编码以了解下载来自哪个地区。

我尝试了一种解决方案,该解决方案仅在用户打开应用程序并在没有任何活动的情况下关闭时才有效,在这种情况下,我在初始屏幕上启动后台服务以获取他/她的当前地址并获取邮政编码/状态.

这是我目前的解决方案流程:

User Opens App --> [1] Splash Screen --> User Closes my app

[1] --> [2] Background service to get his/her location and zip code --> [3] sending to server.

我正在寻找可以获取用户的邮政编码/州或地区的答案,以获取我的内部应用下载统计信息(地区方面)。

【问题讨论】:

  • 我需要改进我的答案吗?
  • @Skizo-ozᴉʞS 我可以给你一个赞成票,因为我正在遵循你在我的问题中提到的相同解决方案,你的回答确实支持我知道这个问题的不可能性。跨度>
  • 但它解决了这个问题吗?因为每个问题已经回答和解决了一个问题,即使它是对另一个问题的支持,如果它有帮助,也必须标记为正确:D

标签: android broadcastreceiver android-service


【解决方案1】:

我认为除非您执行Broadcast receiver hack,否则您想要实现的目标是不可能的。从谷歌游戏控制台开发者那里你可以检查每个国家的下载

但我想你不能深入了解邮政编码,我也不认为它是否合法。

如果不打开应用程序就很难知道所有内容,因此如果您想知道此信息,您必须在Splash Activity 中处理此信息,以便您可以对这些信息做任何您想做的事情。

要获取邮政编码,您可以使用Geocoder APIgetFromLocaitonName 方法,这样您就可以得到List<Address>getPostalCode(),这将返回:

返回地址的邮政编码,例如“94110”,如果未知则返回null。

小例子是(检查可空性example with nullabilities

Geocoder geocoder = new Geocoder(this, Locale.getDefault());
List<Address> mList = geocoder.getFromLocation(lat, lon, 1);
String zipcode = mList.get(0).getPostalCode();

或者你可以看看这个Get zip code from latitude longitude

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-11
    • 1970-01-01
    • 2015-01-15
    • 2013-04-23
    • 1970-01-01
    • 1970-01-01
    • 2018-10-19
    • 2017-10-06
    相关资源
    最近更新 更多