【问题标题】:Determine Play Store Country确定 Play 商店国家/地区
【发布时间】:2014-09-22 10:18:22
【问题描述】:

我正在寻找是否有任何方法可以判断用户在其 Android 手机上拥有哪个国家/地区版本的 Play Store。

基本上,我想关闭某些国家/地区的应用内购买(出于征税原因)。我已经尝试过 Locale,但可以通过更改手机中的语言来更改。我认为唯一可以确定他们来自哪个国家/地区的方法是连接到 Play 商店的 Google 帐户。

任何帮助将不胜感激。谢谢。

【问题讨论】:

  • 当用户在其手机中注册了 google 帐户后,Google 将根据 IP 地址确定 Play 商店所在的国家/地区。 - 我们可以通过从“设置”>“帐户”中删除 google 帐户来检查这一点。 - 使用任何 VPN 更改 IP 地址,例如(Tunnel Bear) - 添加 google 帐户。 - Play 商店国家/地区将更改

标签: android google-play country


【解决方案1】:

我对此有一个想法,但我还没有尝试过(也许 smbd 可以提供一些关于使用这种方法的反馈)。

这个想法是使用getSkuDetails 来获取 price_currency_code 并禁用某些货币的计费。

【讨论】:

  • 我也认为这是最好的答案,也是我将为我的应用程序做的事情。在 iOS 版本上,我们使用的是 SKProduct.priceLocale - getSkuDetails 似乎是等价的。
  • 一些货币代码有多个国家,不好
【解决方案2】:

我不确定是否以编程方式检查他们的 google 帐户国家/地区,但如果您想定位特定区域,可以在 Google Play 开发者控制台中进行。

Geographic targetting

Google Play Instructions for determining country

即使它不是程序/代码答案,我希望这比在应用程序中解决问题更容易解决您的问题。

【讨论】:

  • 这就是我目前正在做的事情......并且必须支持两个应用程序才能做到这一点(一个用于美国,一个用于国际)。我正在寻找是否有可能只维持一个基线。不过还是谢谢
  • 那么您是想要本地化还是想要基于国家/地区的两种不同的薪酬结构?
  • 我只想在美国充电。
  • 所以不能根据位置覆盖其他货币的定价吗? support.google.com/googleplay/android-developer/answer/1169947
  • 您可以在那里更改价格...但您不能将它们设置为零。
【解决方案3】:

您无法通过编程方式判断用户在其 Android 手机上拥有哪个国家/地区版本的 Play 商店,因为 Google Play 会在内部确定用户所在的国家/地区。

这样做的唯一方法是通过 LocationServices 获取用户当前位置,在这种情况下,您需要添加位置权限。

该问题有一些解决方法,但并非在所有情况下都有效,例如获取可以提供国家/地区信息的用户职业信息。

【讨论】:

    【解决方案4】:

    没有办法做到这一点。相反,您可以接受类似问题的答案,

    What country is the phone currently connected to?

    只要设备是电话,就可以可靠地回答这个问题。必须支持平板电脑?还是没有运气...

    【讨论】:

      【解决方案5】:

      Google 将根据 IP 地址确定 Play 商店所在的国家/地区 当用户在其手机中注册了谷歌帐户时。

      • 我们可以通过从“设置”>“帐户”中删除 google 帐户来检查这一点。

      • 使用任何 VPN 更改 IP 地址,例如(Tunnel Bear)

      • 添加谷歌帐户。

      • Play 商店国家/地区将更改

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-25
        • 1970-01-01
        • 1970-01-01
        • 2012-07-09
        相关资源
        最近更新 更多