gpt4 book ai didi

iOS - 是美国的用户吗?

转载 作者:可可西里 更新时间:2023-11-01 03:26:45 25 4
gpt4 key购买 nike

有没有什么方法可以让我在不询问用户位置的情况下检测用户是否在美国?例如,当我在计算机上访问 Fandango 时,它仅根据我的 WiFi 就知道我在哪个县和州。

如果我有一台没有 GPS 的设备,也许是 iPod Touch,我想验证它在美国,并且它们已连接到 WiFi... 或者如果我有一部 iPhone 并且它连接了 3G 并且我想确保用户在美国,有没有一种方法我可以在没有小警报 View 的情况下检查该信息“__ 想使用您当前的位置”?我不需要确切的坐标,我只需要确认这些用户在美国(包括夏威夷和阿拉斯加)...地区?

最佳答案

好的,你如何使用 IP 做到这一点。

所以,geoplugin.net 有它惊人的 JSON api,它将 IP 默认为当前连接,所以你要做的就是向这个地址发出请求:

http://www.geoplugin.net/json.gp

太棒了!对我来说,它返回了这个数据:

geoPlugin({
"geoplugin_request":"201.6.226.233",
"geoplugin_status":200,
"geoplugin_city":null,
"geoplugin_region":"São Paulo",
"geoplugin_areaCode":0,
"geoplugin_dmaCode":0,
"geoplugin_countryCode":"BR",
"geoplugin_countryName":"Brazil",
"geoplugin_continentCode":"SA",
"geoplugin_latitude":-23.473301,
"geoplugin_longitude":-46.665798,
"geoplugin_regionCode":27,
"geoplugin_regionName":"São Paulo",
"geoplugin_currencyCode":"BRL",
"geoplugin_currencySymbol":"R$",
"geoplugin_currencyConverter":2.0198
})

那么,现在您要做的就是解析这个“JSON”。它实际上不是 JSON,因为它有这个 geoplugin( {data} ) 包装器。所以你可以懒惰地执行一些过滤,也许可以删除 NSSTring 的那些部分。

我看你很着急,所以我抽空给你写了一些代码。这是非常不标准的,因为我不知道您是否正在使用任何有帮助的 REST 框架,但这里是:

NSString *url = [NSString stringWithFormat:@"http://www.geoplugin.net/json.gp"];


NSString *locationData = [[NSString alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:url]]
encoding:NSUTF8StringEncoding]];

locationData = [locationData stringByReplacingOccurrencesOfString:@"geoPlugin(" withString:@""];
locationData = [locationData stringByReplacingOccurrencesOfString:@")" withString:@""];

//user some json parser here.
if([[[locationData JSONValue] valueForkey:@"geoplugin_countryCode"] isEqualToString:@"US"]){

//proceed.
}

关于iOS - 是美国的用户吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12205539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com