2

Apple が iAd を提供しているのはごく少数の国に限られているようです。そのため、アプリが iAd をサポートしていない国で使用されている場合、iAd リクエストの送信を停止したいと考えています。では、これを行う最善の方法は何ですか?

最近、iAd ネットワークのメッセージ セクションを介して Apple から次のメッセージを受け取ったため、この質問をしています。

最近、カナダで iAd ネットワークが開始されました。広告は現在、米国、カナダ、英国、ドイツ、イタリア、スペイン、フランス、および日本のアプリ ストアのアプリに配信されています。これらの国でのみ広告を配信するようにアプリを設定してください。

4

2 に答える 2

8

(StackOverflow での最初の投稿です!)

私もこれを解決しようとしています。それを行うための完璧な方法はないようです。私のアプローチは、ユーザー ロケールの国を使用することです。(下記参照)

改善の提案はありますか?

// Indicate if the iAds framework is supported for this particular device
+ (bool) iAdsIsSupported
{
    // List of supported countries for iAds
    static NSSet* supportedCountries = nil;
    if (supportedCountries == nil)
    {
        supportedCountries = [[NSSet setWithObjects:
                           @"ES", // spain
                           @"US", // usa
                           @"UK", // united kingdom
                           @"CA", // canada
                           @"FR", // france
                           @"DE", // german
                           @"IT", // italy
                           @"JP", // japan
                           nil] retain];
    }

    // Check if the country is in the supported countries
    // http://stackoverflow.com/questions/3940615/find-current-country-from-iphone-device
    NSLocale* currentLocale = [NSLocale currentLocale];  // get the current locale.
    NSString* countryCode = [currentLocale objectForKey:NSLocaleCountryCode];

    return [supportedCountries containsObject:countryCode];
}
于 2012-10-23T06:33:19.877 に答える
1

iAd フレームワークはブラック ボックスです。ユースケースはドキュメントで定義されており、意図したとおりに使用するか、まったく使用しないことを意図しています。

私見iAd でこれを行う最善の方法はなく、悪い方法しかありません。

次のようにする必要があります。

  1. 時間の経過とともに変化する可能性があるため、現在サポートされている国をアプリ内で調べてください。
  2. 時間の経過とともに変化する可能性のあるユーザーの場所を把握します。

上記の両方のオプションには、悪い副作用があります。

  1. サポートされている iAd の国を確認するためのネットワーク リクエスト/解析は、iAd リクエストよりも多くの作業を必要とします。
  2. アプリ内からユーザーの位置情報を使用するには、 Apple の App Store レビュー ガイドラインを満たす必要があります

あなたもファウルするかもしれません:

4.4 位置データは、アプリがユーザーに提供する機能やサービスに直接関連する場合、または承認された広告の使用をサポートする場合にのみ使用できます

于 2012-10-02T05:45:38.803 に答える