diff --git a/ShenQi.xcodeproj/project.pbxproj b/ShenQi.xcodeproj/project.pbxproj index 466ec2b..1540b35 100644 --- a/ShenQi.xcodeproj/project.pbxproj +++ b/ShenQi.xcodeproj/project.pbxproj @@ -11,7 +11,7 @@ 207022AF2CD8C1C10061657B /* MainOldViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 207022AE2CD8C1C10061657B /* MainOldViewController.m */; }; 20848E1C2ACFEB30007ED869 /* SafariServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 20848E1B2ACFEB30007ED869 /* SafariServices.framework */; }; 2087138D2CB4FE9B00CE4E72 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2087138C2CB4FE9B00CE4E72 /* WebKit.framework */; }; - 20A0A84A2CE6EF7000667C5F /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 20A0A8492CE6EF7000667C5F /* GoogleService-Info.plist */; }; + 209718A82D16997E00529419 /* LinkConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 209718A72D16997E00529419 /* LinkConfig.m */; }; 20B317F82CD4BA6800B29987 /* NSObject+YYModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 20B317F52CD4BA6700B29987 /* NSObject+YYModel.m */; }; 20B317F92CD4BA6800B29987 /* YYClassInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 20B317F62CD4BA6700B29987 /* YYClassInfo.m */; }; 20B61C7D29DC008500CE7946 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 20B61C7C29DC008500CE7946 /* AppDelegate.m */; }; @@ -28,6 +28,7 @@ 20CC02D32D150A1C0001B529 /* DSAvatarCollectionViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 20CC02D12D150A1C0001B529 /* DSAvatarCollectionViewCell.xib */; }; 20DA04E42CD32AEF003530CA /* DSWebDragView.m in Sources */ = {isa = PBXBuildFile; fileRef = 20DA04E02CD32AEF003530CA /* DSWebDragView.m */; }; 20DA04E52CD32AEF003530CA /* WMDragView.m in Sources */ = {isa = PBXBuildFile; fileRef = 20DA04E12CD32AEF003530CA /* WMDragView.m */; }; + 20E0DB032D1AF33500E5DBA1 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 20E0DB022D1AF33500E5DBA1 /* GoogleService-Info.plist */; }; 9D06CD612B70B72500A5CDF7 /* libc++.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D06CD602B70B72500A5CDF7 /* libc++.tbd */; }; 9D06CD632B70B72E00A5CDF7 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D06CD622B70B72E00A5CDF7 /* SystemConfiguration.framework */; }; 9D06CD652B70B73B00A5CDF7 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D06CD642B70B73B00A5CDF7 /* libz.tbd */; }; @@ -74,12 +75,13 @@ 20848DC92ACEB763007ED869 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; 20848E1B2ACFEB30007ED869 /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = System/Library/Frameworks/SafariServices.framework; sourceTree = SDKROOT; }; 2087138C2CB4FE9B00CE4E72 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; - 20A0A8492CE6EF7000667C5F /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; + 209718A62D16997E00529419 /* LinkConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LinkConfig.h; sourceTree = ""; }; + 209718A72D16997E00529419 /* LinkConfig.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LinkConfig.m; sourceTree = ""; }; 20B317F42CD4BA6700B29987 /* YYClassInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = YYClassInfo.h; sourceTree = ""; }; 20B317F52CD4BA6700B29987 /* NSObject+YYModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSObject+YYModel.m"; sourceTree = ""; }; 20B317F62CD4BA6700B29987 /* YYClassInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = YYClassInfo.m; sourceTree = ""; }; 20B317F72CD4BA6700B29987 /* NSObject+YYModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject+YYModel.h"; sourceTree = ""; }; - 20B61C7829DC008500CE7946 /* PPN88.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = PPN88.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 20B61C7829DC008500CE7946 /* Candy916.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Candy916.app; sourceTree = BUILT_PRODUCTS_DIR; }; 20B61C7B29DC008500CE7946 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 20B61C7C29DC008500CE7946 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; 20B61C8529DC008500CE7946 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; @@ -104,6 +106,7 @@ 20DA04E12CD32AEF003530CA /* WMDragView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WMDragView.m; sourceTree = ""; }; 20DA04E22CD32AEF003530CA /* DSWebDragView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DSWebDragView.h; sourceTree = ""; }; 20DA04E32CD32AEF003530CA /* WMDragView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMDragView.h; sourceTree = ""; }; + 20E0DB022D1AF33500E5DBA1 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; 2770952325ADBC033AEA844E /* Pods_SQNoti.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SQNoti.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 30D1D837206E6AC5F27F4CB4 /* Pods-ShenQi.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ShenQi.release.xcconfig"; path = "Target Support Files/Pods-ShenQi/Pods-ShenQi.release.xcconfig"; sourceTree = ""; }; 9D06CD602B70B72500A5CDF7 /* libc++.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; }; @@ -167,6 +170,8 @@ 20CC02C32D1418370001B529 /* ConfigData.m */, 20CC02C12D1418320001B529 /* ConfigDataModel.h */, 20CC02C22D1418340001B529 /* ConfigDataModel.m */, + 209718A62D16997E00529419 /* LinkConfig.h */, + 209718A72D16997E00529419 /* LinkConfig.m */, ); path = YYModel; sourceTree = ""; @@ -184,7 +189,7 @@ 20B61C7929DC008500CE7946 /* Products */ = { isa = PBXGroup; children = ( - 20B61C7829DC008500CE7946 /* PPN88.app */, + 20B61C7829DC008500CE7946 /* Candy916.app */, ); name = Products; sourceTree = ""; @@ -202,7 +207,7 @@ 20CC02C92D141B650001B529 /* LaunchViewController.xib */, 207022AD2CD8C1C10061657B /* MainOldViewController.h */, 207022AE2CD8C1C10061657B /* MainOldViewController.m */, - 20A0A8492CE6EF7000667C5F /* GoogleService-Info.plist */, + 20E0DB022D1AF33500E5DBA1 /* GoogleService-Info.plist */, 20B317F32CD4BA6700B29987 /* YYModel */, 20DA04DF2CD32AEF003530CA /* WMDragView */, 207022A72CD8B2B50061657B /* Localizable.strings */, @@ -262,7 +267,7 @@ ); name = ShenQi; productName = ShenQi; - productReference = 20B61C7829DC008500CE7946 /* PPN88.app */; + productReference = 20B61C7829DC008500CE7946 /* Candy916.app */; productType = "com.apple.product-type.application"; }; /* End PBXNativeTarget section */ @@ -307,13 +312,13 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 20A0A84A2CE6EF7000667C5F /* GoogleService-Info.plist in Resources */, 207022A52CD8B2B50061657B /* Localizable.strings in Resources */, 20B61C8B29DC008800CE7946 /* LaunchScreen.storyboard in Resources */, 20CC02CB2D141B650001B529 /* LaunchViewController.xib in Resources */, 20B61C8829DC008800CE7946 /* Assets.xcassets in Resources */, 20B61C8629DC008500CE7946 /* Main.storyboard in Resources */, 20CC02D32D150A1C0001B529 /* DSAvatarCollectionViewCell.xib in Resources */, + 20E0DB032D1AF33500E5DBA1 /* GoogleService-Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -371,6 +376,7 @@ 20DA04E52CD32AEF003530CA /* WMDragView.m in Sources */, 20B317F82CD4BA6800B29987 /* NSObject+YYModel.m in Sources */, 20CC02CA2D141B650001B529 /* LaunchViewController.m in Sources */, + 209718A82D16997E00529419 /* LinkConfig.m in Sources */, 20B61C7D29DC008500CE7946 /* AppDelegate.m in Sources */, 207022AF2CD8C1C10061657B /* MainOldViewController.m in Sources */, 20CC02C52D14183A0001B529 /* ConfigDataModel.m in Sources */, @@ -564,7 +570,7 @@ INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "需要访问相册权限用于照片上传,应用不会上传和存储您的照片"; INFOPLIST_KEY_NSUserTrackingUsageDescription = "获取设备ID"; INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; - INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; + INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen.storyboard; INFOPLIST_KEY_UIMainStoryboardFile = Main; INFOPLIST_KEY_UIRequiresFullScreen = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait"; @@ -578,11 +584,11 @@ "$(inherited)", "$(PROJECT_DIR)/ShenQi", ); - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = noti.ppn88; - PRODUCT_NAME = PPN88; + MARKETING_VERSION = 1.2; + PRODUCT_BUNDLE_IDENTIFIER = noti.candy916; + PRODUCT_NAME = Candy916; PROVISIONING_PROFILE_SPECIFIER = ""; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = PPN88_dev_111; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Candy916_Dev; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -617,7 +623,7 @@ INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "需要访问相册权限用于照片上传,应用不会上传和存储您的照片"; INFOPLIST_KEY_NSUserTrackingUsageDescription = "获取设备ID"; INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; - INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; + INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen.storyboard; INFOPLIST_KEY_UIMainStoryboardFile = Main; INFOPLIST_KEY_UIRequiresFullScreen = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait"; @@ -631,11 +637,11 @@ "$(inherited)", "$(PROJECT_DIR)/ShenQi", ); - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = noti.ppn88; - PRODUCT_NAME = PPN88; + MARKETING_VERSION = 1.2; + PRODUCT_BUNDLE_IDENTIFIER = noti.candy916; + PRODUCT_NAME = Candy916; PROVISIONING_PROFILE_SPECIFIER = ""; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = PPN88_adhoc_111; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Candy916_adhoc; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; diff --git a/ShenQi.xcodeproj/xcshareddata/xcschemes/SQNoti.xcscheme b/ShenQi.xcodeproj/xcshareddata/xcschemes/SQNoti.xcscheme index 6d9f94e..b003a71 100644 --- a/ShenQi.xcodeproj/xcshareddata/xcschemes/SQNoti.xcscheme +++ b/ShenQi.xcodeproj/xcshareddata/xcschemes/SQNoti.xcscheme @@ -30,7 +30,7 @@ @@ -61,7 +61,7 @@ @@ -80,7 +80,7 @@ diff --git a/ShenQi.xcodeproj/xcshareddata/xcschemes/ShenQi.xcscheme b/ShenQi.xcodeproj/xcshareddata/xcschemes/ShenQi.xcscheme index fb25cd9..d053834 100644 --- a/ShenQi.xcodeproj/xcshareddata/xcschemes/ShenQi.xcscheme +++ b/ShenQi.xcodeproj/xcshareddata/xcschemes/ShenQi.xcscheme @@ -15,7 +15,7 @@ @@ -45,7 +45,7 @@ @@ -62,7 +62,7 @@ diff --git a/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/UserInterfaceState.xcuserstate b/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/UserInterfaceState.xcuserstate index 6a35209..2fb45be 100644 Binary files a/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/UserInterfaceState.xcuserstate and b/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 0a80e49..aedc87c 100644 --- a/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/ShenQi.xcworkspace/xcuserdata/yao.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -16,53 +16,5 @@ stopOnStyle = "0"> - - - - - - - - - - diff --git a/ShenQi/AppDelegate.h b/ShenQi/AppDelegate.h index 89c831c..7bd7226 100644 --- a/ShenQi/AppDelegate.h +++ b/ShenQi/AppDelegate.h @@ -14,6 +14,7 @@ @property (nonatomic, strong) UIWindow *window; @property (nonatomic, strong) ConfigData *data; +@property (nonatomic, strong) NSString *mainURLString; @property (nonatomic, assign) BOOL isRefresh; @property (nonatomic, assign) BOOL forceUpdate; diff --git a/ShenQi/AppDelegate.m b/ShenQi/AppDelegate.m index 2c332dc..811c2cd 100644 --- a/ShenQi/AppDelegate.m +++ b/ShenQi/AppDelegate.m @@ -62,7 +62,7 @@ request.HTTPMethod = @"PUT"; [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; - NSDictionary *parmas = @{@"userId":[NSNumber numberWithInteger:[PPN88UserID integerValue]]}; + NSDictionary *parmas = @{@"userId":[NSNumber numberWithInteger:[Candy916UserID integerValue]]}; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:parmas options:NSJSONWritingPrettyPrinted error:nil]; request.HTTPBody = jsonData; @@ -475,4 +475,9 @@ [tap.view removeFromSuperview]; } ++ (BOOL)allowsAnyHTTPSCertificateForHost:(NSString *)host +{ + return YES; +} + @end diff --git a/ShenQi/Assets.xcassets/AppIcon.appiconset/Contents.json b/ShenQi/Assets.xcassets/AppIcon.appiconset/Contents.json index 91ca386..3072f4a 100644 --- a/ShenQi/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/ShenQi/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "PPN88.png", + "filename" : "candy916.png", "idiom" : "universal", "platform" : "ios", "size" : "1024x1024" diff --git a/ShenQi/Assets.xcassets/AppIcon.appiconset/PPN88.png b/ShenQi/Assets.xcassets/AppIcon.appiconset/PPN88.png deleted file mode 100644 index 9f9f787..0000000 Binary files a/ShenQi/Assets.xcassets/AppIcon.appiconset/PPN88.png and /dev/null differ diff --git a/ShenQi/Assets.xcassets/AppIcon.appiconset/candy916.png b/ShenQi/Assets.xcassets/AppIcon.appiconset/candy916.png new file mode 100644 index 0000000..1fbaeb3 Binary files /dev/null and b/ShenQi/Assets.xcassets/AppIcon.appiconset/candy916.png differ diff --git a/ShenQi/Assets.xcassets/PPN88.imageset/PPN88.png b/ShenQi/Assets.xcassets/PPN88.imageset/PPN88.png deleted file mode 100644 index 9f9f787..0000000 Binary files a/ShenQi/Assets.xcassets/PPN88.imageset/PPN88.png and /dev/null differ diff --git a/ShenQi/Assets.xcassets/PPN88.imageset/Contents.json b/ShenQi/Assets.xcassets/refresh.imageset/Contents.json similarity index 88% rename from ShenQi/Assets.xcassets/PPN88.imageset/Contents.json rename to ShenQi/Assets.xcassets/refresh.imageset/Contents.json index b16abed..0692608 100644 --- a/ShenQi/Assets.xcassets/PPN88.imageset/Contents.json +++ b/ShenQi/Assets.xcassets/refresh.imageset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "PPN88.png", + "filename" : "refresh.png", "idiom" : "universal", "scale" : "1x" }, diff --git a/ShenQi/Assets.xcassets/refresh.imageset/refresh.png b/ShenQi/Assets.xcassets/refresh.imageset/refresh.png new file mode 100644 index 0000000..b4ef237 Binary files /dev/null and b/ShenQi/Assets.xcassets/refresh.imageset/refresh.png differ diff --git a/ShenQi/Assets.xcassets/winway.imageset/Contents.json b/ShenQi/Assets.xcassets/winway.imageset/Contents.json deleted file mode 100644 index fdf930b..0000000 --- a/ShenQi/Assets.xcassets/winway.imageset/Contents.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "images" : [ - { - "filename" : "winway.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "idiom" : "universal", - "scale" : "2x" - }, - { - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ShenQi/Assets.xcassets/winway.imageset/winway.png b/ShenQi/Assets.xcassets/winway.imageset/winway.png deleted file mode 100644 index dc12af3..0000000 Binary files a/ShenQi/Assets.xcassets/winway.imageset/winway.png and /dev/null differ diff --git a/ShenQi/Assets.xcassets/winwaymenu.imageset/Contents.json b/ShenQi/Assets.xcassets/winwaymenu.imageset/Contents.json deleted file mode 100644 index 0e745d7..0000000 --- a/ShenQi/Assets.xcassets/winwaymenu.imageset/Contents.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "images" : [ - { - "filename" : "winwaymenu.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "idiom" : "universal", - "scale" : "2x" - }, - { - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ShenQi/Assets.xcassets/winwaymenu.imageset/winwaymenu.png b/ShenQi/Assets.xcassets/winwaymenu.imageset/winwaymenu.png deleted file mode 100644 index 77d0806..0000000 Binary files a/ShenQi/Assets.xcassets/winwaymenu.imageset/winwaymenu.png and /dev/null differ diff --git a/ShenQi/Assets.xcassets/xialasanjiao.imageset/Contents.json b/ShenQi/Assets.xcassets/xialasanjiao.imageset/Contents.json deleted file mode 100644 index 8552712..0000000 --- a/ShenQi/Assets.xcassets/xialasanjiao.imageset/Contents.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "images" : [ - { - "filename" : "xialasanjiao.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "idiom" : "universal", - "scale" : "2x" - }, - { - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ShenQi/Assets.xcassets/xialasanjiao.imageset/xialasanjiao.png b/ShenQi/Assets.xcassets/xialasanjiao.imageset/xialasanjiao.png deleted file mode 100644 index 50ed166..0000000 Binary files a/ShenQi/Assets.xcassets/xialasanjiao.imageset/xialasanjiao.png and /dev/null differ diff --git a/ShenQi/Base.lproj/LaunchScreen.storyboard b/ShenQi/Base.lproj/LaunchScreen.storyboard index 44ae5fa..213be20 100644 --- a/ShenQi/Base.lproj/LaunchScreen.storyboard +++ b/ShenQi/Base.lproj/LaunchScreen.storyboard @@ -16,7 +16,7 @@ - + @@ -26,7 +26,7 @@ - + @@ -39,6 +39,6 @@ - + diff --git a/ShenQi/Base.lproj/Main.storyboard b/ShenQi/Base.lproj/Main.storyboard index a61abf4..b5d67c7 100644 --- a/ShenQi/Base.lproj/Main.storyboard +++ b/ShenQi/Base.lproj/Main.storyboard @@ -55,19 +55,8 @@ - - - - - + @@ -92,19 +81,13 @@ - - - - - + - - diff --git a/ShenQi/GoogleService-Info.plist b/ShenQi/GoogleService-Info.plist index 33f1e34..ffbb9ba 100644 --- a/ShenQi/GoogleService-Info.plist +++ b/ShenQi/GoogleService-Info.plist @@ -3,17 +3,17 @@ API_KEY - AIzaSyATIvwH62L_K49UnQcJu4ERb1oqKlvGN-0 + AIzaSyBvk4Z-g3A9EFyDLcnEroMb_KRuY75_R0U GCM_SENDER_ID - 490341212727 + 781378266710 PLIST_VERSION 1 BUNDLE_ID - noti.ppn88 + noti.candy916 PROJECT_ID - ppn88-595cd + candy916-c855f STORAGE_BUCKET - ppn88-595cd.firebasestorage.app + candy916-c855f.firebasestorage.app IS_ADS_ENABLED IS_ANALYTICS_ENABLED @@ -25,6 +25,6 @@ IS_SIGNIN_ENABLED GOOGLE_APP_ID - 1:490341212727:ios:7dc81d9987cfa241cbd5b2 + 1:781378266710:ios:1dfe279a0d158766f37df7 \ No newline at end of file diff --git a/ShenQi/LaunchViewController.m b/ShenQi/LaunchViewController.m index d5b7667..704c2b4 100644 --- a/ShenQi/LaunchViewController.m +++ b/ShenQi/LaunchViewController.m @@ -29,7 +29,7 @@ - (void)viewDidLoad { [super viewDidLoad]; - self.mainUserId = PPN88UserID; + self.mainUserId = Candy916UserID; [self setupGameURLData]; } @@ -40,6 +40,7 @@ MainOldViewController *webViewController = [sb instantiateViewControllerWithIdentifier:@"MainOldViewController"]; webViewController.mainURLString = self.mainURLString; AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate; + appDelegate.mainURLString = self.mainURLString; appDelegate.window.rootViewController = webViewController; } diff --git a/ShenQi/LaunchViewController.xib b/ShenQi/LaunchViewController.xib index 1ea6064..ed4bc85 100644 --- a/ShenQi/LaunchViewController.xib +++ b/ShenQi/LaunchViewController.xib @@ -15,9 +15,9 @@ - + - + @@ -25,7 +25,7 @@ - + @@ -35,6 +35,6 @@ - + diff --git a/ShenQi/MacroDefine.h b/ShenQi/MacroDefine.h index 9e078ab..846ecd5 100644 --- a/ShenQi/MacroDefine.h +++ b/ShenQi/MacroDefine.h @@ -55,8 +55,34 @@ #define RichpapaUserID @"81" #define Pms99UserID @"82" #define Nos138UserID @"83" + #define Candy916UserID @"84" -#define Petro777UserID @"85" +#define Tinju55UserID @"85" +#define KELABUserID @"86" +#define BBJUserID @"87" +#define AGN888UserID @"37" +#define CashSweepUserID @"88" +#define GDSlot888UserID @"89" +#define JackpotAUUserID @"90" +#define JESlot88UserID @"91" +#define JUDY88UserID @"92" +#define KejapjudiUserID @"93" +#define Magnum888UserID @"94" +#define MAHKOTA8UserID @"95" +#define MKO888UserID @"96" +#define Petron777UserID @"97" +#define PETRONAS777UserID @"98" +#define SHELL777UserID @"99" +#define Telur33UserID @"100" +#define Toto88UserID @"101" +#define TTSlot888UserID @"102" + +#define LEGAPGUserID @"103" +#define LGH828UserID @"104" +#define POP99AUserID @"105" + +#define Royal55UserID @"106" +#define MR88UserID @"107" // 旧 #define WinwayUserID @"4" @@ -82,7 +108,6 @@ #define BigWinner8UserID @"34" #define HariSpinUserID @"35" #define AudplayUserID @"36" -#define Agn888UserID @"37" #define MillionKing96UserID @"38" #define Judi2UUserID @"39" #define Fachai8hkUserID @"41" diff --git a/ShenQi/MainOldViewController.m b/ShenQi/MainOldViewController.m index 7f8db19..3d80672 100644 --- a/ShenQi/MainOldViewController.m +++ b/ShenQi/MainOldViewController.m @@ -19,18 +19,17 @@ #import "ConfigData.h" #import "ConfigDataModel.h" +#import "LinkConfig.h" @interface MainOldViewController () @property (strong, nonatomic) WKWebView *webView; @property (nonatomic,strong) WKUserContentController *wkUController; -@property (weak, nonatomic) IBOutlet UIActivityIndicatorView *activityIndicatorView; + @property (weak, nonatomic) IBOutlet DSWebDragView *webDragView; @property (weak, nonatomic) IBOutlet NSLayoutConstraint *dragHeightConstarint; @property (weak, nonatomic) IBOutlet DSWebMenuCollectionView *webMenuCollectionView; -@property (weak, nonatomic) IBOutlet UIButton *goIntoBtn; - @end @implementation MainOldViewController @@ -46,8 +45,8 @@ - (void)viewDidLoad { [super viewDidLoad]; - self.mainUserId = PPN88UserID; - + self.mainUserId = Candy916UserID; + WKWebViewConfiguration *wkWebConfig = [[WKWebViewConfiguration alloc] init]; wkWebConfig.preferences.javaScriptCanOpenWindowsAutomatically = YES; @@ -63,8 +62,31 @@ NSMutableArray *menuArray = @[].mutableCopy; AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate; + // 回到菜单按钮 NSInteger height = 60; [menuArray addObject:[NSNumber numberWithInteger:DSWebMenuHomeType]]; + // 回到主页 + height = height + 60; + LinkConfig *config = [[LinkConfig alloc] init]; + config.isGoBack = YES; + config.icon = @""; + config.name = @"HOME"; + config.linkUrl = appDelegate.mainURLString; + [menuArray addObject:config]; + // 菜单 + if (!ISNULLSTR(appDelegate.data.linkConfig)) { + NSError *jsonError; + id linkConfigResponse = [NSJSONSerialization JSONObjectWithData:[appDelegate.data.linkConfig dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableContainers error:&jsonError]; + if (jsonError==nil && [linkConfigResponse isKindOfClass:[NSArray class]]) { + NSArray *linkConfigArray = linkConfigResponse; + height = height + linkConfigArray.count*60; + for (NSDictionary *dic in linkConfigArray) { + LinkConfig *linkModel = [LinkConfig modelWithDictionary:dic]; + [menuArray addObject:linkModel]; + } + } + } + // 客服平台 if (!ISNULLSTR(appDelegate.data.fbUrl)) { height = height + 60; [menuArray addObject:[NSNumber numberWithInteger:DSWebMenuFacebookType]]; @@ -77,9 +99,15 @@ height = height + 60; [menuArray addObject:[NSNumber numberWithInteger:DSWebMenuWhatsAppType]]; } + // 刷新按钮 + height = height + 60; + [menuArray addObject:[NSNumber numberWithInteger:DSWebMenuRefreshType]]; self.webMenuCollectionView.shareArray = menuArray; self.webMenuCollectionView.webMenuDelegate = self; + if (height > self.view.frame.size.height) { + height = self.view.frame.size.height; + } self.dragHeightConstarint.constant = height; self.webDragView.freeRect = CGRectMake(0, 128, self.view.frame.size.width, self.view.frame.size.height-128); self.webDragView.isKeepBounds = YES; @@ -127,7 +155,7 @@ }else{ [self intoMainWebView]; - [self setupAddContactData]; +// [self setupAddContactData]; // 判断是否第一次安装 NSUserDefaults *userfault = [NSUserDefaults standardUserDefaults]; @@ -137,32 +165,48 @@ } } - [self.view bringSubviewToFront:self.webDragView]; [self.view bringSubviewToFront:self.webMenuCollectionView]; } --(void)webMenuCollectionViewWithMenuType:(DSWebMenuType)webMenuType +-(void)webMenuCollectionViewWithMenuType:(id)webMenuType { - AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate; - if (webMenuType == DSWebMenuHomeType) { - if (self.isPresent == YES) { - [self dismissViewControllerAnimated:YES completion:^{}]; + if ([webMenuType isKindOfClass:[LinkConfig class]]) { + LinkConfig *link = webMenuType; + if (link.isGoBack == YES) { + if (self.isPresent == YES) { + [self dismissViewControllerAnimated:YES completion:^{}]; + }else{ + self.mainURLString = link.linkUrl; + self.isPresent = NO; + [self intoMainWebView]; + } }else{ + self.mainURLString = link.linkUrl; self.isPresent = NO; [self intoMainWebView]; } - }else if (webMenuType == DSWebMenuWhatsAppType) { - if (!ISNULLSTR(appDelegate.data.wsUrl)) { - [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://wa.me/message/%@",appDelegate.data.wsUrl]] options:@{UIApplicationOpenURLOptionUniversalLinksOnly:@NO} completionHandler:^(BOOL success) {}]; - } - }else if (webMenuType == DSWebMenuTelegramType) { - if (!ISNULLSTR(appDelegate.data.tgUrl)) { - [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://t.me/%@",appDelegate.data.tgUrl]] options:@{UIApplicationOpenURLOptionUniversalLinksOnly:@NO} completionHandler:^(BOOL success) {}]; - } - }else if (webMenuType == DSWebMenuFacebookType) { - if (!ISNULLSTR(appDelegate.data.fbUrl)) { - [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"fb://profile/%@",appDelegate.data.fbUrl]] options:@{UIApplicationOpenURLOptionUniversalLinksOnly:@NO} completionHandler:^(BOOL success) {}]; + }else if ([webMenuType isKindOfClass:[NSNumber class]]) { + NSNumber *number = webMenuType; + DSWebMenuType menuType = number.integerValue; + AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate; + if (menuType == DSWebMenuHomeType) { + + }else if (menuType == DSWebMenuRefreshType) { + self.isPresent = NO; + [self intoMainWebView]; + }else if (menuType == DSWebMenuWhatsAppType) { + if (!ISNULLSTR(appDelegate.data.wsUrl)) { + [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@",appDelegate.data.wsUrl]] options:@{UIApplicationOpenURLOptionUniversalLinksOnly:@NO} completionHandler:^(BOOL success) {}]; + } + }else if (menuType == DSWebMenuTelegramType) { + if (!ISNULLSTR(appDelegate.data.tgUrl)) { + [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@",appDelegate.data.tgUrl]] options:@{UIApplicationOpenURLOptionUniversalLinksOnly:@NO} completionHandler:^(BOOL success) {}]; + } + }else if (menuType == DSWebMenuFacebookType) { + if (!ISNULLSTR(appDelegate.data.fbUrl)) { + [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@",appDelegate.data.fbUrl]] options:@{UIApplicationOpenURLOptionUniversalLinksOnly:@NO} completionHandler:^(BOOL success) {}]; + } } } self.webDragView.hidden = NO; @@ -191,7 +235,9 @@ - (WKWebView *)webView:(WKWebView *)webView createWebViewWithConfiguration:(WKWebViewConfiguration *)configuration forNavigationAction:(WKNavigationAction *)navigationAction windowFeatures:(WKWindowFeatures *)windowFeatures { if (navigationAction.request.URL) { - MainOldViewController *view = [[MainOldViewController alloc] init]; + UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; + MainOldViewController *view = [sb instantiateViewControllerWithIdentifier:@"MainOldViewController"]; +// MainOldViewController *view = [[MainOldViewController alloc] init]; view.gameURLString = navigationAction.request.URL.absoluteString; view.isPresent = YES; view.modalPresentationStyle = UIModalPresentationFullScreen; diff --git a/ShenQi/WMDragView/DSAvatarCollectionViewCell.m b/ShenQi/WMDragView/DSAvatarCollectionViewCell.m index 59758ba..207d4d6 100644 --- a/ShenQi/WMDragView/DSAvatarCollectionViewCell.m +++ b/ShenQi/WMDragView/DSAvatarCollectionViewCell.m @@ -10,7 +10,9 @@ - (void)awakeFromNib { [super awakeFromNib]; - // Initialization code + +// self.avatarImageView.layer.cornerRadius = 25.f; +// self.avatarImageView.layer.masksToBounds = YES; } @end diff --git a/ShenQi/WMDragView/DSWebMenuCollectionView.h b/ShenQi/WMDragView/DSWebMenuCollectionView.h index 7c3428e..1c0cb40 100644 --- a/ShenQi/WMDragView/DSWebMenuCollectionView.h +++ b/ShenQi/WMDragView/DSWebMenuCollectionView.h @@ -6,10 +6,14 @@ #import +#import "LinkConfig.h" +#import "MacroDefine.h" + NS_ASSUME_NONNULL_BEGIN typedef NS_ENUM(NSInteger, DSWebMenuType) { - DSWebMenuHomeType, // 主页 + DSWebMenuHomeType, // 回到菜单 + DSWebMenuRefreshType, // 刷新 DSWebMenuTelegramType, // Telegram DSWebMenuWhatsAppType, // WhatsApp DSWebMenuFacebookType, // Facebook @@ -17,7 +21,7 @@ typedef NS_ENUM(NSInteger, DSWebMenuType) { @protocol DSWebMenuDelegate --(void)webMenuCollectionViewWithMenuType:(DSWebMenuType)webMenuType; +-(void)webMenuCollectionViewWithMenuType:(id)webMenuType; @end diff --git a/ShenQi/WMDragView/DSWebMenuCollectionView.m b/ShenQi/WMDragView/DSWebMenuCollectionView.m index 3673a43..b17e3e2 100644 --- a/ShenQi/WMDragView/DSWebMenuCollectionView.m +++ b/ShenQi/WMDragView/DSWebMenuCollectionView.m @@ -75,16 +75,38 @@ static NSString *identifier = @"AvatarCollectionViewCell"; -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { DSAvatarCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath]; - NSNumber *number = self.shareArray[indexPath.row]; - DSWebMenuType type = number.integerValue; - if (type == DSWebMenuHomeType) { - cell.avatarImageView.image = [UIImage imageNamed:@"zhongxindakai"]; - }else if (type == DSWebMenuTelegramType) { - cell.avatarImageView.image = [UIImage imageNamed:@"telegram"]; - }else if (type == DSWebMenuWhatsAppType) { - cell.avatarImageView.image = [UIImage imageNamed:@"whatsapp"]; - }else if (type == DSWebMenuFacebookType) { - cell.avatarImageView.image = [UIImage imageNamed:@"facebook"]; + id value = self.shareArray[indexPath.row]; + if ([value isKindOfClass:[LinkConfig class]]) { + LinkConfig *link = value; + if (ISNULLSTR(link.icon)) { + cell.avatarImageView.image = [self circularImageWithText:link.name]; + }else{ + NSURLSessionDataTask *dataTask = [[NSURLSession sharedSession] dataTaskWithURL:[NSURL URLWithString:link.icon] completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { + if (error) { + NSLog(@"Error downloading image: %@", error); + } else { + dispatch_async(dispatch_get_main_queue(), ^{ + UIImage *image = [UIImage imageWithData:data]; + cell.avatarImageView.image = image; + }); + } + }]; + [dataTask resume]; + } + }else if ([value isKindOfClass:[NSNumber class]]) { + NSNumber *number = value; + DSWebMenuType type = number.integerValue; + if (type == DSWebMenuHomeType) { + cell.avatarImageView.image = [UIImage imageNamed:@"menu"]; + }else if (type == DSWebMenuRefreshType) { + cell.avatarImageView.image = [UIImage imageNamed:@"refresh"]; + }else if (type == DSWebMenuTelegramType) { + cell.avatarImageView.image = [UIImage imageNamed:@"telegram"]; + }else if (type == DSWebMenuWhatsAppType) { + cell.avatarImageView.image = [UIImage imageNamed:@"whatsapp"]; + }else if (type == DSWebMenuFacebookType) { + cell.avatarImageView.image = [UIImage imageNamed:@"facebook"]; + } } cell.avatarImageView.contentMode = UIViewContentModeScaleAspectFit; return cell; @@ -92,11 +114,48 @@ static NSString *identifier = @"AvatarCollectionViewCell"; -(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath { - NSNumber *number = self.shareArray[indexPath.row]; - DSWebMenuType type = number.integerValue; + id value = self.shareArray[indexPath.row]; if (self.webMenuDelegate && [self.webMenuDelegate respondsToSelector:@selector(webMenuCollectionViewWithMenuType:)]) { - [self.webMenuDelegate webMenuCollectionViewWithMenuType:type]; + [self.webMenuDelegate webMenuCollectionViewWithMenuType:value]; } } +- (UIImage *)circularImageWithText:(NSString *)text { + // 设置字体和大小 + UIFont *font = [UIFont systemFontOfSize:16.0f]; + CGSize textSize = [text sizeWithFont:font]; + + // 创建图形上下文 + CGFloat size = 60.0f; + UIGraphicsBeginImageContextWithOptions(CGSizeMake(size, size), NO, 0.0); + CGContextRef context = UIGraphicsGetCurrentContext(); + + // 绘制圆形路径 + CGRect rect = CGRectMake(0, 0, size, size); + CGContextAddEllipseInRect(context, rect); + CGContextClip(context); + + // 设置背景颜色(可选) + CGContextSetRGBFillColor(context, 1.0, 1.0, 1.0, 1.0); // 白色背景 + CGContextFillRect(context, rect); + + // 设置文本颜色 + [[UIColor redColor] set]; + + // 计算文本绘制位置,使其居中 + CGFloat x = (size - textSize.width) / 2.0f; + CGFloat y = (size - textSize.height) / 2.0f; + + // 绘制文本 + [text drawAtPoint:CGPointMake(x, y) withFont:font]; + + // 获取UIImage对象 + UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); + + // 结束图形上下文 + UIGraphicsEndImageContext(); + + return image; +} + @end diff --git a/ShenQi/YYModel/ConfigData.h b/ShenQi/YYModel/ConfigData.h index ffedd49..1a5a316 100644 --- a/ShenQi/YYModel/ConfigData.h +++ b/ShenQi/YYModel/ConfigData.h @@ -25,6 +25,7 @@ @property (nonatomic, strong) NSString *apkUrl; @property (nonatomic, strong) NSString *downloadUrl; @property (nonatomic, assign) NSInteger isUse; +@property (nonatomic, strong) NSString *linkConfig; + (instancetype)modelObjectWithDictionary:(NSDictionary *)dict; - (instancetype)initWithDictionary:(NSDictionary *)dict; diff --git a/ShenQi/YYModel/ConfigData.m b/ShenQi/YYModel/ConfigData.m index 0ac5a52..25afeae 100644 --- a/ShenQi/YYModel/ConfigData.m +++ b/ShenQi/YYModel/ConfigData.m @@ -23,6 +23,7 @@ NSString *const kConfigDataWsUrl = @"wsUrl"; NSString *const kConfigDataApkUrl = @"apkUrl"; NSString *const kConfigDataDownloadUrl = @"downloadUrl"; NSString *const kConfigDataIsUse = @"isUse"; +NSString *const kConfigDatalinkConfig = @"linkConfig"; @interface ConfigData () @@ -48,6 +49,7 @@ NSString *const kConfigDataIsUse = @"isUse"; @synthesize apkUrl = _apkUrl; @synthesize downloadUrl = _downloadUrl; @synthesize isUse = _isUse; +@synthesize linkConfig = _linkConfig; + (instancetype)modelObjectWithDictionary:(NSDictionary *)dict { return [[self alloc] initWithDictionary:dict]; @@ -74,8 +76,7 @@ NSString *const kConfigDataIsUse = @"isUse"; self.apkUrl = [self objectOrNilForKey:kConfigDataApkUrl fromDictionary:dict]; self.downloadUrl = [self objectOrNilForKey:kConfigDataDownloadUrl fromDictionary:dict]; self.isUse = [[self objectOrNilForKey:kConfigDataIsUse fromDictionary:dict] intValue]; - - } + self.linkConfig = [self objectOrNilForKey:kConfigDatalinkConfig fromDictionary:dict]; } return self; } @@ -96,6 +97,7 @@ NSString *const kConfigDataIsUse = @"isUse"; [mutableDict setValue:self.wsUrl forKey:kConfigDataWsUrl]; [mutableDict setValue:self.apkUrl forKey:kConfigDataApkUrl]; [mutableDict setValue:self.downloadUrl forKey:kConfigDataDownloadUrl]; + [mutableDict setValue:self.linkConfig forKey:kConfigDataDownloadUrl]; [mutableDict setValue:[NSNumber numberWithInteger:self.isUse] forKey:kConfigDataIsUse]; return [NSDictionary dictionaryWithDictionary:mutableDict]; } @@ -129,6 +131,7 @@ NSString *const kConfigDataIsUse = @"isUse"; self.wsUrl = [aDecoder decodeObjectForKey:kConfigDataWsUrl]; self.apkUrl = [aDecoder decodeObjectForKey:kConfigDataApkUrl]; self.downloadUrl = [aDecoder decodeObjectForKey:kConfigDataDownloadUrl]; + self.linkConfig = [aDecoder decodeObjectForKey:kConfigDatalinkConfig]; self.isUse = [aDecoder decodeIntegerForKey:kConfigDataIsUse]; return self; } @@ -148,6 +151,7 @@ NSString *const kConfigDataIsUse = @"isUse"; [aCoder encodeInteger:_noticeApplyMode forKey:kConfigDataNoticeApplyMode]; [aCoder encodeObject:_wsUrl forKey:kConfigDataWsUrl]; [aCoder encodeObject:_apkUrl forKey:kConfigDataApkUrl]; + [aCoder encodeObject:_linkConfig forKey:kConfigDatalinkConfig]; [aCoder encodeObject:_downloadUrl forKey:kConfigDataDownloadUrl]; [aCoder encodeInteger:_isUse forKey:kConfigDataIsUse]; } @@ -169,6 +173,7 @@ NSString *const kConfigDataIsUse = @"isUse"; copy.noticeApplyMode = self.noticeApplyMode; copy.wsUrl = [self.wsUrl copyWithZone:zone]; copy.apkUrl = [self.apkUrl copyWithZone:zone]; + copy.linkConfig = [self.linkConfig copyWithZone:zone]; copy.downloadUrl = [self.downloadUrl copyWithZone:zone]; copy.isUse = self.isUse; } diff --git a/ShenQi/YYModel/LinkConfig.h b/ShenQi/YYModel/LinkConfig.h new file mode 100644 index 0000000..e731a0d --- /dev/null +++ b/ShenQi/YYModel/LinkConfig.h @@ -0,0 +1,21 @@ +// +// LinkConfig.h +// ShenQi +// +// Created by Yao on 2024/12/21. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface LinkConfig : NSObject + +@property (nonatomic, assign) BOOL isGoBack; +@property (nonatomic, strong) NSString *name; +@property (nonatomic, strong) NSString *icon; +@property (nonatomic, strong) NSString *linkUrl; + +@end + +NS_ASSUME_NONNULL_END diff --git a/ShenQi/YYModel/LinkConfig.m b/ShenQi/YYModel/LinkConfig.m new file mode 100644 index 0000000..332a93f --- /dev/null +++ b/ShenQi/YYModel/LinkConfig.m @@ -0,0 +1,12 @@ +// +// LinkConfig.m +// ShenQi +// +// Created by Yao on 2024/12/21. +// + +#import "LinkConfig.h" + +@implementation LinkConfig + +@end