可能重复:
What Country is the User Currently In?
How to programmatically detect in which country the android device is located currently without using GPS?
是否可以阻止在用户设备上下载的应用根据用户设备的国家/地区启动?如何准确确定用户的国家/地区?
我的应用程序将在基于WiFi和运营商(GSM / CDMA)的设备上提供。
我知道我可以将应用限制在Google Play上的某些地理位置,但没有任何内容阻止用户在美国下载应用,然后前往他们自己的国家并使用该应用。因此,我想尽快退出应用,因为我知道用户不在美国境内。我可以想到这些确定位置的机制,但不确定这些是否是万无一失的:
我有什么选择?
谢谢!
答案 0 :(得分:0)
如果您的应用需要连接,我会说IP地理位置。
答案 1 :(得分:0)
如果用户有权访问该设备,他/她总是可以伪造该位置。
您必须决定要花多少钱来阻止人们使用您的应用。您的努力与在美国境外使用您的应用程序的难度之间存在权衡。你永远不会排除所有人;)
因此,我建议实施一些简单的机制。
答案 2 :(得分:0)
首先,获取LocationManager。 然后,打电话 LocationManager.getLastKnown 然后,创建一个GeoCoder并调用 GeoCoder.getFromLocation。 这是一个单独的线程!!这个 会给你一份地址清单 对象。呼叫 Address.getCountryName 你明白了
这可能很有用
答案 3 :(得分:0)
您可以在启动应用时通过GPS获取位置。您可以检查国家/地区,如果不是美国,则用户无法打开该应用。我想你应该看看这个: http://developer.android.com/reference/android/location/Address.html