diff --git a/vendor/brave-ios/Ads/BATBraveAds.h b/vendor/brave-ios/Ads/BATBraveAds.h index 5e429df2ecb..9b8fa1bd167 100644 --- a/vendor/brave-ios/Ads/BATBraveAds.h +++ b/vendor/brave-ios/Ads/BATBraveAds.h @@ -41,8 +41,13 @@ NS_SWIFT_NAME(BraveAds) #pragma mark - Global +/// Whether or not a given region is supported. The region should be a standard +/// locale identifier, i.e. "en_US" + (BOOL)isSupportedRegion:(NSString *)region; +/// Whether or not the users current region (by `NSLocale`) is supported ++ (BOOL)isCurrentRegionSupported; + /// Whether or not to use staging servers. Defaults to false @property (nonatomic, class, getter=isDebug) BOOL debug; /// Whether or not to use production servers. Defaults to true diff --git a/vendor/brave-ios/Ads/BATBraveAds.mm b/vendor/brave-ios/Ads/BATBraveAds.mm index 51e8f3bc91a..c23a47b9c95 100644 --- a/vendor/brave-ios/Ads/BATBraveAds.mm +++ b/vendor/brave-ios/Ads/BATBraveAds.mm @@ -97,6 +97,11 @@ + (BOOL)isSupportedRegion:(NSString *)region return ads::Ads::IsSupportedRegion(std::string(region.UTF8String)); } ++ (BOOL)isCurrentRegionSupported +{ + return [self isSupportedRegion:[NSLocale currentLocale].localeIdentifier]; +} + BATClassAdsBridge(BOOL, isDebug, setDebug, _is_debug) BATClassAdsBridge(BOOL, isTesting, setTesting, _is_testing) BATClassAdsBridge(BOOL, isProduction, setProduction, _is_production) diff --git a/vendor/brave-ios/Ledger/BATBraveLedger.mm b/vendor/brave-ios/Ledger/BATBraveLedger.mm index 55cccf0307d..80ed9fe2a30 100644 --- a/vendor/brave-ios/Ledger/BATBraveLedger.mm +++ b/vendor/brave-ios/Ledger/BATBraveLedger.mm @@ -228,7 +228,7 @@ - (void)createWallet:(void (^)(NSError * _Nullable))completion strongSelf.enabled = YES; strongSelf.autoContributeEnabled = YES; - strongSelf.ads.enabled = YES; + strongSelf.ads.enabled = [BATBraveAds isCurrentRegionSupported]; [strongSelf startNotificationTimers]; strongSelf.initializingWallet = NO;