ユーザーがアプリケーションをダウンロードした国を見つけるための解決策があるかどうか疑問に思っています。
例: ユーザーがアプリを開くと、アプリ x が米国でダウンロードされた場合、アプリはダウンロードされた国を確認します。この例では、戻り値は「USA」になります。
これを解決する方法について考えている人はいますか?
iTunes ストアの国とユーザーが設定したロケールとの間に十分な相関関係がある場合があります。これはニーズによって異なります。これで十分でない場合、アプリがダウンロードされた実際のストアを知る方法はないと思います。
そのロケールを取得するには、次を使用できます。
NSString *localeIdentifier = [[NSLocale currentLocale] localeIdentifier];
これがあなたのニーズに十分であることを願っています。
アプリが「どの」App Store からダウンロードされたかを確認することはできません。
位置情報に基づいて何かを行う必要がある場合はCLLocation
、ユーザーの現在位置を取得するために を参照する必要があります。
また、英国の en_gb、デンマークの dk、カナダの en_ca など、ユーザーのデバイスの言語を確認することもできます。一部の国の人々が言語を国以外に設定している場合、これは完全にはカバーされませんが母国語、何もないよりはましです。
SKStoreFront
、iOS 13 SDK で導入された機能を果たしているようです。
迅速
if let storefront = SKPaymentQueue.default().storefront {
print(storefront.countryCode) // Returns an Alpha-3 country code (USA, GBR etc.)
}
オブジェクト C
[SKPaymentQueue defaultQueue].storefront.countryCode; // Returns an Alpha-3 country code (USA, GBR etc.)
SKStoreFront
アプリが購入を提供しない場合でも、StoreKit フレームワークをプロジェクトに追加することで、インスタンスにアクセスできるはずです。