检测用户来自欧洲或美国

时间:2012-05-23 18:05:07

标签: android location

有没有快速而稳定的方法来检测用户是来自美国,亚洲还是欧洲?

我想在我的应用中展示广告,所以我需要它。

由于

1 个答案:

答案 0 :(得分:8)

选项1

//Returns the ISO country code equivalent of the current 
//registered operator's MCC (Mobile Country Code).
  android.telephony.TelephonyManager.getNetworkCountryIso() 

选项2

//Returns a constant indicating the device phone type.
android.telephony.TelephonyManager.getPhoneType()

选项3

//Returns the name of this locale's country, localized to locale.
context.getResources().getConfiguration().locale.getDisplayCountry(Locale locale);
前两个,依靠网络或手机类型。第三个依赖于手机的配置,假设即使来自美国的某个人在欧洲,仍然会将手机设置为来自美国,其他方式应该只是被视为欧洲手机。

顺便说一句,美国是一个国家,欧洲和亚洲都是大陆,你可能在任何情况下都指美国或北美。

也就是说,假设您不希望GPS避开没有它的设备