From f7e5fb9caa0ee0f75734dd048ed6b70b19992735 Mon Sep 17 00:00:00 2001 From: Mathieu Acthernoene Date: Fri, 7 Apr 2017 13:26:49 +0200 Subject: [PATCH] Avoid useless computations on iOS 9+ --- ios/RNI18n.m | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/ios/RNI18n.m b/ios/RNI18n.m index e3f909e..0a8e476 100644 --- a/ios/RNI18n.m +++ b/ios/RNI18n.m @@ -1,3 +1,4 @@ +#import #import "RNI18n.h" @implementation RNI18n @@ -6,15 +7,23 @@ RCT_EXPORT_MODULE(); - (NSDictionary *)constantsToExport { NSArray *preferredLanguages = [NSLocale preferredLanguages]; - NSMutableArray *languages = [NSMutableArray array]; - for (id language in preferredLanguages) { - [languages addObject:[language stringByReplacingOccurrencesOfString:@"_" withString:@"-"]]; + if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 9) { + return @{ + @"language": [preferredLanguages objectAtIndex:0], + @"languages": preferredLanguages + }; + } + + NSMutableArray *forcedLanguageTags = [NSMutableArray array]; + + for (id l in preferredLanguages) { + [forcedLanguageTags addObject:[l stringByReplacingOccurrencesOfString:@"_" withString:@"-"]]; } return @{ - @"language": [languages objectAtIndex:0], - @"languages": languages + @"language": [forcedLanguageTags objectAtIndex:0], + @"languages": forcedLanguageTags }; }