Firebase配置如何获取设备的区域/国家/地区?

问题描述 投票:0回答:2

我有一个问题,我需要知道firebase配置如何获取用户的区域/国家,是基于谷歌帐户的区域,还是什么?它是如何在没有任何许可的情况下获得该地区的?

java android firebase
2个回答
0
投票

当我尝试获取设备区域时,我遇到了问题。以下是获取此区域的多种方法,您可以通过以下方式使用:

  1. 使用“ro.carrier”获取cid;
  2. 使用Locale.getDefault()。getCountry()获取简短的国家名称;
  3. 使用(TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE)获取SIM卡的区域。

你可以使用所有这些并给予优先权。

对于Firebase,我在下面遇到了一个简短的代码,也许这可以帮到你:

 String feature_url = "feature_config";
    Log.d(TAG, "init, feature_url: " + feature_url);
    mRootReference = FirebaseDatabase.getInstance().getReference();
    mRootReference.child(feature_url).child(BuildConfiguration.DEBUG ? "debug" : "release")
            .addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    Log.d(TAG, "onDataChange");
                    FeatureConfig.getInstance().updateConfig(dataSnapshot);
                }

                @Override
                public void onCancelled(DatabaseError databaseError) {
                    Log.d(TAG, "onCancelled");
                }
            });

这是一种用于获取DataSnapShot然后从中获取区域信息的方法。

因为我在这里尝试了很多代码。

希望能帮助到你。


-2
投票

这可能会给你一些想法!

本机实现严格要求您拥有自己的FCM密钥。

虽然设置获取FCM密钥用户应提供区域/国家/地区

如何设置自己的FCM密钥:

1)使用您的Google帐户登录

打开t know whether this could help you, I don并使用您的Google帐户登录(如果该页面要求您这样做)。

2)单击“创建新项目”

在出现的下一个框中,单击“创建新项目”。

3)撰写项目名称并选择您所在的国家/地区

现在,系统会提示您使用如下所示的模态框。在项目名称下,写下您想要的名称及其下方,选择您的国家/地区。完成此操作后,单击“创建项目”。

https://console.firebase.google.com/

详情请浏览enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.