4

我的应用程序中有一个特定场景,其中需要根据用户所在的位置或国家/地区显示一些内容(来自服务)。

我想出了两种/三种方法来实现这一点,但它们有一些缺点,如下所述。

1) 使用 NSLocale

NSLocale *locale = [NSLocale currentLocale]; NSString *countryCode = [locale objectForKey: NSLocaleCountryCode];
缺点:可由用户更改,可从设置->常规->国际->区域格式配置

2)使用核心位置

确定纬度和经度 (CLLocationManager & CLLocation)。从纬度和经度确定使用反向地理编码的国家。在我看来,这是实现我的目的的最准确方式。

缺点:如果用户不允许核心位置服务找不到经纬度,再次依赖用户。

这是我的几个问题

1)我想知道 APPLE 是否有可用的 API 可以帮助我了解购买我的应用程序的 Apple ID 以及该 Apple ID 所属的国家/地区?

2)考虑到Apple的安全环境,这可能是非常不可能的,但仍然......是否有可能通过Apple ID获得与信用卡(如果相关)相关联的国家/地区?

等待答复。

谢谢大家。

4

2 回答 2

2

这两个问题的答案都是否定的(有充分的理由)。Apple 不提供对设备所有者 Apple ID 的编程访问。当然没有任何与信用卡相关的信息。我会询问用户是否允许获取他们的位置,并解释为什么你的应用需要它(在 iOS 6 中,你可以提供请求位置的上下文)。

于 2012-10-01T15:13:11.333 回答
0

您可以使用 CTTelephonyNetworkInfo 访问有关设备 SIM 卡的数据。当然,这只有在用户有 SIM 卡的情况下才有效。而且它的价值值得怀疑,因为大多数人都被允许前往地球上的大多数地方。

于 2015-11-26T11:47:17.193 回答