1.w2a 启动页 通知
This commit is contained in:
parent
b7a0a86a1a
commit
4c250038e0
11
Podfile
11
Podfile
@ -33,10 +33,11 @@ target 'SynthReel' do
|
||||
pod 'HWPanModal'
|
||||
pod 'LYEmptyView'
|
||||
pod 'ZLPhotoBrowser'
|
||||
pod 'Adjust'
|
||||
|
||||
# AdMob SDK
|
||||
pod 'Google-Mobile-Ads-SDK'
|
||||
|
||||
# AppLovin SDK
|
||||
pod 'AppLovinSDK'
|
||||
# # AdMob SDK
|
||||
# pod 'Google-Mobile-Ads-SDK'
|
||||
#
|
||||
# # AppLovin SDK
|
||||
# pod 'AppLovinSDK'
|
||||
end
|
||||
|
||||
@ -194,10 +194,32 @@
|
||||
3754B0312EE2C9D4009EBCAD /* SRVideoRechargeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3754B0302EE2C9D4009EBCAD /* SRVideoRechargeView.swift */; };
|
||||
3779D0612ECF1CB8006B1698 /* SRShortHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3779D0602ECF1CB8006B1698 /* SRShortHeaderView.swift */; };
|
||||
47BB39E2DD30787FA591F8EB /* Pods_SynthReel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9255BF4D4B1CFDDB5CFFB43 /* Pods_SynthReel.framework */; };
|
||||
85ACDA2F2EE6B3760009B306 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 85ACDA2E2EE6B3760009B306 /* GoogleService-Info.plist */; };
|
||||
85ACDA312EE6C3640009B306 /* SRVipRetainAlert.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85ACDA302EE6C3640009B306 /* SRVipRetainAlert.swift */; };
|
||||
85AE54682EE7F7940058FEA3 /* SRCoinPackCanReceiveModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE54672EE7F7940058FEA3 /* SRCoinPackCanReceiveModel.swift */; };
|
||||
85AE546A2EE7F8790058FEA3 /* SRCoinsPackAlert.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE54692EE7F8790058FEA3 /* SRCoinsPackAlert.swift */; };
|
||||
85AE546C2EE804A90058FEA3 /* SRHomeCoinsPackButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE546B2EE804A90058FEA3 /* SRHomeCoinsPackButton.swift */; };
|
||||
85AE546E2EE809850058FEA3 /* AppDelegate+SRAPNS.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE546D2EE809850058FEA3 /* AppDelegate+SRAPNS.swift */; };
|
||||
85AE54712EE80AFE0058FEA3 /* adjustManger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE54702EE80AFE0058FEA3 /* adjustManger.swift */; };
|
||||
85AE54732EE80B700058FEA3 /* AppDelegate+adjust.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE54722EE80B700058FEA3 /* AppDelegate+adjust.swift */; };
|
||||
85AE54762EE80D900058FEA3 /* SROpenAppModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE54752EE80D900058FEA3 /* SROpenAppModel.swift */; };
|
||||
85AE54782EE8106F0058FEA3 /* SRApnsAlert.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE54772EE8106F0058FEA3 /* SRApnsAlert.swift */; };
|
||||
85AE547A2EE8154A0058FEA3 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 85AE54792EE8154A0058FEA3 /* GoogleService-Info.plist */; };
|
||||
85AE549C2EE81E730058FEA3 /* SRAppStartViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AE549B2EE81E730058FEA3 /* SRAppStartViewController.swift */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
85AE54992EE818190058FEA3 /* Embed Foundation Extensions */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "";
|
||||
dstSubfolderSpec = 13;
|
||||
files = (
|
||||
);
|
||||
name = "Embed Foundation Extensions";
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
03980F4E2ECEB91C0006E317 /* SRRecommendPlayerViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRRecommendPlayerViewModel.swift; sourceTree = "<group>"; };
|
||||
03980F502ECEBEE20006E317 /* SRRecommendPlayerCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRRecommendPlayerCell.swift; sourceTree = "<group>"; };
|
||||
@ -340,7 +362,6 @@
|
||||
3754AD012EDA8AF7009EBCAD /* SRLoginController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRLoginController.swift; sourceTree = "<group>"; };
|
||||
3754AD192EDD745A009EBCAD /* SRVideoLockView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRVideoLockView.swift; sourceTree = "<group>"; };
|
||||
3754AD1B2EDD77BA009EBCAD /* SRVideoUnlockResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRVideoUnlockResult.swift; sourceTree = "<group>"; };
|
||||
3754AD1D2EDD84DD009EBCAD /* SynthReel.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = SynthReel.entitlements; sourceTree = "<group>"; };
|
||||
3754AD302EDD939A009EBCAD /* SRUserLoginView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRUserLoginView.swift; sourceTree = "<group>"; };
|
||||
3754AD322EDD96E0009EBCAD /* SRLoginButtonView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRLoginButtonView.swift; sourceTree = "<group>"; };
|
||||
3754AD352EDD9AA7009EBCAD /* SRLogin.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRLogin.swift; sourceTree = "<group>"; };
|
||||
@ -499,8 +520,20 @@
|
||||
85ACDA282EE69CD90009B306 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
85ACDA292EE69CD90009B306 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
85ACDA2B2EE69CD90009B306 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
85ACDA2E2EE6B3760009B306 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
|
||||
85ACDA302EE6C3640009B306 /* SRVipRetainAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRVipRetainAlert.swift; sourceTree = "<group>"; };
|
||||
85AE54672EE7F7940058FEA3 /* SRCoinPackCanReceiveModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRCoinPackCanReceiveModel.swift; sourceTree = "<group>"; };
|
||||
85AE54692EE7F8790058FEA3 /* SRCoinsPackAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRCoinsPackAlert.swift; sourceTree = "<group>"; };
|
||||
85AE546B2EE804A90058FEA3 /* SRHomeCoinsPackButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRHomeCoinsPackButton.swift; sourceTree = "<group>"; };
|
||||
85AE546D2EE809850058FEA3 /* AppDelegate+SRAPNS.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AppDelegate+SRAPNS.swift"; sourceTree = "<group>"; };
|
||||
85AE54702EE80AFE0058FEA3 /* adjustManger.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = adjustManger.swift; sourceTree = "<group>"; };
|
||||
85AE54722EE80B700058FEA3 /* AppDelegate+adjust.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AppDelegate+adjust.swift"; sourceTree = "<group>"; };
|
||||
85AE54752EE80D900058FEA3 /* SROpenAppModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SROpenAppModel.swift; sourceTree = "<group>"; };
|
||||
85AE54772EE8106F0058FEA3 /* SRApnsAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRApnsAlert.swift; sourceTree = "<group>"; };
|
||||
85AE54792EE8154A0058FEA3 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
|
||||
85AE54802EE818180058FEA3 /* WidgetKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WidgetKit.framework; path = System/Library/Frameworks/WidgetKit.framework; sourceTree = SDKROOT; };
|
||||
85AE54822EE818180058FEA3 /* SwiftUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SwiftUI.framework; path = System/Library/Frameworks/SwiftUI.framework; sourceTree = SDKROOT; };
|
||||
85AE549A2EE8183A0058FEA3 /* SynthReel.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = SynthReel.entitlements; sourceTree = "<group>"; };
|
||||
85AE549B2EE81E730058FEA3 /* SRAppStartViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SRAppStartViewController.swift; sourceTree = "<group>"; };
|
||||
AA88214030574193B51DE563 /* Pods-SynthReel.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SynthReel.release.xcconfig"; path = "Target Support Files/Pods-SynthReel/Pods-SynthReel.release.xcconfig"; sourceTree = "<group>"; };
|
||||
F9255BF4D4B1CFDDB5CFFB43 /* Pods_SynthReel.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SynthReel.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
@ -570,6 +603,7 @@
|
||||
03B1A8422EC5CB99006C353F /* SRTabBarController.swift */,
|
||||
03B1A8442EC5CBBB006C353F /* SRNavigationController.swift */,
|
||||
03B1A8462EC5CBCF006C353F /* SRViewController.swift */,
|
||||
85AE549B2EE81E730058FEA3 /* SRAppStartViewController.swift */,
|
||||
);
|
||||
path = ViewController;
|
||||
sourceTree = "<group>";
|
||||
@ -659,6 +693,7 @@
|
||||
370D2F2C2ED5AA9700571E77 /* SRViralHitCell.swift */,
|
||||
3754ACC02ED69105009EBCAD /* SRTopChartsHeaderView.swift */,
|
||||
3754ACDB2ED83F80009EBCAD /* SRHomeHistoryBottomView.swift */,
|
||||
85AE546B2EE804A90058FEA3 /* SRHomeCoinsPackButton.swift */,
|
||||
);
|
||||
path = V;
|
||||
sourceTree = "<group>";
|
||||
@ -761,7 +796,7 @@
|
||||
03E9A7C82EC47177000D1067 /* SynthReel */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
3754AD1D2EDD84DD009EBCAD /* SynthReel.entitlements */,
|
||||
85AE549A2EE8183A0058FEA3 /* SynthReel.entitlements */,
|
||||
03E9A7D02EC471D6000D1067 /* Delegate */,
|
||||
03E9A7D22EC47204000D1067 /* Base */,
|
||||
03E9A7D32EC4720F000D1067 /* Class */,
|
||||
@ -778,6 +813,8 @@
|
||||
03E9A7BF2EC47177000D1067 /* AppDelegate.swift */,
|
||||
03E9A7C62EC47177000D1067 /* SceneDelegate.swift */,
|
||||
03B1A83F2EC5CA2E006C353F /* AppDelegate+Config.swift */,
|
||||
85AE546D2EE809850058FEA3 /* AppDelegate+SRAPNS.swift */,
|
||||
85AE54722EE80B700058FEA3 /* AppDelegate+adjust.swift */,
|
||||
);
|
||||
path = Delegate;
|
||||
sourceTree = "<group>";
|
||||
@ -785,9 +822,9 @@
|
||||
03E9A7D12EC471F3000D1067 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
85AE54792EE8154A0058FEA3 /* GoogleService-Info.plist */,
|
||||
03E9A7C02EC47177000D1067 /* Assets.xcassets */,
|
||||
03E9A7C12EC47177000D1067 /* Info.plist */,
|
||||
85ACDA2E2EE6B3760009B306 /* GoogleService-Info.plist */,
|
||||
03E9A7C32EC47177000D1067 /* LaunchScreen.storyboard */,
|
||||
03B1A8562EC5E4F1006C353F /* Localizable.strings */,
|
||||
03B1A8692EC6BD49006C353F /* Bridging-Header.h */,
|
||||
@ -798,6 +835,7 @@
|
||||
03E9A7D22EC47204000D1067 /* Base */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
85AE54742EE80D7A0058FEA3 /* Model */,
|
||||
3754ACE22ED93E04009EBCAD /* webview */,
|
||||
03B1A8412EC5CB4F006C353F /* ViewController */,
|
||||
03B1A8D62EC6D03A006C353F /* View */,
|
||||
@ -826,8 +864,9 @@
|
||||
03E9A7D42EC4764A000D1067 /* Libs */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
3754AF022EDED751009EBCAD /* SRAppstore */,
|
||||
3754AEFF2EDED691009EBCAD /* payManger */,
|
||||
85AE546F2EE80AE40058FEA3 /* adjust */,
|
||||
3754AF022EDED751009EBCAD /* SRAppstore */,
|
||||
3754AD342EDD9A8F009EBCAD /* SRLogin */,
|
||||
3754ACD82ED83724009EBCAD /* FSPagerView */,
|
||||
3754ACCF2ED81F2F009EBCAD /* Alert */,
|
||||
@ -980,6 +1019,7 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
3754ACD02ED81F55009EBCAD /* SRBaseAlert.swift */,
|
||||
85AE54772EE8106F0058FEA3 /* SRApnsAlert.swift */,
|
||||
);
|
||||
path = Alert;
|
||||
sourceTree = "<group>";
|
||||
@ -1021,6 +1061,7 @@
|
||||
3754B0162EE12633009EBCAD /* SRCoinPackConfirmItemView.swift */,
|
||||
3754B0182EE1267B009EBCAD /* SRCoinPackConfirmItem1View.swift */,
|
||||
3754B01A2EE12690009EBCAD /* SRCoinPackConfirmItem2View.swift */,
|
||||
85AE54692EE7F8790058FEA3 /* SRCoinsPackAlert.swift */,
|
||||
);
|
||||
path = view;
|
||||
sourceTree = "<group>";
|
||||
@ -1131,6 +1172,7 @@
|
||||
children = (
|
||||
3754ACFB2ED9A36C009EBCAD /* SRCoinsPackModel.swift */,
|
||||
3754ACFD2ED9A3A0009EBCAD /* SRCoinsPackReceiveModel.swift */,
|
||||
85AE54672EE7F7940058FEA3 /* SRCoinPackCanReceiveModel.swift */,
|
||||
);
|
||||
path = M;
|
||||
sourceTree = "<group>";
|
||||
@ -1532,6 +1574,22 @@
|
||||
path = "tokenizedHrtf 2";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
85AE546F2EE80AE40058FEA3 /* adjust */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
85AE54702EE80AFE0058FEA3 /* adjustManger.swift */,
|
||||
);
|
||||
path = adjust;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
85AE54742EE80D7A0058FEA3 /* Model */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
85AE54752EE80D900058FEA3 /* SROpenAppModel.swift */,
|
||||
);
|
||||
path = Model;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8CAFCEC2C631CAE75726D90C /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@ -1545,6 +1603,8 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F9255BF4D4B1CFDDB5CFFB43 /* Pods_SynthReel.framework */,
|
||||
85AE54802EE818180058FEA3 /* WidgetKit.framework */,
|
||||
85AE54822EE818180058FEA3 /* SwiftUI.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
@ -1561,6 +1621,7 @@
|
||||
03E9A7A42EC4716A000D1067 /* Frameworks */,
|
||||
03E9A7A52EC4716A000D1067 /* Resources */,
|
||||
92A47CFFAED31670C9452A17 /* [CP] Embed Pods Frameworks */,
|
||||
85AE54992EE818190058FEA3 /* Embed Foundation Extensions */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@ -1579,7 +1640,7 @@
|
||||
attributes = {
|
||||
BuildIndependentTargetsInParallel = 1;
|
||||
CLASSPREFIX = SR;
|
||||
LastSwiftUpdateCheck = 2600;
|
||||
LastSwiftUpdateCheck = 1610;
|
||||
LastUpgradeCheck = 2600;
|
||||
ORGANIZATIONNAME = SR;
|
||||
TargetAttributes = {
|
||||
@ -1620,7 +1681,7 @@
|
||||
files = (
|
||||
03E9A7CC2EC47177000D1067 /* Assets.xcassets in Resources */,
|
||||
03B1A8582EC5E4F1006C353F /* Localizable.strings in Resources */,
|
||||
85ACDA2F2EE6B3760009B306 /* GoogleService-Info.plist in Resources */,
|
||||
85AE547A2EE8154A0058FEA3 /* GoogleService-Info.plist in Resources */,
|
||||
03B1A8DD2EC6D0EB006C353F /* SRHomeChildCell.xib in Resources */,
|
||||
03E9A7CE2EC47177000D1067 /* LaunchScreen.storyboard in Resources */,
|
||||
);
|
||||
@ -1676,6 +1737,7 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
03B1A9402ECC45BA006C353F /* SRTableViewCell.swift in Sources */,
|
||||
85AE54682EE7F7940058FEA3 /* SRCoinPackCanReceiveModel.swift in Sources */,
|
||||
03E9A7EA2EC4995D000D1067 /* SRKeychain.swift in Sources */,
|
||||
03E9A7D92EC47B90000D1067 /* SRNetworkReachableManager.swift in Sources */,
|
||||
3754ACF82ED9A32C009EBCAD /* SRCoinPackHeaderView.swift in Sources */,
|
||||
@ -1690,6 +1752,7 @@
|
||||
3754B0312EE2C9D4009EBCAD /* SRVideoRechargeView.swift in Sources */,
|
||||
3754AF1C2EDEF112009EBCAD /* SRStoreCoinsView.swift in Sources */,
|
||||
03B1A8452EC5CBBB006C353F /* SRNavigationController.swift in Sources */,
|
||||
85AE54712EE80AFE0058FEA3 /* adjustManger.swift in Sources */,
|
||||
03B1A9092ECAAF55006C353F /* SRHomeTopChartsView.swift in Sources */,
|
||||
03E9A7E42EC49593000D1067 /* SRUrlPath.swift in Sources */,
|
||||
3754AF122EDEDEBF009EBCAD /* SRIapOrderModel.swift in Sources */,
|
||||
@ -1701,10 +1764,13 @@
|
||||
03B1A9172ECAF14F006C353F /* SRHomeHotView.swift in Sources */,
|
||||
03B1A8FD2EC81C62006C353F /* SRHomeBannerCell.swift in Sources */,
|
||||
3754AF2A2EDEF425009EBCAD /* SRStoreCoinsCell.swift in Sources */,
|
||||
85AE54762EE80D900058FEA3 /* SROpenAppModel.swift in Sources */,
|
||||
03E9A7DB2EC485BE000D1067 /* SRNetwork.swift in Sources */,
|
||||
85AE546A2EE7F8790058FEA3 /* SRCoinsPackAlert.swift in Sources */,
|
||||
370D2F152ED457F000571E77 /* SRUserTopCell.swift in Sources */,
|
||||
3754ACBD2ED5B6B6009EBCAD /* UINavigationBar+SRAdd.swift in Sources */,
|
||||
3754ACE82ED93ED9009EBCAD /* SRWebMessageModel.swift in Sources */,
|
||||
85AE54732EE80B700058FEA3 /* AppDelegate+adjust.swift in Sources */,
|
||||
03E9A7F42EC4A94D000D1067 /* SRAccountToken.swift in Sources */,
|
||||
3754ACD12ED81F55009EBCAD /* SRBaseAlert.swift in Sources */,
|
||||
370D2F222ED54CA400571E77 /* SRPrivacyController.swift in Sources */,
|
||||
@ -1740,6 +1806,7 @@
|
||||
03E9A7EC2EC499A9000D1067 /* SRDeviceId.swift in Sources */,
|
||||
03E9A7E22EC494F9000D1067 /* SRTargetType.swift in Sources */,
|
||||
370D2F092ED44A6D00571E77 /* SRListMenuCell.swift in Sources */,
|
||||
85AE549C2EE81E730058FEA3 /* SRAppStartViewController.swift in Sources */,
|
||||
03980F532ECEDEAB0006E317 /* SRRecommendPlayerControlView.swift in Sources */,
|
||||
03B1A90F2ECAC768006C353F /* SRHomeBingeWorthyView.swift in Sources */,
|
||||
3754B0192EE1267B009EBCAD /* SRCoinPackConfirmItem1View.swift in Sources */,
|
||||
@ -1753,6 +1820,7 @@
|
||||
3754AD332EDD96E0009EBCAD /* SRLoginButtonView.swift in Sources */,
|
||||
03B1A8402EC5CA37006C353F /* AppDelegate+Config.swift in Sources */,
|
||||
03B1A9152ECAEE63006C353F /* SRHomeViralHitsCell.swift in Sources */,
|
||||
85AE546E2EE809850058FEA3 /* AppDelegate+SRAPNS.swift in Sources */,
|
||||
03B1A8472EC5CBCF006C353F /* SRViewController.swift in Sources */,
|
||||
3754AF192EDEF0AF009EBCAD /* SRStoreController.swift in Sources */,
|
||||
370D2F052ED3FEE700571E77 /* SRHistoryCell.swift in Sources */,
|
||||
@ -1764,6 +1832,7 @@
|
||||
3754AF262EDEF3A7009EBCAD /* SRSmallCoinViewCell.swift in Sources */,
|
||||
03B1A8D82EC6D051006C353F /* SRCollectionView.swift in Sources */,
|
||||
03B1A90D2ECAC51A006C353F /* NSNumber+SRAdd.swift in Sources */,
|
||||
85AE54782EE8106F0058FEA3 /* SRApnsAlert.swift in Sources */,
|
||||
3754AF082EDED91C009EBCAD /* SRPayDateModel.swift in Sources */,
|
||||
03E9A7DD2EC485E1000D1067 /* SRNetworkModel.swift in Sources */,
|
||||
3754ACEC2ED943AB009EBCAD /* SRAppWebViewController.swift in Sources */,
|
||||
@ -1844,6 +1913,7 @@
|
||||
03B1A93C2ECC406E006C353F /* SRHotSearchView.swift in Sources */,
|
||||
03B1A8E32EC6F577006C353F /* SRHomeMenuCell.swift in Sources */,
|
||||
3754AD362EDD9AA7009EBCAD /* SRLogin.swift in Sources */,
|
||||
85AE546C2EE804A90058FEA3 /* SRHomeCoinsPackButton.swift in Sources */,
|
||||
3754AF142EDEE1AC009EBCAD /* SRStatAPI.swift in Sources */,
|
||||
3754B01B2EE12690009EBCAD /* SRCoinPackConfirmItem2View.swift in Sources */,
|
||||
3754ACE12ED93C4D009EBCAD /* SRCoinPackController.swift in Sources */,
|
||||
@ -1898,7 +1968,7 @@
|
||||
CODE_SIGN_ENTITLEMENTS = SynthReel/SynthReel.entitlements;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
CURRENT_PROJECT_VERSION = 1.1;
|
||||
DEVELOPMENT_TEAM = 9JR2Y32ZU3;
|
||||
EXCLUDED_ARCHS = "";
|
||||
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
|
||||
@ -1914,7 +1984,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0;
|
||||
MARKETING_VERSION = 1.0.1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.SynthReel.Tv.lssj;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
@ -1942,7 +2012,7 @@
|
||||
CODE_SIGN_ENTITLEMENTS = SynthReel/SynthReel.entitlements;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
CURRENT_PROJECT_VERSION = 1.1;
|
||||
DEVELOPMENT_TEAM = 9JR2Y32ZU3;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
INFOPLIST_FILE = SynthReel/Source/Info.plist;
|
||||
@ -1956,7 +2026,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.0;
|
||||
MARKETING_VERSION = 1.0.1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.SynthReel.Tv.lssj;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeApi.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRShortApi.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRStatAPI.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/2.
|
||||
// Created by 澜声世纪 on 2025/12/2.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -42,7 +42,7 @@ class SRStatAPI: NSObject {
|
||||
var param = SRNetwork.Parameters(path: "/createOrder")
|
||||
param.method = .post
|
||||
param.parameters = [
|
||||
"userId" : SRAccountManager.manager.userInfo?.customer_id ?? "",
|
||||
"userId" : SRLogin.manager.userInfo?.customer_id ?? "",
|
||||
"short_play_video_id" : videoId ?? "0",
|
||||
"short_play_id" : shortPlayId ?? "0",
|
||||
"event_key" : eventKey.rawValue,
|
||||
@ -64,4 +64,35 @@ class SRStatAPI: NSObject {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static func requestUploadApnsAuthorizationStatus(_ status: Bool) async {
|
||||
await withCheckedContinuation { continuation in
|
||||
var param = SRNetwork.Parameters(path: "/customer/uploadNoticeStatus")
|
||||
param.method = .post
|
||||
param.parameters = [
|
||||
"is_open_notice" : status ? 1 : 0
|
||||
]
|
||||
SRNetwork.request(parameters: param) { (_: SRNetwork.Response<String>) in
|
||||
continuation.resume()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extension SRStatAPI {
|
||||
///更新通知状态
|
||||
static func uploadApnsAuthorizationStatus() {
|
||||
UNUserNotificationCenter.current().getNotificationSettings { settings in
|
||||
if settings.authorizationStatus == .authorized {
|
||||
Task {
|
||||
await requestUploadApnsAuthorizationStatus(true)
|
||||
}
|
||||
|
||||
} else if settings.authorizationStatus == .denied {
|
||||
Task {
|
||||
await requestUploadApnsAuthorizationStatus(false)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRStoreAPI.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/2.
|
||||
// Created by 澜声世纪 on 2025/12/2.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -72,9 +72,23 @@ class SRStoreAPI: NSObject {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static func requestCoinBagCanReceiveInfo() async -> SRCoinPackCanReceiveModel? {
|
||||
await withCheckedContinuation { continuation in
|
||||
var param = SRNetwork.Parameters(path: "/getReceiveDayCoin")
|
||||
param.method = .get
|
||||
SRNetwork.request(parameters: param) { (response: SRNetwork.Response<SRCoinPackCanReceiveModel>) in
|
||||
continuation.resume(returning: response.data)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
static func requestReceiveCoinsPackCoins(id: String?) async -> Bool {
|
||||
await withCheckedContinuation { continuation in
|
||||
var param = SRNetwork.Parameters(path: "/getReceiveDayCoinInfo")
|
||||
var param = SRNetwork.Parameters(path: "/receiveDayCoin")
|
||||
param.method = .post
|
||||
param.parameters = [
|
||||
"id" : id ?? ""
|
||||
@ -94,7 +108,12 @@ class SRStoreAPI: NSObject {
|
||||
var param = SRNetwork.Parameters(path: "/getRetainVipPaySetting")
|
||||
param.method = .get
|
||||
SRNetwork.request(parameters: param) { (response: SRNetwork.Response<SRPayAlertModel>) in
|
||||
continuation.resume(returning: response.data)
|
||||
if let model = response.data,
|
||||
model.info != nil {
|
||||
continuation.resume(returning: model)
|
||||
} else {
|
||||
continuation.resume(returning: nil)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRUserApi.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -80,7 +80,7 @@ struct SRUserApi {
|
||||
|
||||
static func requestUploadApnsDeviceToken(token: String) async {
|
||||
await withCheckedContinuation { continuation in
|
||||
var param = SRNetwork.Parameters(path: "/customer/onLine")
|
||||
var param = SRNetwork.Parameters(path: "/customer/firebaseToken")
|
||||
param.method = .post
|
||||
param.parameters = [
|
||||
"fcm_token": token
|
||||
@ -111,4 +111,17 @@ struct SRUserApi {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static func requestUploadW2a(data: String) async {
|
||||
await withCheckedContinuation { continuation in
|
||||
var param = SRNetwork.Parameters(path: "/w2aSelfAttribution")
|
||||
param.method = .post
|
||||
param.parameters = [
|
||||
"data": data
|
||||
]
|
||||
SRNetwork.request(parameters: param) { (_: SRNetwork.Response<String>) in
|
||||
continuation.resume()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRDefine.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
import UIKit
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRUserDefaultsKey.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// Dictionary+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// NSNumber+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// String+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -36,3 +36,22 @@ extension String: SmartCodable {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
extension String {
|
||||
///将url中的参数转换成字典
|
||||
func urlQuryToDictionary() -> [String : Any] {
|
||||
let array = self.components(separatedBy: "&")
|
||||
var tempDic: [String : Any] = [:]
|
||||
|
||||
array.forEach {
|
||||
if let strRange = $0.range(of: "=") {
|
||||
var key: String = String($0.prefix(upTo: strRange.upperBound))
|
||||
key.removeLast()
|
||||
var value: String = String($0.suffix(from: strRange.upperBound))
|
||||
value = value.removingPercentEncoding ?? value
|
||||
tempDic[key] = value
|
||||
}
|
||||
}
|
||||
return tempDic
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// UIFont+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// UINavigationBar+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/25.
|
||||
// Created by 澜声世纪 on 2025/11/25.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// UIScreen+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// UIScrollView+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// UIStackView+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// UIView+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// UserDefaults+SRAdd.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
26
SynthReel/Base/Model/SROpenAppModel.swift
Normal file
26
SynthReel/Base/Model/SROpenAppModel.swift
Normal file
@ -0,0 +1,26 @@
|
||||
//
|
||||
// SROpenAppModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 澜声世纪 on 2025/12/9.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
import SmartCodable
|
||||
|
||||
struct SROpenAppModel: SmartCodable {
|
||||
|
||||
enum Path: String, SmartCaseDefaultable {
|
||||
case videoDetail = "detail"
|
||||
///反馈列表
|
||||
case feedback = "feedback"
|
||||
///活动
|
||||
case promotion = "promotion"
|
||||
}
|
||||
|
||||
var id: String?
|
||||
var message_id: String?
|
||||
var short_play_id: String?
|
||||
var path: Path?
|
||||
}
|
||||
@ -2,7 +2,7 @@
|
||||
// SRNetwork.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -20,7 +20,8 @@ class SRNetwork: NSObject {
|
||||
|
||||
static func request<T>(parameters: SRNetwork.Parameters, completion: ((_ response: SRNetwork.Response<T>) -> Void)?) {
|
||||
|
||||
if SRAccountManager.manager.token == nil {
|
||||
if SRLogin.manager.token == nil {
|
||||
print(SRLogin.manager.token ?? "123")
|
||||
self.requestToken(completer: nil)
|
||||
}
|
||||
|
||||
@ -81,7 +82,7 @@ class SRNetwork: NSObject {
|
||||
self.requestToken { token in
|
||||
if token != nil {
|
||||
_Concurrency.Task {
|
||||
await SRAccountManager.manager.updateUserInfo()
|
||||
await SRLogin.manager.requestUserToken(completer: nil)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -164,7 +165,7 @@ class SRNetwork: NSObject {
|
||||
|
||||
extension SRNetwork {
|
||||
///获取token
|
||||
static func requestToken(completer: ((_ token: SRAccountToken?) -> Void)?) {
|
||||
static func requestToken(completer: ((_ token: SRTokenModel?) -> Void)?) {
|
||||
guard self.tokenOperation == nil else {
|
||||
completer?(nil)
|
||||
return
|
||||
@ -173,11 +174,11 @@ extension SRNetwork {
|
||||
self.tokenOperation = BlockOperation(block: {
|
||||
let semaphore = DispatchSemaphore(value: 0)
|
||||
let param = SRNetwork.Parameters(path: "/customer/register")
|
||||
|
||||
print("chongfu")
|
||||
DispatchQueue.main.async {
|
||||
SRNetwork.request(parameters: param) { (response: SRNetwork.Response<SRAccountToken>) in
|
||||
SRNetwork.request(parameters: param) { (response: SRNetwork.Response<SRTokenModel>) in
|
||||
if let token = response.data {
|
||||
SRAccountManager.manager.setAccountToken(token)
|
||||
SRLogin.manager.loginSuccessSaveToken(token)
|
||||
}
|
||||
do { semaphore.signal() }
|
||||
self.tokenOperation = nil
|
||||
@ -189,5 +190,4 @@ extension SRNetwork {
|
||||
operationQueue.addOperation(self.tokenOperation!)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRNetworkModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRNetworkReachableManager.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRResponseCryptor.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRTargetType.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -56,7 +56,7 @@ extension SRTargetType: TargetType {
|
||||
"device-id" : SRDeviceId.shared.id, //设备id
|
||||
"system-type" : "ios",
|
||||
"model" : UIDevice.current.machineModelName ?? "",
|
||||
"authorization" : SRAccountManager.manager.token?.token ?? "",
|
||||
"authorization" : SRLogin.manager.token?.token ?? "",
|
||||
"device-gaid" : UIDevice.current.identifierForVendor?.uuidString ?? "",
|
||||
"product-prefix" : "SynthReel"
|
||||
]
|
||||
|
||||
@ -2,14 +2,12 @@
|
||||
// SRUrlPath.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/12.
|
||||
// Created by 澜声世纪 on 2025/11/12.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
let SRBaseURL = "https://api-synthreeltv.synthreeltv.com"
|
||||
//let SRBaseURL = "https://api-univicos.univicos.com"
|
||||
let SRUrlPathPrefix = "/th"
|
||||
//let SRUrlPathPrefix = "/uni"
|
||||
let SRWebBaseURL = "https://www.synthreeltv.com"
|
||||
let SRCampaignWebURL = "https://campaign.synthreeltv.com"
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCollectionView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRGradientView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRGradientbutton.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/27.
|
||||
// Created by 澜声世纪 on 2025/11/27.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRImageView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRLabel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRNavgationTitleView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/25.
|
||||
// Created by 澜声世纪 on 2025/11/25.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRPanModalContentView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRScrollView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRTableView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRTableViewCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
52
SynthReel/Base/ViewController/SRAppStartViewController.swift
Normal file
52
SynthReel/Base/ViewController/SRAppStartViewController.swift
Normal file
@ -0,0 +1,52 @@
|
||||
//
|
||||
// SRAppStartViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 澜声世纪 on 2025/12/9.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
class SRAppStartViewController: SRViewController {
|
||||
|
||||
var openAppBlock: (() -> Void)?
|
||||
|
||||
private lazy var lanuchVC: UIViewController? = {
|
||||
let vc = SRTool.lanuchViewController
|
||||
return vc
|
||||
}()
|
||||
|
||||
private lazy var startButton: UIButton = {
|
||||
let button = SRGradientbutton(type: .custom, primaryAction: UIAction(handler: { [weak self] _ in
|
||||
guard let self = self else { return }
|
||||
self.openAppBlock?()
|
||||
}))
|
||||
button.setBackgroundImage(.startButton, for: .normal)
|
||||
button.setTitle("start", for: .normal)
|
||||
button.setTitleColor(.white, for: .normal)
|
||||
button.titleLabel?.font = .font(ofSize:16, weight: .semibold)
|
||||
return button
|
||||
}()
|
||||
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
|
||||
if let vc = lanuchVC {
|
||||
addChild(vc)
|
||||
view.addSubview(vc.view)
|
||||
}
|
||||
|
||||
view.addSubview(startButton)
|
||||
|
||||
startButton.snp.makeConstraints { make in
|
||||
make.left.right.equalToSuperview().inset(48)
|
||||
make.height.equalTo(50)
|
||||
make.bottom.equalToSuperview().offset(-(UIScreen.safeBottom + 110))
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRNavigationController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRTabBarController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRAppWebViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -52,7 +52,7 @@ extension SRAppWebViewController {
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) { [weak self] in
|
||||
guard let self = self else { return }
|
||||
var dic = [
|
||||
"token" : SRAccountManager.manager.token?.token ?? "",
|
||||
"token" : SRLogin.manager.token?.token ?? "",
|
||||
"time_zone" : String.timeZone(),
|
||||
// "lang" : FALanguageManager.manager.currentLanguageKey,
|
||||
"lang" : "en",
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRBaseWebViewController + Script.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -75,7 +75,7 @@ extension SRBaseWebViewController {
|
||||
|
||||
case kSRWebMessageAccountDeletionFinish:
|
||||
self.navigationController?.popToRootViewController(animated: true)
|
||||
// NotificationCenter.default.post(name: FALogin.loginStatusChangeNotification, object: nil)
|
||||
NotificationCenter.default.post(name: SRLogin.loginStatusChangeNotification, object: nil)
|
||||
|
||||
default:
|
||||
break
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRBaseWebViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRWebMessageModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRWebView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
14
SynthReel/Class/Coinpack/M/SRCoinPackCanReceiveModel.swift
Normal file
14
SynthReel/Class/Coinpack/M/SRCoinPackCanReceiveModel.swift
Normal file
@ -0,0 +1,14 @@
|
||||
//
|
||||
// SRCoinPackCanReceiveModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 澜声世纪 on 2025/12/9.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
import SmartCodable
|
||||
|
||||
struct SRCoinPackCanReceiveModel: SmartCodable {
|
||||
var coins: Int?
|
||||
}
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinsPackModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinsPackReceiveModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinPackController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinPackConfirmItem1View.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/4.
|
||||
// Created by 澜声世纪 on 2025/12/4.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinPackConfirmItem2View.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/4.
|
||||
// Created by 澜声世纪 on 2025/12/4.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinPackConfirmItemView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/4.
|
||||
// Created by 澜声世纪 on 2025/12/4.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinPackConfirmView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/4.
|
||||
// Created by 澜声世纪 on 2025/12/4.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinPackHeaderView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/28.
|
||||
// Created by 澜声世纪 on 2025/11/28.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -96,7 +96,7 @@ class SRCoinPackHeaderView: UIView {
|
||||
// 创建富文本标题
|
||||
let coinImage = UIImage(named: "smallCoins")!
|
||||
let coinText = NSTextAttachment(image: coinImage)
|
||||
coinText.bounds = CGRect(x: 0, y: -2.5, width: coinImage.size.width, height: coinImage.size.height)
|
||||
coinText.bounds = CGRect(x: 0, y: -2.5, width: 13, height: 13)
|
||||
let coinAtt = AttributedString(NSAttributedString(attachment: coinText))
|
||||
|
||||
let textAtt = AttributedString("synthreel_claim_all".localized + " ", attributes: AttributeContainer([
|
||||
|
||||
124
SynthReel/Class/Coinpack/view/SRCoinsPackAlert.swift
Normal file
124
SynthReel/Class/Coinpack/view/SRCoinsPackAlert.swift
Normal file
@ -0,0 +1,124 @@
|
||||
//
|
||||
// SRCoinsPackAlert.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 澜声世纪 on 2025/12/9.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
class SRCoinsPackAlert: SRBaseAlert {
|
||||
|
||||
var claimButtonClick: (() -> Void)?
|
||||
var coinsCount: Int? {
|
||||
didSet {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private lazy var imageView = UIImageView(image: UIImage(named: "coinalertBg"))
|
||||
|
||||
private lazy var titleLabel: UILabel = {
|
||||
let label = UILabel()
|
||||
label.font = .font(ofSize: 18, weight: .bold)
|
||||
label.textColor = .white
|
||||
label.textAlignment = .center
|
||||
label.numberOfLines = 0
|
||||
label.text = "coins_pack_alert_title".localized
|
||||
return label
|
||||
}()
|
||||
|
||||
private lazy var moreCoinimageView = UIImageView(image: UIImage(named: "moreCoins"))
|
||||
|
||||
private lazy var coinLabel: SRLabel = {
|
||||
let label = SRLabel()
|
||||
label.textColors = [UIColor.F_1_FF_2_F.cgColor, UIColor.srBlue.cgColor]
|
||||
label.textStartPoint = .init(x: 0, y: 0.5)
|
||||
label.textEndPoint = .init(x: 1, y: 0.5)
|
||||
label.font = .font(ofSize: 20, weight: .semibold)
|
||||
return label
|
||||
}()
|
||||
|
||||
private lazy var claimButton: UIButton = {
|
||||
let button = UIButton(type: .custom)
|
||||
button.setTitle("synthreel_claim_now".localized, for: .normal)
|
||||
button.setTitleColor(.black, for: .normal)
|
||||
button.titleLabel?.font = .font(ofSize: 16, weight: .semibold)
|
||||
button.setBackgroundImage(.cliamNowBg, for: .normal)
|
||||
button.addTarget(self, action: #selector(claimButtonAciton), for: .touchUpInside)
|
||||
return button
|
||||
}()
|
||||
|
||||
private lazy var laterButton: UIButton = {
|
||||
let button = UIButton(type: .custom)
|
||||
button.setTitle("synthreel_open_notification_later".localized, for: .normal)
|
||||
button.setTitleColor(.FFFFFF_40, for: .normal)
|
||||
button.titleLabel?.font = .font(ofSize: 14, weight: .regular)
|
||||
button.addTarget(self, action: #selector(dismiss), for: .touchUpInside)
|
||||
return button
|
||||
}()
|
||||
|
||||
override init(frame: CGRect) {
|
||||
super.init(frame: frame)
|
||||
|
||||
|
||||
fa_setupLayout()
|
||||
}
|
||||
|
||||
@MainActor required init?(coder: NSCoder) {
|
||||
fatalError("init(coder:) has not been implemented")
|
||||
}
|
||||
|
||||
@objc func claimButtonAciton () {
|
||||
self.claimButtonClick?()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
extension SRCoinsPackAlert {
|
||||
|
||||
private func fa_setupLayout() {
|
||||
contentView.addSubview(imageView)
|
||||
imageView.addSubview(titleLabel)
|
||||
imageView.addSubview(moreCoinimageView)
|
||||
imageView.addSubview(coinLabel)
|
||||
imageView.addSubview(claimButton)
|
||||
imageView.addSubview(laterButton)
|
||||
|
||||
imageView.isUserInteractionEnabled = true
|
||||
imageView.snp.makeConstraints { make in
|
||||
make.edges.equalToSuperview()
|
||||
}
|
||||
|
||||
titleLabel.snp.makeConstraints { make in
|
||||
make.left.equalTo(17)
|
||||
make.right.lessThanOrEqualToSuperview().offset(-110)
|
||||
make.top.equalTo(15)
|
||||
}
|
||||
|
||||
moreCoinimageView.snp.makeConstraints { make in
|
||||
make.centerX.equalToSuperview()
|
||||
make.top.equalTo(titleLabel.snp.bottom).offset(35)
|
||||
}
|
||||
|
||||
coinLabel.snp.makeConstraints { make in
|
||||
make.centerX.equalToSuperview()
|
||||
make.top.equalTo(moreCoinimageView.snp.bottom).offset(2)
|
||||
}
|
||||
|
||||
claimButton.snp.makeConstraints { make in
|
||||
make.top.equalTo(coinLabel.snp.bottom).offset(35)
|
||||
make.left.right.equalToSuperview().inset(17)
|
||||
make.height.equalTo(48)
|
||||
}
|
||||
|
||||
laterButton.snp.makeConstraints { make in
|
||||
make.left.right.height.equalTo(claimButton)
|
||||
make.top.equalTo(claimButton.snp.bottom).offset(1)
|
||||
make.bottom.equalToSuperview().offset(-13)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinsPackBuyView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/4.
|
||||
// Created by 澜声世纪 on 2025/12/4.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -104,7 +104,7 @@ extension SRCoinsPackBuyView: UICollectionViewDelegate, UICollectionViewDataSour
|
||||
view.buyFinishHandle = { [weak self] in
|
||||
guard let self = self else { return }
|
||||
Task {
|
||||
await SRAccountManager.manager.updateUserInfo()
|
||||
await SRLogin.manager.requestUserInfo(completer: nil)
|
||||
self.buyFinishHandle?()
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinsPackClaimListCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/4.
|
||||
// Created by 澜声世纪 on 2025/12/4.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -82,7 +82,7 @@ class SRCoinsPackClaimListCell: UICollectionViewCell {
|
||||
button.configuration?.background.image = UIImage(named: "coinStackBg")
|
||||
let coinImage = UIImage(named: "bigCoins")!
|
||||
let coinText = NSTextAttachment(image: coinImage)
|
||||
coinText.bounds = .init(x: 0, y: -2.5, width: coinImage.size.width, height: coinImage.size.height)
|
||||
coinText.bounds = .init(x: 0, y: -2.5, width: 13, height: 13)
|
||||
let coinAtt = AttributedString(NSAttributedString(attachment: coinText))
|
||||
let countAtt = AttributedString(" \(self.model?.receive_coins ?? 0)", attributes: AttributeContainer([
|
||||
.font : UIFont.font(ofSize: 12, weight: .bold),
|
||||
@ -90,7 +90,7 @@ class SRCoinsPackClaimListCell: UICollectionViewCell {
|
||||
]))
|
||||
|
||||
|
||||
button.configuration?.attributedTitle = AttributedString("fableon_claim".localized, attributes: AttributeContainer([
|
||||
button.configuration?.attributedTitle = AttributedString("synthreel_claim".localized, attributes: AttributeContainer([
|
||||
.font : UIFont.font(ofSize: 14, weight: .bold),
|
||||
.foregroundColor : UIColor.white
|
||||
]))
|
||||
@ -175,7 +175,7 @@ extension SRCoinsPackClaimListCell {
|
||||
|
||||
coinsView1.snp.makeConstraints { make in
|
||||
make.left.equalToSuperview().offset(12)
|
||||
make.bottom.equalToSuperview().offset(-18)
|
||||
make.bottom.equalToSuperview().offset(-14)
|
||||
}
|
||||
|
||||
lineView2.snp.makeConstraints { make in
|
||||
@ -190,7 +190,7 @@ extension SRCoinsPackClaimListCell {
|
||||
|
||||
claimButton.snp.makeConstraints { make in
|
||||
make.right.equalToSuperview().offset(-12)
|
||||
make.centerY.equalTo(coinsView1)
|
||||
make.bottom.equalTo(-14)
|
||||
make.height.equalTo(48)
|
||||
make.width.equalTo(120)
|
||||
}
|
||||
@ -221,14 +221,12 @@ extension SRCoinsPackClaimListCell {
|
||||
return label
|
||||
}()
|
||||
|
||||
private lazy var iconImageView = UIImageView(image: UIImage(named: "coins_icon_03"))
|
||||
private lazy var iconImageView = UIImageView(image: UIImage(named: "bigCoins"))
|
||||
|
||||
private lazy var coinsLabel: UILabel = {
|
||||
let label = SRLabel()
|
||||
label.font = .font(ofSize: 14, weight: .bold)
|
||||
label.textColors = [UIColor._4_CFFD_4.cgColor, UIColor._51_D_4_FF.cgColor]
|
||||
label.textStartPoint = .init(x: 0.5, y: 0)
|
||||
label.textEndPoint = .init(x: 0.5, y: 1)
|
||||
label.textColor = .white
|
||||
label.text = "0"
|
||||
return label
|
||||
}()
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCoinsPackClaimListView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/12/4.
|
||||
// Created by 澜声世纪 on 2025/12/4.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRCategoryModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeModuleItem.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeBannerCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeBannerMiniCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeBannerView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeBingeWorthyCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeBingeWorthyView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeChildCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
50
SynthReel/Class/Home/V/SRHomeCoinsPackButton.swift
Normal file
50
SynthReel/Class/Home/V/SRHomeCoinsPackButton.swift
Normal file
@ -0,0 +1,50 @@
|
||||
//
|
||||
// SRHomeCoinsPackButton.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 澜声世纪 on 2025/12/9.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
class SRHomeCoinsPackButton: UIControl {
|
||||
|
||||
private lazy var bgImageView = UIImageView(image: UIImage(named: "浮窗"))
|
||||
private lazy var textBgImageView = UIImageView(image: UIImage(named: "Rectangle 1098"))
|
||||
|
||||
private lazy var textLabel: UILabel = {
|
||||
let label = UILabel()
|
||||
label.font = .font(ofSize: 10, weight: .init(900)).withBoldItalic()
|
||||
label.textColor = .white
|
||||
label.text = "synthreel_daily_coins".localized
|
||||
return label
|
||||
}()
|
||||
|
||||
override init(frame: CGRect) {
|
||||
super.init(frame: frame)
|
||||
|
||||
addSubview(bgImageView)
|
||||
addSubview(textBgImageView)
|
||||
textBgImageView.addSubview(textLabel)
|
||||
|
||||
bgImageView.snp.makeConstraints { make in
|
||||
make.left.right.top.equalToSuperview()
|
||||
}
|
||||
|
||||
textBgImageView.snp.makeConstraints { make in
|
||||
make.centerX.equalToSuperview()
|
||||
make.bottom.equalToSuperview()
|
||||
make.top.equalToSuperview().offset(50)
|
||||
}
|
||||
|
||||
textLabel.snp.makeConstraints { make in
|
||||
make.centerY.equalToSuperview()
|
||||
make.centerX.equalToSuperview()
|
||||
}
|
||||
}
|
||||
|
||||
required init?(coder: NSCoder) {
|
||||
fatalError("init(coder:) has not been implemented")
|
||||
}
|
||||
}
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeHeaderView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeHistoryBottomView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/27.
|
||||
// Created by 澜声世纪 on 2025/11/27.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeHotView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeMenuCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeModuleView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomePremiereNowView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeTopChartsContentView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeTopChartsView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeViralHitsCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeViralHitsView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/17.
|
||||
// Created by 澜声世纪 on 2025/11/17.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeYouLikeCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeYouLikeView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/15.
|
||||
// Created by 澜声世纪 on 2025/11/15.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHotSearchCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHotSearchView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchHomeView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchRecordCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchRecordView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchResultCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchResultView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchTextView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRTopChartsCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/25.
|
||||
// Created by 澜声世纪 on 2025/11/25.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRTopChartsHeaderView.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/26.
|
||||
// Created by 澜声世纪 on 2025/11/26.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRViralHitCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/25.
|
||||
// Created by 澜声世纪 on 2025/11/25.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeChildViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/13.
|
||||
// Created by 澜声世纪 on 2025/11/13.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
@ -117,6 +117,18 @@ class SRHomeViewController: SRViewController {
|
||||
return view
|
||||
}()
|
||||
|
||||
|
||||
private lazy var coinPackButton: SRHomeCoinsPackButton = {
|
||||
let view = SRHomeCoinsPackButton()
|
||||
view.addAction(UIAction(handler: { [weak self] _ in
|
||||
guard let self = self else { return }
|
||||
let vc = SRCoinPackController()
|
||||
self.navigationController?.pushViewController(vc, animated: true)
|
||||
|
||||
}), for: .touchUpInside)
|
||||
return view
|
||||
}()
|
||||
|
||||
deinit {
|
||||
srPrint(message: "销毁")
|
||||
}
|
||||
@ -124,10 +136,11 @@ class SRHomeViewController: SRViewController {
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
sr_setupUI()
|
||||
print("authorization =", SRAccountManager.manager.token?.token ?? "")
|
||||
print("authorization =", SRLogin.manager.token?.token ?? "")
|
||||
|
||||
Task {
|
||||
await requestModuleList()
|
||||
requestCoinsPackData()
|
||||
}
|
||||
}
|
||||
|
||||
@ -163,7 +176,7 @@ extension SRHomeViewController {
|
||||
moreButton.addSubview(moreTitleLabel)
|
||||
view.addSubview(playHistoryView)
|
||||
// moreButton.addSubview(moreIconImageView)
|
||||
|
||||
view.addSubview(coinPackButton)
|
||||
menuView.listContainer = pageView.listContainerView
|
||||
|
||||
searchButton.snp.makeConstraints { make in
|
||||
@ -215,6 +228,11 @@ extension SRHomeViewController {
|
||||
// make.centerY.equalToSuperview()
|
||||
// make.right.equalToSuperview()
|
||||
// }
|
||||
|
||||
coinPackButton.snp.makeConstraints { make in
|
||||
make.right.equalToSuperview().offset(-2)
|
||||
make.bottom.equalTo(playHistoryView.snp.top).offset(-100)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -300,5 +318,23 @@ extension SRHomeViewController {
|
||||
self.playHistoryView.isHidden = true
|
||||
}
|
||||
}
|
||||
|
||||
func requestCoinsPackData() {
|
||||
Task {
|
||||
let model = await SRStoreAPI.requestCoinBagCanReceiveInfo()
|
||||
guard let model = model else { return }
|
||||
let coins = model.coins ?? 0
|
||||
if coins > 0 {
|
||||
let view = SRCoinsPackAlert()
|
||||
view.coinsCount = coins
|
||||
view.show(in: self.view)
|
||||
view.claimButtonClick = { [weak self] in
|
||||
let vc = SRCoinPackController()
|
||||
self?.navigationController?.pushViewController(vc, animated: true)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRTopChartsViewController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/25.
|
||||
// Created by 澜声世纪 on 2025/11/25.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRViralHitController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/25.
|
||||
// Created by 澜声世纪 on 2025/11/25.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeMenuDataSource.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRHomeViewModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/14.
|
||||
// Created by 澜声世纪 on 2025/11/14.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRSearchViewModel.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by 湖北秦九 on 2025/11/18.
|
||||
// Created by 澜声世纪 on 2025/11/18.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRLoginController.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/29.
|
||||
// Created by 澜声世纪 on 2025/11/29.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
// SRFavoritesCell.swift
|
||||
// SynthReel
|
||||
//
|
||||
// Created by CSGY on 2025/11/24.
|
||||
// Created by 澜声世纪 on 2025/11/24.
|
||||
// Copyright © 2025 SR. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user