diff --git a/HD wallpaper.xcodeproj/project.pbxproj b/HD wallpaper.xcodeproj/project.pbxproj index 726db13..a916cf3 100644 --- a/HD wallpaper.xcodeproj/project.pbxproj +++ b/HD wallpaper.xcodeproj/project.pbxproj @@ -27,6 +27,8 @@ 0004D8862C354B7700B3E467 /* AppLovinSDK.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0004D8602C352F4700B3E467 /* AppLovinSDK.xcframework */; }; 0004D8872C354B7700B3E467 /* AppLovinSDK.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 0004D8602C352F4700B3E467 /* AppLovinSDK.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 0004D88B2C355DF100B3E467 /* WPUserPravcyVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 0004D88A2C355DF100B3E467 /* WPUserPravcyVC.m */; }; + 0004D8932C363D5200B3E467 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0004D8922C363D5200B3E467 /* Localizable.strings */; }; + 0004D8972C363D5800B3E467 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0004D8962C363D5800B3E467 /* InfoPlist.strings */; }; 0126BA97CEBE3D5058AF2043 /* Pods_HD_wallpaper.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 18B9E38A7CF086ABC9920714 /* Pods_HD_wallpaper.framework */; }; 057AF7952BF1E86F00078C98 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 057AF7942BF1E86F00078C98 /* AppDelegate.m */; }; 057AF7A02BF1E87100078C98 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 057AF79F2BF1E87100078C98 /* Assets.xcassets */; }; @@ -78,6 +80,11 @@ 0004D8842C3534AC00B3E467 /* WallPapaerADManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WallPapaerADManager.m; sourceTree = ""; }; 0004D8892C355DF100B3E467 /* WPUserPravcyVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WPUserPravcyVC.h; sourceTree = ""; }; 0004D88A2C355DF100B3E467 /* WPUserPravcyVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WPUserPravcyVC.m; sourceTree = ""; }; + 0004D8902C363D4B00B3E467 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/LaunchScreen.strings"; sourceTree = ""; }; + 0004D8912C363D5200B3E467 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; + 0004D8942C363D5400B3E467 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.strings"; sourceTree = ""; }; + 0004D8952C363D5800B3E467 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + 0004D8982C363D5900B3E467 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/InfoPlist.strings"; sourceTree = ""; }; 041A9EAF08B4BEE8FF03DD23 /* Pods-HD wallpaper.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HD wallpaper.debug.xcconfig"; path = "Target Support Files/Pods-HD wallpaper/Pods-HD wallpaper.debug.xcconfig"; sourceTree = ""; }; 057AF7902BF1E86F00078C98 /* HD wallpaper.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "HD wallpaper.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 057AF7932BF1E86F00078C98 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; @@ -196,6 +203,8 @@ 057AF7C12BF20CF700078C98 /* WPDetailViewController.h */, 057AF7C22BF20CF700078C98 /* WPDetailViewController.m */, 057AF79F2BF1E87100078C98 /* Assets.xcassets */, + 0004D8922C363D5200B3E467 /* Localizable.strings */, + 0004D8962C363D5800B3E467 /* InfoPlist.strings */, 057AF7A12BF1E87100078C98 /* LaunchScreen.storyboard */, 057AF7A42BF1E87100078C98 /* Info.plist */, 057AF7A52BF1E87100078C98 /* main.m */, @@ -280,6 +289,7 @@ knownRegions = ( en, Base, + "zh-Hans", ); mainGroup = 057AF7872BF1E86F00078C98; productRefGroup = 057AF7912BF1E86F00078C98 /* Products */; @@ -297,6 +307,8 @@ buildActionMask = 2147483647; files = ( 057AF7A32BF1E87100078C98 /* LaunchScreen.storyboard in Resources */, + 0004D8972C363D5800B3E467 /* InfoPlist.strings in Resources */, + 0004D8932C363D5200B3E467 /* Localizable.strings in Resources */, 057AF7A02BF1E87100078C98 /* Assets.xcassets in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -351,10 +363,29 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXVariantGroup section */ + 0004D8922C363D5200B3E467 /* Localizable.strings */ = { + isa = PBXVariantGroup; + children = ( + 0004D8912C363D5200B3E467 /* en */, + 0004D8942C363D5400B3E467 /* zh-Hans */, + ); + name = Localizable.strings; + sourceTree = ""; + }; + 0004D8962C363D5800B3E467 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 0004D8952C363D5800B3E467 /* en */, + 0004D8982C363D5900B3E467 /* zh-Hans */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; 057AF7A12BF1E87100078C98 /* LaunchScreen.storyboard */ = { isa = PBXVariantGroup; children = ( 057AF7A22BF1E87100078C98 /* Base */, + 0004D8902C363D4B00B3E467 /* zh-Hans */, ); name = LaunchScreen.storyboard; sourceTree = ""; @@ -367,6 +398,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; @@ -428,6 +460,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; @@ -508,8 +541,12 @@ PRODUCT_BUNDLE_IDENTIFIER = com.trendwallpaper.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; SWIFT_EMIT_LOC_STRINGS = YES; - TARGETED_DEVICE_FAMILY = "1,2"; + TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; @@ -543,8 +580,12 @@ PRODUCT_BUNDLE_IDENTIFIER = com.trendwallpaper.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; SWIFT_EMIT_LOC_STRINGS = YES; - TARGETED_DEVICE_FAMILY = "1,2"; + TARGETED_DEVICE_FAMILY = 1; }; name = Release; }; diff --git a/HD wallpaper.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate b/HD wallpaper.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate index 8bea061..7ec2c65 100644 Binary files a/HD wallpaper.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate and b/HD wallpaper.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/HD wallpaper/WPForMyViewController.m b/HD wallpaper/WPForMyViewController.m index 6001f44..69ed502 100644 --- a/HD wallpaper/WPForMyViewController.m +++ b/HD wallpaper/WPForMyViewController.m @@ -38,7 +38,7 @@ UIButton *pracy_btn = [UIButton new]; [self.view addSubview:pracy_btn]; [pracy_btn addTarget:self action:@selector(showUserPravcy) forControlEvents:UIControlEventTouchUpInside]; - [pracy_btn setTitle:@"用户隐私" forState:UIControlStateNormal]; + [pracy_btn setTitle:@"隐私政策" forState:UIControlStateNormal]; [pracy_btn setTitleColor:[UIColor blueColor] forState:UIControlStateNormal]; pracy_btn.titleLabel.font = [UIFont systemFontOfSize:14]; CGFloat btn_w = 90; diff --git a/HD wallpaper/WallPapaerADManager/WallPapaerADManager.m b/HD wallpaper/WallPapaerADManager/WallPapaerADManager.m index 691c0e9..b8590fa 100644 --- a/HD wallpaper/WallPapaerADManager/WallPapaerADManager.m +++ b/HD wallpaper/WallPapaerADManager/WallPapaerADManager.m @@ -23,7 +23,11 @@ @property (nonatomic,strong) NSTimer *openADTimer; @property (nonatomic,strong) UIProgressView *processView; -@property (nonatomic,strong) NSDate *showADDate;//ad间隔时长 +@property (nonatomic,strong) NSDate *showOpenADDate;//ad间隔时长 + +@property (nonatomic,strong) NSDate *showSaveADDate;//ad间隔时长 +@property (nonatomic,strong) NSDate *showSearchADDate;//ad间隔时长 +@property (nonatomic,strong) NSDate *showBackADDate;//ad间隔时长 @end // @@ -103,44 +107,63 @@ - (void)showIntersitialAD_Back:(WallPapaerADManagerCallback)callback { self.callback = callback; - if(![self canShowAD]) { + if(![self canShowAD:_showBackADDate]) { self.callback(1); return; } - if ( [self.interstitialAD_Back isReady] ){ - [self.interstitialAD_Back showAd]; - } - else { - self.callback(1); - } + [self srandomShowAD:callback]; + + } - (void)showIntersitialAD_Save:(WallPapaerADManagerCallback)callback { self.callback = callback; - if(![self canShowAD]) { + if(![self canShowAD:_showSaveADDate]) { self.callback(1); return; } - if ( [self.interstitialAD_Save isReady] ){ - [self.interstitialAD_Save showAd]; - } - else { - self.callback(1); - } + [self srandomShowAD:callback]; + + } - (void)showIntersitialAD_Search:(WallPapaerADManagerCallback)callback { self.callback = callback; - if(![self canShowAD]) { + if(![self canShowAD:_showSearchADDate]) { self.callback(1); return; } - if ( [self.interstitialAD_Search isReady] ){ - [self.interstitialAD_Search showAd]; + [self srandomShowAD:callback]; + +} + +//随机展示ad +- (void)srandomShowAD:(WallPapaerADManagerCallback)callback{ + int rv = arc4random() % 3; + if (rv == 0) { + if ( [self.interstitialAD_Back isReady] ){ + [self.interstitialAD_Back showAd]; + } + else { + self.callback(1); + } } - else { - self.callback(1); + else if (rv == 1) { + if ( [self.interstitialAD_Save isReady] ){ + [self.interstitialAD_Save showAd]; + } + else { + self.callback(1); + } + } + else if (rv == 2) { + if ( [self.interstitialAD_Search isReady] ){ + [self.interstitialAD_Search showAd]; + } + else { + self.callback(1); + } } } @@ -208,7 +231,7 @@ } - (void)showOpenAD { - if(![self canShowAD]) { + if(![self canShowAD:_showOpenADDate]) { return; } if ( ![[ALSdk shared] isInitialized] ){ @@ -285,13 +308,13 @@ } //能否展示广告 -- (BOOL)canShowAD { - if(!_showADDate) { +- (BOOL)canShowAD:(NSDate *)adDate { + if(!adDate) { return YES; } else { NSDate *ndate = [NSDate date]; - if ([ndate timeIntervalSinceDate:_showADDate] >= kADShowTimePer) { + if ([ndate timeIntervalSinceDate:adDate] >= kADShowTimePer) { return YES; } else { @@ -303,7 +326,19 @@ - (void)didDisplayAd:(MAAd *)ad { NSLog(@"成功展示了ad...."); //记录下最近成功展示ad的时间 - _showADDate = [NSDate date]; + if([ad.adUnitIdentifier isEqualToString:kWallPaper_OpenAD]) { + _showOpenADDate = [NSDate date]; + } + else if ([ad.adUnitIdentifier isEqualToString:kInterstitial_SaveAD]) { + _showSaveADDate = [NSDate date]; + } + else if ([ad.adUnitIdentifier isEqualToString:kInterstitial_BackAD]) { + _showBackADDate = [NSDate date]; + } + else if ([ad.adUnitIdentifier isEqualToString:kInterstitial_SearchAD]) { + _showSearchADDate = [NSDate date]; + } + } - (void)didClickAd:(MAAd *)ad { diff --git a/HD wallpaper/en.lproj/InfoPlist.strings b/HD wallpaper/en.lproj/InfoPlist.strings new file mode 100644 index 0000000..e69de29 diff --git a/HD wallpaper/en.lproj/Localizable.strings b/HD wallpaper/en.lproj/Localizable.strings new file mode 100644 index 0000000..e69de29 diff --git a/HD wallpaper/zh-Hans.lproj/InfoPlist.strings b/HD wallpaper/zh-Hans.lproj/InfoPlist.strings new file mode 100644 index 0000000..e69de29 diff --git a/HD wallpaper/zh-Hans.lproj/LaunchScreen.strings b/HD wallpaper/zh-Hans.lproj/LaunchScreen.strings new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/HD wallpaper/zh-Hans.lproj/LaunchScreen.strings @@ -0,0 +1 @@ + diff --git a/HD wallpaper/zh-Hans.lproj/Localizable.strings b/HD wallpaper/zh-Hans.lproj/Localizable.strings new file mode 100644 index 0000000..e69de29