12

正確な位置データは必要ありません。ユーザーに「このアプリはあなたの位置を特定しようとしています」という警告を表示したくありません。ネットワークまたはWi-Fi経由でインターネットに接続していると仮定して、ユーザーの国を特定する必要があります。

これを行う最善の方法は何ですか?彼らのIPを使用する方法はありますか?

これは、キャリアがある場合にのみ機能します。

CTTelephonyNetworkInfo *netInfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [netInfo subscriberCellularProvider];
NSString *mcc = [carrier mobileCountryCode];

またNSLocale、ユーザーがデバイス設定で変更できるという点で信頼性がありません。同じ理由で、デバイスの言語設定を使用できません。物理的な場所に基づいて国が必要です。

4

2 に答える 2

1

このURLを参照してください。iPhoneでの最初の実行時にwhatsappが国コードを知る方法..この質問と私が指定したURLの質問がうまくいくことを願っています

于 2014-10-20T06:14:24.297 に答える
1

https://en.wikipedia.org/wiki/IP_address_locationで説明されているように、ユーザーの IP アドレスを取得し、地理位置情報データベースを使用して、それに基づいて位置を推測できます。地域だけに関心がある場合は、地域のインターネット レジストリ ( https://en.wikipedia.org/wiki/Regional_Internet_registry ) の Web サイトで、特定の地域のすべての IP アドレスを管理しているため、役立つデータが見つかる可能性があります。

于 2013-07-11T00:17:35.163 に答える