8 Commits

Author SHA1 Message Date
liyuhua
864fa7f809 图标更换 2024-03-14 14:19:35 +08:00
liyuhua
9b51cb903f 图标更换 2024-03-14 14:19:35 +08:00
liyuhua
1e5a984c64 更换图标 2024-03-14 14:19:35 +08:00
liyuhua
70ab9024fa 修复bug 2024-03-14 14:19:35 +08:00
liyuhua
5f0a2bb930 图标更换 2024-03-14 14:19:35 +08:00
liyuhua
b9930737a8 图标更换 2024-03-14 14:19:34 +08:00
liyuhua
53e6eb6e3c 图标更换 2024-03-14 14:19:34 +08:00
liyuhua
50635c6391 更换图标 2024-03-14 14:19:34 +08:00
40 changed files with 452 additions and 1110 deletions

View File

@@ -24,7 +24,8 @@ target 'xplan-ios' do
pod 'SZTextView'
#轮播图
pod 'SDCycleScrollView'
#上传图片
pod 'Qiniu'
#内购
pod 'IAPHelper'
#持久化存储
@@ -71,7 +72,6 @@ target 'xplan-ios' do
pod 'WechatOpenSDK'
#调试
pod 'LookinServer', :configurations => ['Debug']
pod 'QCloudCOSXML'
end
post_install do |installer|

View File

@@ -14,98 +14,92 @@ PODS:
- AFNetworking/Serialization (4.0.1)
- AFNetworking/UIKit (4.0.1):
- AFNetworking/NSURLSession
- AgoraRtcEngine_iOS (4.2.6):
- AgoraRtcEngine_iOS/AIAEC (= 4.2.6)
- AgoraRtcEngine_iOS/AINS (= 4.2.6)
- AgoraRtcEngine_iOS/AudioBeauty (= 4.2.6)
- AgoraRtcEngine_iOS/ClearVision (= 4.2.6)
- AgoraRtcEngine_iOS/ContentInspect (= 4.2.6)
- AgoraRtcEngine_iOS/DRM (= 4.2.6)
- AgoraRtcEngine_iOS/FaceDetection (= 4.2.6)
- AgoraRtcEngine_iOS/ReplayKit (= 4.2.6)
- AgoraRtcEngine_iOS/RtcBasic (= 4.2.6)
- AgoraRtcEngine_iOS/SpatialAudio (= 4.2.6)
- AgoraRtcEngine_iOS/VideoCodecDec (= 4.2.6)
- AgoraRtcEngine_iOS/VideoCodecEnc (= 4.2.6)
- AgoraRtcEngine_iOS/VirtualBackground (= 4.2.6)
- AgoraRtcEngine_iOS/VQA (= 4.2.6)
- AgoraRtcEngine_iOS/AIAEC (4.2.6)
- AgoraRtcEngine_iOS/AINS (4.2.6)
- AgoraRtcEngine_iOS/AudioBeauty (4.2.6)
- AgoraRtcEngine_iOS/ClearVision (4.2.6)
- AgoraRtcEngine_iOS/ContentInspect (4.2.6)
- AgoraRtcEngine_iOS/DRM (4.2.6)
- AgoraRtcEngine_iOS/FaceDetection (4.2.6)
- AgoraRtcEngine_iOS/ReplayKit (4.2.6)
- AgoraRtcEngine_iOS/RtcBasic (4.2.6)
- AgoraRtcEngine_iOS/SpatialAudio (4.2.6)
- AgoraRtcEngine_iOS/VideoCodecDec (4.2.6)
- AgoraRtcEngine_iOS/VideoCodecEnc (4.2.6)
- AgoraRtcEngine_iOS/VirtualBackground (4.2.6)
- AgoraRtcEngine_iOS/VQA (4.2.6)
- AlipaySDK-iOS (15.8.16)
- AgoraRtcEngine_iOS (4.2.2):
- AgoraRtcEngine_iOS/AIAEC (= 4.2.2)
- AgoraRtcEngine_iOS/AINS (= 4.2.2)
- AgoraRtcEngine_iOS/AudioBeauty (= 4.2.2)
- AgoraRtcEngine_iOS/ClearVision (= 4.2.2)
- AgoraRtcEngine_iOS/ContentInspect (= 4.2.2)
- AgoraRtcEngine_iOS/DRM (= 4.2.2)
- AgoraRtcEngine_iOS/FaceDetection (= 4.2.2)
- AgoraRtcEngine_iOS/ReplayKit (= 4.2.2)
- AgoraRtcEngine_iOS/RtcBasic (= 4.2.2)
- AgoraRtcEngine_iOS/SpatialAudio (= 4.2.2)
- AgoraRtcEngine_iOS/VideoCodecDec (= 4.2.2)
- AgoraRtcEngine_iOS/VideoCodecEnc (= 4.2.2)
- AgoraRtcEngine_iOS/VirtualBackground (= 4.2.2)
- AgoraRtcEngine_iOS/VQA (= 4.2.2)
- AgoraRtcEngine_iOS/AIAEC (4.2.2)
- AgoraRtcEngine_iOS/AINS (4.2.2)
- AgoraRtcEngine_iOS/AudioBeauty (4.2.2)
- AgoraRtcEngine_iOS/ClearVision (4.2.2)
- AgoraRtcEngine_iOS/ContentInspect (4.2.2)
- AgoraRtcEngine_iOS/DRM (4.2.2)
- AgoraRtcEngine_iOS/FaceDetection (4.2.2)
- AgoraRtcEngine_iOS/ReplayKit (4.2.2)
- AgoraRtcEngine_iOS/RtcBasic (4.2.2)
- AgoraRtcEngine_iOS/SpatialAudio (4.2.2)
- AgoraRtcEngine_iOS/VideoCodecDec (4.2.2)
- AgoraRtcEngine_iOS/VideoCodecEnc (4.2.2)
- AgoraRtcEngine_iOS/VirtualBackground (4.2.2)
- AgoraRtcEngine_iOS/VQA (4.2.2)
- AlipaySDK-iOS (15.8.11)
- Base64 (1.1.2)
- Bugly (2.5.93)
- CocoaAsyncSocket (7.6.5)
- FFPopup (1.1.5)
- FLAnimatedImage (1.0.17)
- HappyDNS (0.3.17)
- IAPHelper (1.1)
- IQKeyboardManager (6.5.17)
- JXCategoryView (1.6.1)
- IQKeyboardManager (6.5.9)
- JXCategoryView (1.5.9)
- JXPagingView/Pager (2.1.2)
- LinkedME_LinkPage (1.5.5.4)
- LookinServer (1.2.6):
- LookinServer/Core (= 1.2.6)
- LookinServer/Core (1.2.6)
- LookinServer (1.0.4)
- MarqueeLabel-ObjC (3.3.0)
- Masonry (1.1.0)
- MBProgressHUD (1.2.0)
- MJExtension (3.4.1)
- MJRefresh (3.7.6)
- mob_sharesdk (4.4.23):
- mob_sharesdk/ShareSDK (= 4.4.23)
- MJExtension (3.3.0)
- MJRefresh (3.7.3)
- mob_sharesdk (4.4.13):
- mob_sharesdk/ShareSDK (= 4.4.13)
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDK (4.4.23):
- mob_sharesdk/ShareSDK (4.4.13):
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKExtension (4.4.23):
- mob_sharesdk/ShareSDKExtension (4.4.13):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKPlatforms/Apple (4.4.23):
- mob_sharesdk/ShareSDKPlatforms/Apple (4.4.13):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKPlatforms/QQ (4.4.23):
- mob_sharesdk/ShareSDKPlatforms/QQ (4.4.13):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKPlatforms/WeChat_Lite (4.4.23):
- mob_sharesdk/ShareSDKPlatforms/WeChat_Lite (4.4.13):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- MOBFoundation (3.2.63)
- NIMSDK_LITE (8.9.124)
- NTESBaseComponent (1.8)
- NTESQuickPass (3.4.9):
- MOBFoundation (3.2.48)
- NIMSDK_LITE (8.9.110)
- NTESBaseComponent (1.4)
- NTESQuickPass (3.2.6):
- NTESBaseComponent
- pop (1.0.12)
- Protobuf (3.25.3)
- QCloudCore/Default (6.3.5):
- QCloudTrack/Beacon (= 6.3.5)
- QCloudCOSXML (6.3.5):
- QCloudCOSXML/Default (= 6.3.5)
- QCloudCOSXML/Default (6.3.5):
- QCloudCore/Default (= 6.3.5)
- QCloudTrack/Beacon (6.3.5)
- QGVAPlayer (1.0.19)
- Protobuf (3.19.1)
- QGVAPlayer (1.0.15)
- Qiniu (8.3.2):
- HappyDNS (~> 0.3.17)
- QY_NIM_iOS_SDK (6.6.1)
- ReactiveObjC (3.1.1)
- SDCycleScrollView (1.82):
- SDWebImage (>= 5.0.0)
- SDWebImage (5.19.0):
- SDWebImage/Core (= 5.19.0)
- SDWebImage/Core (5.19.0)
- SDWebImage (5.11.1):
- SDWebImage/Core (= 5.11.1)
- SDWebImage/Core (5.11.1)
- SDWebImageFLPlugin (0.6.0):
- FLAnimatedImage (>= 1.0.11)
- SDWebImage/Core (~> 5.10)
- SSKeychain (1.4.1)
- SSZipArchive (2.4.3)
- SSZipArchive (2.4.2)
- SVGAPlayer (2.5.7):
- SVGAPlayer/Core (= 2.5.7)
- SVGAPlayer/ProtoFiles (= 2.5.7)
@@ -115,17 +109,13 @@ PODS:
- SVGAPlayer/ProtoFiles (2.5.7):
- Protobuf (~> 3.4)
- SZTextView (1.3.0)
- TXLiteAVSDK_TRTC (11.4.14571):
- TXLiteAVSDK_TRTC/TRTC (= 11.4.14571)
- TXLiteAVSDK_TRTC/TRTC (11.4.14571)
- TZImagePickerController (3.8.4):
- TZImagePickerController/Basic (= 3.8.4)
- TZImagePickerController/Location (= 3.8.4)
- TZImagePickerController/Basic (3.8.4)
- TZImagePickerController/Location (3.8.4)
- UMCommon (7.4.5):
- TXLiteAVSDK_TRTC (11.4.14530):
- TXLiteAVSDK_TRTC/TRTC (= 11.4.14530)
- TXLiteAVSDK_TRTC/TRTC (11.4.14530)
- TZImagePickerController (3.8.1)
- UMCommon (7.3.5):
- UMDevice
- UMDevice (3.3.0)
- UMDevice (2.0.5)
- WechatOpenSDK (2.0.2)
- YYCache (1.0.4)
- YYImage (1.0.4):
@@ -164,8 +154,8 @@ DEPENDENCIES:
- NIMSDK_LITE (~> 8.9.0)
- NTESQuickPass
- pop (~> 1.0.12)
- QCloudCOSXML
- QGVAPlayer
- Qiniu
- QY_NIM_iOS_SDK (~> 6.6.1)
- ReactiveObjC
- SDCycleScrollView
@@ -192,6 +182,7 @@ SPEC REPOS:
- CocoaAsyncSocket
- FFPopup
- FLAnimatedImage
- HappyDNS
- IAPHelper
- IQKeyboardManager
- JXCategoryView
@@ -210,10 +201,8 @@ SPEC REPOS:
- NTESQuickPass
- pop
- Protobuf
- QCloudCore
- QCloudCOSXML
- QCloudTrack
- QGVAPlayer
- Qiniu
- QY_NIM_iOS_SDK
- ReactiveObjC
- SDCycleScrollView
@@ -235,54 +224,53 @@ SPEC REPOS:
SPEC CHECKSUMS:
AFNetworking: 3bd23d814e976cd148d7d44c3ab78017b744cd58
AgoraRtcEngine_iOS: ac647332ad8f86d79cf810601c9e62b28c3a4de0
AlipaySDK-iOS: 5e6011fbd546e7db6b43c1f527d164ee63f3d7cb
AgoraRtcEngine_iOS: c510de329cd905daff3f01fa4c872ea6d5eaee23
AlipaySDK-iOS: a07b6eafa847a5b29acb6c150ea16d9792d5d167
Base64: cecfb41a004124895a7bcee567a89bae5a89d49b
Bugly: b8715e6ec4004b7f7fbffab0643ba80545aee3da
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
FFPopup: a208dcee8db3e54ec4a88fcd6481f6f5d85b7a83
FLAnimatedImage: bbf914596368867157cc71b38a8ec834b3eeb32b
HappyDNS: 848ef73e24f2b0e2752064223ce2dc0dd88900ea
IAPHelper: fd74f53b0ac142eed085777b88b86a11746a2dd4
IQKeyboardManager: 904d013844bbae0abe073f015487bfebe5476335
JXCategoryView: 7b1ee69ede4843c581688afe84d0f047723262f2
IQKeyboardManager: 241cc94ccabc9deb8f8bd7d12f00d73288d13ecc
JXCategoryView: 2ef9ecfd3735158d009ce02d1f29811aa822da65
JXPagingView: 90924b364a2ff7e94db534fad1fa50925ff69ee4
LinkedME_LinkPage: 0b443cec28582eb2d7e1c09987072e33e44083ec
LookinServer: de929b55f8fa2e241c18c39af3f900eaa9166389
LookinServer: 743c1681771d0a8dcc38825325a080c3186404a5
MarqueeLabel-ObjC: 696eaa82e4fcc7fb53e4fdf37ac138f03bf022d6
Masonry: 678fab65091a9290e40e2832a55e7ab731aad201
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
MJExtension: 21c5f6f8c4d5d8844b7ae8fbae08fed0b501f961
MJRefresh: 2fe7fb43a5167ceda20bb7e63f130c04fd1814a5
mob_sharesdk: 6081cd4584b581be65cdcb78ff82e8288f037f97
MOBFoundation: 0f932708bf9fa5c07aea37992554ca1b3af9e572
NIMSDK_LITE: 48b43ff18d3d9634d36304e8c647a46bb05bc974
NTESBaseComponent: 7b310e7e80bb6c27183176188b98356d200dbbc5
NTESQuickPass: 248f5efa21c51227c391c3ff5110cf3ad4d3809b
MJExtension: 01704cca2b60a214c10761b6491eab74069d68a9
MJRefresh: ec9c53ff4abf3a9237b4283862f1bd51c2ee3fdb
mob_sharesdk: e8efde8dc7a872064c197a0af13eb5d06a2b143c
MOBFoundation: 5135f9e8310989a32b5ed4f130c01f4d8abc011a
NIMSDK_LITE: 299ff39677d705b91413d14ad352b32a1b0e72fe
NTESBaseComponent: 9e97373eec7e5a26c39db26477bf99a37ee9e71a
NTESQuickPass: 781bd12ee63681389fe9b646c837fa76e3a00e6e
pop: d582054913807fd11fd50bfe6a539d91c7e1a55a
Protobuf: 8e9074797a13c484a79959fdb819ef4ae6da7dbe
QCloudCore: 9ba71f98027912b87bde80084e074d4e443769f5
QCloudCOSXML: e10fecf4f3bf55b56930162483c41c246237853f
QCloudTrack: a1e25308ead00d58db596b8564c7f197a8a06102
QGVAPlayer: a0bca68c9bd6f1c8de5ac2d10ddf98be6038cce9
Protobuf: 3724efa50cb2846d7ccebc8691c574e85fd74471
QGVAPlayer: 002673a02b4e50f9f53d0673b87168b540a300ae
Qiniu: 61f1e2fdfb35b37f98c8f03a718faf12652f9994
QY_NIM_iOS_SDK: 7fbf411c9c299f3b904fcc5b494542f41a11f70c
ReactiveObjC: 011caa393aa0383245f2dcf9bf02e86b80b36040
SDCycleScrollView: a0d74c3384caa72bdfc81470bdbc8c14b3e1fbcf
SDWebImage: 981fd7e860af070920f249fd092420006014c3eb
SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d
SDWebImageFLPlugin: 72efd2cfbf565bc438421abb426f4bcf7b670754
SSKeychain: 55cc80f66f5c73da827e3077f02e43528897db41
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
SSZipArchive: e7b4f3d9e780c2acc1764cd88fbf2de28f26e5b2
SVGAPlayer: 318b85a78b61292d6ae9dfcd651f3f0d1cdadd86
SZTextView: 094dc6acc9beec537685c545d6e3e0d4975174e1
TXLiteAVSDK_TRTC: 5be9b8b610608ad24525e88ac0c7ec5f146523d5
TZImagePickerController: f1c9f1cae6ac0e30b31aaa9698f9bf4a7cf5b84f
UMCommon: 28cd03c308341f687f5269abd26a82d66f01837f
UMDevice: f67106f8f1a8bc465ba20d376d896e178be66ba7
TXLiteAVSDK_TRTC: 72ff3c596f55555be2dd733291501eef5fae9ce5
TZImagePickerController: 943511626019431372cf908f24c114521e484f0e
UMCommon: ab4d875ddefe1b06c60b577e4a58bc4d433ee067
UMDevice: c13bbb2e8ca6c67d1e23e03162553e3ec5a8b5b0
WechatOpenSDK: e79349b37d44c015210f39fd6d2379f0ec60efe2
YYCache: 8105b6638f5e849296c71f331ff83891a4942952
YYImage: 1e1b62a9997399593e4b9c4ecfbbabbf1d3f3b54
YYText: 5c461d709e24d55a182d1441c41dc639a18a4849
YYWebImage: 5f7f36aee2ae293f016d418c7d6ba05c4863e928
PODFILE CHECKSUM: 3bd419f422e49acfd1c9500a9a45ab79466fa77a
PODFILE CHECKSUM: 0f2e29ba8c875f839292918f612c6ec567ad4318
COCOAPODS: 1.12.1

View File

@@ -225,9 +225,6 @@
23E1708C2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E1708B2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.m */; };
23EEB0622B3C1B3F00E8CA05 /* MewMainHomeEmptyCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23EEB0612B3C1B3F00E8CA05 /* MewMainHomeEmptyCell.m */; };
23F8BFF82A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23F8BFF72A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.m */; };
23FE47CF2BB2C8CE00F09D23 /* YinMineSettingFillCodeView.m in Sources */ = {isa = PBXBuildFile; fileRef = 23FE47CE2BB2C8CE00F09D23 /* YinMineSettingFillCodeView.m */; };
23FE47D22BB2D98300F09D23 /* YinMineSettingPopUpView.m in Sources */ = {isa = PBXBuildFile; fileRef = 23FE47D12BB2D98300F09D23 /* YinMineSettingPopUpView.m */; };
23FE47EA2BB5076A00F09D23 /* YinUploadFileModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 23FE47E92BB5076A00F09D23 /* YinUploadFileModel.m */; };
73FFADDC93E195344047A2EC /* Pods_xplan_ios.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CACF623970097D653132D69A /* Pods_xplan_ios.framework */; };
9B0086C627BA392B0032BD2B /* AnchorStageView.m in Sources */ = {isa = PBXBuildFile; fileRef = 9B0086C527BA392B0032BD2B /* AnchorStageView.m */; };
9B0086CA27BA4F570032BD2B /* AnchorMicroView.m in Sources */ = {isa = PBXBuildFile; fileRef = 9B0086C927BA4F570032BD2B /* AnchorMicroView.m */; };
@@ -1199,6 +1196,7 @@
E8B825CA26EA1231009E8E9F /* LoginVerifCodeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B825C826EA1231009E8E9F /* LoginVerifCodeViewController.m */; };
E8B825CD26EA18C8009E8E9F /* ThemeColor.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B825CC26EA18C8009E8E9F /* ThemeColor.m */; };
E8B825D026EA3825009E8E9F /* LoginPasswordViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B825CF26EA3825009E8E9F /* LoginPasswordViewController.m */; };
E8B846BC26FD7C1200A777FE /* UploadImage.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846BB26FD7C1200A777FE /* UploadImage.m */; };
E8B846BF26FD827900A777FE /* XPMineUserInfoAlbumViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846BE26FD827900A777FE /* XPMineUserInfoAlbumViewController.m */; };
E8B846C226FD82DC00A777FE /* XPMineUserInfoAlbumCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846C126FD82DC00A777FE /* XPMineUserInfoAlbumCollectionViewCell.m */; };
E8B846C526FDB41A00A777FE /* XPMineUserInfolbumPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846C426FDB41A00A777FE /* XPMineUserInfolbumPresenter.m */; };
@@ -1841,12 +1839,6 @@
23EEB0612B3C1B3F00E8CA05 /* MewMainHomeEmptyCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeEmptyCell.m; sourceTree = "<group>"; };
23F8BFF62A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMessagePrivilegeCardCell.h; sourceTree = "<group>"; };
23F8BFF72A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMessagePrivilegeCardCell.m; sourceTree = "<group>"; };
23FE47CD2BB2C8CE00F09D23 /* YinMineSettingFillCodeView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = YinMineSettingFillCodeView.h; sourceTree = "<group>"; };
23FE47CE2BB2C8CE00F09D23 /* YinMineSettingFillCodeView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = YinMineSettingFillCodeView.m; sourceTree = "<group>"; };
23FE47D02BB2D98300F09D23 /* YinMineSettingPopUpView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = YinMineSettingPopUpView.h; sourceTree = "<group>"; };
23FE47D12BB2D98300F09D23 /* YinMineSettingPopUpView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = YinMineSettingPopUpView.m; sourceTree = "<group>"; };
23FE47E82BB5076A00F09D23 /* YinUploadFileModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = YinUploadFileModel.h; sourceTree = "<group>"; };
23FE47E92BB5076A00F09D23 /* YinUploadFileModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = YinUploadFileModel.m; sourceTree = "<group>"; };
7DB00EC07F1D0ADFF900B38D /* Pods-xplan-ios.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-xplan-ios.debug.xcconfig"; path = "Target Support Files/Pods-xplan-ios/Pods-xplan-ios.debug.xcconfig"; sourceTree = "<group>"; };
9B0086C427BA392B0032BD2B /* AnchorStageView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AnchorStageView.h; sourceTree = "<group>"; };
9B0086C527BA392B0032BD2B /* AnchorStageView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AnchorStageView.m; sourceTree = "<group>"; };
@@ -3650,6 +3642,8 @@
E8B825CC26EA18C8009E8E9F /* ThemeColor.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ThemeColor.m; sourceTree = "<group>"; };
E8B825CE26EA3825009E8E9F /* LoginPasswordViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LoginPasswordViewController.h; sourceTree = "<group>"; };
E8B825CF26EA3825009E8E9F /* LoginPasswordViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LoginPasswordViewController.m; sourceTree = "<group>"; };
E8B846BA26FD7C1200A777FE /* UploadImage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UploadImage.h; sourceTree = "<group>"; };
E8B846BB26FD7C1200A777FE /* UploadImage.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UploadImage.m; sourceTree = "<group>"; };
E8B846BD26FD827900A777FE /* XPMineUserInfoAlbumViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineUserInfoAlbumViewController.h; sourceTree = "<group>"; };
E8B846BE26FD827900A777FE /* XPMineUserInfoAlbumViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineUserInfoAlbumViewController.m; sourceTree = "<group>"; };
E8B846C026FD82DC00A777FE /* XPMineUserInfoAlbumCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineUserInfoAlbumCollectionViewCell.h; sourceTree = "<group>"; };
@@ -4514,6 +4508,7 @@
E82D5C77276B25B000858D6D /* SpriteSheetManager */,
E865964E2701A1A900846EBD /* StatisticsService */,
E89DA6612700590A008483C1 /* IAPHelper */,
E8B846B926FD7BE600A777FE /* UploadImage */,
E8EEB8EA26FC2050007C6EBA /* SDPhotoBrowser */,
E81366E426F0A4820076364C /* NSString */,
E82109AA26F1C86E00FC3319 /* CountDown */,
@@ -5196,10 +5191,8 @@
9B33E3C827D85379003B0E62 /* File */ = {
isa = PBXGroup;
children = (
9B33E3CA27D85379003B0E62 /* UploadFile.h */,
9B33E3C927D85379003B0E62 /* UploadFile.m */,
23FE47E82BB5076A00F09D23 /* YinUploadFileModel.h */,
23FE47E92BB5076A00F09D23 /* YinUploadFileModel.m */,
9B33E3CA27D85379003B0E62 /* UploadFile.h */,
);
path = File;
sourceTree = "<group>";
@@ -8128,10 +8121,6 @@
237B89DE2A933F52005DB380 /* XPMineUserGameCell.m */,
237B89EC2A945F81005DB380 /* XPMineUserGameTypeCell.h */,
237B89ED2A945F81005DB380 /* XPMineUserGameTypeCell.m */,
23FE47CD2BB2C8CE00F09D23 /* YinMineSettingFillCodeView.h */,
23FE47CE2BB2C8CE00F09D23 /* YinMineSettingFillCodeView.m */,
23FE47D02BB2D98300F09D23 /* YinMineSettingPopUpView.h */,
23FE47D12BB2D98300F09D23 /* YinMineSettingPopUpView.m */,
);
path = MineInfo;
sourceTree = "<group>";
@@ -8887,6 +8876,15 @@
path = Model;
sourceTree = "<group>";
};
E8B846B926FD7BE600A777FE /* UploadImage */ = {
isa = PBXGroup;
children = (
E8B846BA26FD7C1200A777FE /* UploadImage.h */,
E8B846BB26FD7C1200A777FE /* UploadImage.m */,
);
path = UploadImage;
sourceTree = "<group>";
};
E8B846D026FDDBCD00A777FE /* Recharge */ = {
isa = PBXGroup;
children = (
@@ -10875,7 +10873,6 @@
E81C1B1C27705F6B0020D1E4 /* XPArrangeMicPresenter.m in Sources */,
184862CE27213FD7005FC5DC /* ZegoRtcImpl.m in Sources */,
E8A88D2727E8193400CA8837 /* XPRoomPKSelectUserView.m in Sources */,
23FE47CF2BB2C8CE00F09D23 /* YinMineSettingFillCodeView.m in Sources */,
9B734F7C288AB05A00CBDAA9 /* XPMIneGameCollectionViewCell.m in Sources */,
9B0E1C5926E77022005D4442 /* BaseNavigationController.m in Sources */,
E8664ED927E4355C000171BA /* XPRoomPKRecordTableViewCell.m in Sources */,
@@ -10981,9 +10978,7 @@
18A61BE8274F9CF000A09A54 /* SessionListViewController.m in Sources */,
E8C1CD6A27D8937800376F83 /* XPRoomFaceCollectionViewCell.m in Sources */,
E8DBB6F927B639A300AA285D /* LittleGameStageView.m in Sources */,
23FE47EA2BB5076A00F09D23 /* YinUploadFileModel.m in Sources */,
9B2EA7C02804037700ED17BF /* AnchorPKStageView.m in Sources */,
23FE47D22BB2D98300F09D23 /* YinMineSettingPopUpView.m in Sources */,
E811FFF72742367B00918544 /* XPGiftEmptyCollectionViewCell.m in Sources */,
E8A86E0827BA38DB001C21F9 /* UIImage+RW.m in Sources */,
E800807927FD84560055A8AB /* ClanInfoModel.m in Sources */,
@@ -11336,6 +11331,7 @@
237B8A092A95A52B005DB380 /* XPMineGameOrderItemVC.m in Sources */,
E839533F276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m in Sources */,
9B73CD11279AE99B006AF255 /* XPSkillCardListCell.m in Sources */,
E8B846BC26FD7C1200A777FE /* UploadImage.m in Sources */,
9BCE6144277D657600CC0358 /* XPReleaseRadioTableViewCell.m in Sources */,
9B16A34827E17D9B00E13A98 /* XPRoomTrumpetViewController.m in Sources */,
186A534D26FC6ED900D67B2C /* TTActionSheetView.m in Sources */,
@@ -11695,7 +11691,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 2.1.2;
MARKETING_VERSION = 2.1.1;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -11793,6 +11789,8 @@
"-framework",
"\"Foundation\"",
"-framework",
"\"HappyDNS\"",
"-framework",
"\"IAPHelper\"",
"-framework",
"\"IQKeyboardManager\"",
@@ -11845,6 +11843,8 @@
"-framework",
"\"QYSDK_NIM\"",
"-framework",
"\"Qiniu\"",
"-framework",
"\"QuartzCore\"",
"-framework",
"\"ReactiveObjC\"",
@@ -11895,8 +11895,12 @@
"-framework",
"\"VideoToolbox\"",
"-framework",
"\"WYEAccountApiSDK\"",
"-framework",
"\"WYOAuth\"",
"-framework",
"\"WYTYRZUISDK\"",
"-framework",
"\"WebKit\"",
"-framework",
"\"WechatConnector\"",
@@ -11950,7 +11954,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 2.1.2;
MARKETING_VERSION = 2.1.1;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -12048,6 +12052,8 @@
"-framework",
"\"Foundation\"",
"-framework",
"\"HappyDNS\"",
"-framework",
"\"IAPHelper\"",
"-framework",
"\"IQKeyboardManager\"",
@@ -12098,6 +12104,8 @@
"-framework",
"\"QYSDK_NIM\"",
"-framework",
"\"Qiniu\"",
"-framework",
"\"QuartzCore\"",
"-framework",
"\"ReactiveObjC\"",
@@ -12148,8 +12156,12 @@
"-framework",
"\"VideoToolbox\"",
"-framework",
"\"WYEAccountApiSDK\"",
"-framework",
"\"WYOAuth\"",
"-framework",
"\"WYTYRZUISDK\"",
"-framework",
"\"WebKit\"",
"-framework",
"\"WechatConnector\"",

View File

@@ -85,8 +85,6 @@ NS_ASSUME_NONNULL_BEGIN
position:(NSString *)position
ticket:(NSString *)ticket
uid:(NSString *)uid;
///得到腾讯存储信息
+ (void)getQCloudInfo:(HttpRequestHelperCompletion)completion;
@end
NS_ASSUME_NONNULL_END

View File

@@ -115,8 +115,4 @@
+ (void)microLockCompletion:(HttpRequestHelperCompletion)complection roomUid:(NSString *)roomUid state:(NSString *)state position:(NSString *)position ticket:(NSString *)ticket uid:(NSString *)uid {
[self makeRequest:@"room/mic/lockpos" method:HttpRequestHelperMethodPOST completion:complection, __FUNCTION__, roomUid, state, position, ticket, uid, nil];
}
///
+ (void)getQCloudInfo:(HttpRequestHelperCompletion)completion{
[self makeRequest:@"tencent/cos/getToken" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, nil];
}
@end

View File

@@ -145,8 +145,6 @@ NS_ASSUME_NONNULL_BEGIN
@property(nonatomic,strong) NSArray<UserGameInfoVo *> *userGamePartner;
///pk时不能禁麦
@property(nonatomic,assign) BOOL isNoProhibitMic;
///控制是否有补填弹窗入口
@property(nonatomic,assign) BOOL canRefillInviteCode;
@end
NS_ASSUME_NONNULL_END

View File

@@ -17,7 +17,6 @@ NS_ASSUME_NONNULL_BEGIN
- (NSDate *)dateByAddingDays:(NSInteger)days;
- (NSString *)stringForFormat:(NSString *)format;
+(NSString *)getNowTimeTimestamp;
@end
@interface NSCalendar (Pick)

View File

@@ -7,7 +7,6 @@
#import "NSDate+DateUtils.h"
NSString * const kDateFormatYYYYMMDD = @"yyyy-MM-dd";
NSString * const kDateFormatYYMMDDTHHmmss = @"yyyy-MM-dd'T'HH:mm:ss";
@@ -44,16 +43,7 @@ NSString * const kDateFormatYYMMDDTHHmmss = @"yyyy-MM-dd'T'HH:mm:ss";
- (NSString *) stringForYearMonthDayDashed {
return [self stringForFormat:kDateFormatYYYYMMDD];
}
+(NSString *)getNowTimeTimestamp{
NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
NSTimeInterval a=[dat timeIntervalSince1970];
NSString*timeString = [NSString stringWithFormat:@"%0.f", a];//
return timeString;
}
- (NSString *)stringForFormat:(NSString *)format {
if (!format) {
return nil;

View File

@@ -1,8 +1,8 @@
//
// UploadFile.h
// YUMI
// xplan-ios
//
// Created by YUMI on 2022/2/23.
// Created by GreenLand on 2022/2/23.
//
#import <Foundation/Foundation.h>
@@ -10,40 +10,19 @@
NS_ASSUME_NONNULL_BEGIN
@interface UploadFile : NSObject
+ (instancetype)share;
-(void)initQCloud;
+ (void)downloadAudioWithFileName:(NSString *)fileName musicUrl:(NSString *)musicUrl mainFileName:(NSString *)mainFileName completion:(void (^) (BOOL isSuccess, NSString *editAudioPath))completion;
/// 上传一个文件
/// @param filePath 文件地址
/// @param fileName 文件的名字
/// @param token token
/// @param success 成功
/// @param failure 失败
- (void)QCloudUploadFile:(NSString *)filePath
+ (void)uploadFile:(NSString *)filePath
named:(NSString *)fileName
token:(NSString *)token
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
/// 上传一个Image
/// @param image 图片
/// @param imageName 图片的名字
/// @param success 成功
/// @param failure 失败
- (void)QCloudUploadImage:(NSData *)data
named:(NSString *)name
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
/// 上传一个文件
/// @param data 文件
/// @param fileName 文件的名字
/// @param success 成功
/// @param failure 失败
- (void)QCloudUploadFileWithData:(NSData *)data
named:(NSString *)fileName
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
+ (void)mew_downloadAudioWithFileName:(NSString *)fileName musicUrl:(NSString *)musicUrl mainFileName:(NSString *)mainFileName completion:(void (^) (BOOL isSuccess, NSString *editAudioPath))completion;
@end
NS_ASSUME_NONNULL_END

View File

@@ -4,267 +4,36 @@
//
// Created by GreenLand on 2022/2/23.
//
#import <QCloudCOSXML/QCloudCOSXML.h>
#import "UploadFile.h"
#import <Qiniu/QiniuSDK.h>
#import <AFNetworking.h>
#import "Api+Mine.h"
#import "YinUploadFileModel.h"
static UploadFile* manager;
@interface UploadFile()<QCloudSignatureProvider,QCloudCredentailFenceQueueDelegate>
//
@property (nonatomic) QCloudCredentailFenceQueue* credentialFenceQueue;
@property(nonatomic,strong) YinUploadFileModel *fileModel;
@end
@implementation UploadFile
+ (instancetype)share {
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
manager = [[UploadFile alloc] init];
});
return manager;
}
-(void)initQCloud{
[Api getQCloudInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200){
YinUploadFileModel *fileModel = [YinUploadFileModel modelWithDictionary:data.data];
self.fileModel = fileModel;
QCloudServiceConfiguration* configuration = [QCloudServiceConfiguration new];
configuration.appID = fileModel.appId;
QCloudCOSXMLEndPoint* endpoint = [[QCloudCOSXMLEndPoint alloc] init];
endpoint.regionName = fileModel.region;
// 使 HTTPS
endpoint.useHTTPS = YES;
configuration.endpoint = endpoint;
//
configuration.signatureProvider = self;
// COS
[QCloudCOSXMLService registerDefaultCOSXMLWithConfiguration:configuration];
[QCloudCOSTransferMangerService registerDefaultCOSTransferMangerWithConfiguration:
configuration];
self.credentialFenceQueue = [QCloudCredentailFenceQueue new];
self.credentialFenceQueue.delegate = self;
}
}];
}
#pragma mark- QCloudSignatureProvider
- (void) signatureWithFields:(QCloudSignatureFields*)fileds
request:(QCloudBizHTTPRequest*)request
urlRequest:(NSMutableURLRequest*)urlRequst
compelete:(QCloudHTTPAuthentationContinueBlock)continueBlock
{
[Api getQCloudInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200){
YinUploadFileModel *fileModel = [YinUploadFileModel modelWithDictionary:data.data];
QCloudCredential* credential = [QCloudCredential new];
// SecretId
credential.secretID = fileModel.secretId;
// SecretKey
credential.secretKey = fileModel.secretKey;
// Token
credential.token = fileModel.sessionToken;
/** , (startTimeexpiredTime)
*/
credential.startDate = [NSDate dateWithTimeIntervalSince1970:fileModel.startTime]; //
credential.expirationDate = [NSDate dateWithTimeIntervalSince1970:fileModel.expireTime];//
QCloudAuthentationV5Creator* creator = [[QCloudAuthentationV5Creator alloc]
initWithCredential:credential];
// urlRequst copymutableCopy
QCloudSignature *signature = [creator signatureForData:urlRequst];
continueBlock(signature, nil);
}
}
];
}
#pragma mark - QCloudCredentailFenceQueueDelegate
- (void) fenceQueue:(QCloudCredentailFenceQueue * )queue requestCreatorWithContinue:(QCloudCredentailFenceQueueContinue)continueBlock
{
//
//...
[Api getQCloudInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200){
YinUploadFileModel *fileModel = [YinUploadFileModel modelWithDictionary:data.data];
QCloudCredential* credential = [QCloudCredential new];
// SecretId
credential.secretID = fileModel.secretId;
// SecretKey
credential.secretKey = fileModel.secretKey;
// Token
credential.token = fileModel.sessionToken;
/** , (startTimeexpiredTime)
*/
credential.startDate = [NSDate dateWithTimeIntervalSince1970:fileModel.startTime]; //
credential.expirationDate = [NSDate dateWithTimeIntervalSince1970:fileModel.expireTime];//
QCloudAuthentationV5Creator* creator = [[QCloudAuthentationV5Creator alloc]
initWithCredential:credential];
continueBlock(creator, nil);
}
}];
}
///
/// @param filePath
/// @param fileName
/// @param token token
/// @param success
/// @param failure
- (void)QCloudUploadFile:(NSString *)filePath
+ (void)uploadFile:(NSString *)filePath
named:(NSString *)fileName
token:(NSString *)token
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure {
QCloudCOSXMLUploadObjectRequest* put = [QCloudCOSXMLUploadObjectRequest new];
//
NSURL* url = [NSURL fileURLWithPath:filePath];
// BucketName-Appid COS https://console.cloud.tencent.com/cos5/bucket
put.bucket = self.fileModel.bucket;
// COS "video/xxx/movie.mp4"
put.object = fileName;
//NSData*NSURL*
put.body = url;
//
[put setSendProcessBlock:^(int64_t bytesSent,
int64_t totalBytesSent,
int64_t totalBytesExpectedToSend) {
// bytesSent
// totalBytesSent
// totalBytesExpectedToSend
failure:(void (^)(NSNumber *resCode, NSString *message))failure {
QNConfiguration *config = [QNConfiguration build:^(QNConfigurationBuilder *builder) {
builder.zone = [QNFixedZone zone2];
}];
//
[put setFinishBlock:^(id outputObject, NSError *error) {
// outputObject response etag
if (error) {
failure(@(error.code),error.localizedDescription);
return;
QNUploadManager *upManager = [[QNUploadManager alloc] initWithConfiguration:config];
[upManager putFile:filePath key:fileName token:token complete:^(QNResponseInfo *info, NSString *key, NSDictionary *resp) {
if (resp) {
success(key,resp);
}else{
failure(@(info.statusCode),info.error.localizedDescription);
}
QCloudUploadObjectResult * result = (QCloudUploadObjectResult *)outputObject;
NSArray *urlList = [result.location componentsSeparatedByString:@".com/"];
if (urlList.count == 2){
NSString *url = [NSString stringWithFormat:@"%@/%@",self.fileModel.customDomain,urlList[1]];
success(url,nil);
return;
}
success(result.location,nil);
}];
[[QCloudCOSTransferMangerService defaultCOSTransferManager] UploadObject:put];
} option:nil];
}
///
/// @param data
/// @param fileName
/// @param success
/// @param failure
- (void)QCloudUploadFileWithData:(NSData *)data
named:(NSString *)fileName
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure {
QCloudCOSXMLUploadObjectRequest* put = [QCloudCOSXMLUploadObjectRequest new];
\
// BucketName-Appid COS https://console.cloud.tencent.com/cos5/bucket
put.bucket = self.fileModel.bucket;
// COS "video/xxx/movie.mp4"
put.object = fileName;
//NSData*NSURL*
put.body = data;
//
[put setSendProcessBlock:^(int64_t bytesSent,
int64_t totalBytesSent,
int64_t totalBytesExpectedToSend) {
// bytesSent
// totalBytesSent
// totalBytesExpectedToSend
}];
//
[put setFinishBlock:^(id outputObject, NSError *error) {
// outputObject response etag
if (error) {
failure(@(error.code),error.localizedDescription);
return;
}
QCloudUploadObjectResult * result = (QCloudUploadObjectResult *)outputObject;
NSArray *urlList = [result.location componentsSeparatedByString:@".com/"];
if (urlList.count == 2){
NSString *url = [NSString stringWithFormat:@"%@/%@",self.fileModel.customDomain,urlList[1]];
success(url,nil);
return;
}
success(result.location,nil);
}];
[[QCloudCOSTransferMangerService defaultCOSTransferManager] UploadObject:put];
}
/// Image
/// @param image
/// @param imageName
/// @param success
/// @param failure
- (void)QCloudUploadImage:(NSData *)data
named:(NSString *)name
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure{
QCloudCOSXMLUploadObjectRequest* put = [QCloudCOSXMLUploadObjectRequest new];
put.bucket = self.fileModel.bucket;
// COS "video/xxx/movie.mp4"
put.object = name;
//NSData*NSURL*
put.body = data;
//
[put setSendProcessBlock:^(int64_t bytesSent,
int64_t totalBytesSent,
int64_t totalBytesExpectedToSend) {
// bytesSent
// totalBytesSent
// totalBytesExpectedToSend
}];
//
[put setFinishBlock:^(id outputObject, NSError *error) {
if (error) {
failure(@(error.code),error.localizedDescription);
return;
}
QCloudUploadObjectResult * result = (QCloudUploadObjectResult *)outputObject;
NSArray *urlList = [result.location componentsSeparatedByString:@".com/"];
if (urlList.count == 2){
NSString *url = [NSString stringWithFormat:@"%@/%@",self.fileModel.customDomain,urlList[1]];
success(url,nil);
return;
}
success(result.location,nil);
}];
[[QCloudCOSTransferMangerService defaultCOSTransferManager] UploadObject:put];
}
+(void)downloadAudioWithFileName:(NSString *)fileName musicUrl:(NSString *)musicUrl mainFileName:(NSString *)mainFileName completion:(void (^) (BOOL isSuccess, NSString *editAudioPath))completion {
+ (void)mew_downloadAudioWithFileName:(NSString *)fileName musicUrl:(NSString *)musicUrl mainFileName:(NSString *)mainFileName completion:(void (^) (BOOL isSuccess, NSString *editAudioPath))completion{
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:musicUrl]];
NSURLSessionDownloadTask *download = [manager downloadTaskWithRequest:request progress:^(NSProgress * _Nonnull downloadProgress) {

View File

@@ -1,24 +0,0 @@
//
// YinUploadFileModel.h
// xplan-ios
//
// Created by duoban on 2024/3/26.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@interface YinUploadFileModel : NSObject
@property(nonatomic,copy) NSString *secretId;
@property(nonatomic,copy) NSString *secretKey;
@property(nonatomic,copy) NSString *sessionToken;
@property(nonatomic,copy) NSString *bucket;
@property(nonatomic,copy) NSString *region;
@property(nonatomic,copy) NSString *customDomain;
@property(nonatomic,assign) long startTime;
@property(nonatomic,assign) long expireTime;
@property(nonatomic,copy) NSString *appId;
@end
NS_ASSUME_NONNULL_END

View File

@@ -1,12 +0,0 @@
//
// YinUploadFileModel.m
// xplan-ios
//
// Created by duoban on 2024/3/26.
//
#import "YinUploadFileModel.h"
@implementation YinUploadFileModel
@end

View File

@@ -32,7 +32,6 @@ NS_ASSUME_NONNULL_BEGIN
+ (NSInteger) getDay:(long) time;
+ (NSString *)calculateConstellationWithMonth:(long)time;
+ (NSString *)calculateAge:(long)time;
+(NSString *)createUUID;
@end
NS_ASSUME_NONNULL_END

View File

@@ -7,7 +7,7 @@
#import "NSString+Utils.h"
#import <CommonCrypto/CommonDigest.h>
#import "NSDate+DateUtils.h"
@implementation NSString (Utils)
///
@@ -246,15 +246,5 @@
NSLog(@"用户年龄是%ld",userAge);
return [NSString stringWithFormat:@"%ld", userAge];
}
+(NSString *)createUUID{
CFUUIDRef uuid;
CFStringRef uuidText;
uuid = CFUUIDCreate(NULL);
uuidText = CFUUIDCreateString(NULL, uuid);
NSString *time = [NSDate getNowTimeTimestamp];
NSString *result = [NSString stringWithFormat:@"%@%@",uuidText,time];
return [result MD5String];
}
@end

View File

@@ -0,0 +1,37 @@
//
// UploadImage.h
// xplan-ios
//
// Created by 冯硕 on 2021/9/24.
// 上传图片类
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@interface UploadImage : NSObject
/// 上传一个Image
/// @param image 图片
/// @param imageName 图片的名字
/// @param token token
/// @param success 成功
/// @param failure 失败
+ (void)uploadImage:(UIImage *)image
named:(NSString *)imageName
token:(NSString *)token
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
/// 上传一个gif图片
/// @param data 图片
/// @param imageName 图片的名字
/// @param token token
/// @param success 成功
/// @param failure 失败
+ (void)uploadGifImageData:(NSData *)data
named:(NSString *)imageName
token:(NSString *)token
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,63 @@
//
// UploadImage.m
// xplan-ios
//
// Created by on 2021/9/24.
//
#import "UploadImage.h"
#import <Qiniu/QiniuSDK.h>
@implementation UploadImage
/// Image
/// @param image
/// @param imageName
/// @param token token
/// @param success
/// @param failure
+ (void)uploadImage:(UIImage *)image
named:(NSString *)imageName
token:(NSString *)token
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure{
QNConfiguration *config = [QNConfiguration build:^(QNConfigurationBuilder *builder) {
builder.zone = [QNFixedZone zone2];
}];
QNUploadManager *upManager = [[QNUploadManager alloc] initWithConfiguration:config];
NSData *data = UIImageJPEGRepresentation(image, 0.5);
[upManager putData:data key:imageName token:token complete:^(QNResponseInfo *info, NSString *key, NSDictionary *resp) {
if (resp) {
success(key,resp);
}else{
failure(@(info.statusCode),info.error.localizedDescription);
}
} option:nil];
}
/// gif
/// @param data
/// @param imageName
/// @param token token
/// @param success
/// @param failure
+ (void)uploadGifImageData:(NSData *)data
named:(NSString *)imageName
token:(NSString *)token
success:(void (^)(NSString *key, NSDictionary *resp))success
failure:(void (^)(NSNumber *resCode, NSString *message))failure{
QNConfiguration *config = [QNConfiguration build:^(QNConfigurationBuilder *builder) {
builder.zone = [QNFixedZone zone2];
}];
QNUploadManager *upManager = [[QNUploadManager alloc] initWithConfiguration:config];
[upManager putData:data key:imageName token:token complete:^(QNResponseInfo *info, NSString *key, NSDictionary *resp) {
if (resp) {
success(key,resp);
}else{
failure(@(info.statusCode),info.error.localizedDescription);
}
} option:nil];
}
@end

View File

@@ -52,5 +52,4 @@ typedef NS_ENUM(NSUInteger, GradientType) {
+ (BOOL)isGifWithImageData: (NSData *)data;
+ (NSTimeInterval)durationForGifData:(NSData *)data;
+(UIImage *)mew_setImageGaussBlur:(UIImage *)image value:(CGFloat )value;
+ (NSString *)contentTypeWithImageData: (NSData *)data;
@end

View File

@@ -43,7 +43,7 @@ NSString * const KeyWithType(KeyType type) {
///
@(YES):@{
@(KeyType_PasswordEncode) : @"1ea53d260ecf11e7b56e00163e046a26",
@(KeyType_NTESQuickLoginBusinessId) : @"57ccd6209f12437496611aec8c315c46",
@(KeyType_NTESQuickLoginBusinessId) : @"200c83103d4a413591c7969dd8d4d6e2",
@(KeyType_QQAppid) : @"102044928",
@(KeyType_QQSecret) : @"715dd2601777347cd57af77c3e28402f",
@(KeyType_WechatAppid) : @"wx4b772d5ebc964a38",
@@ -66,7 +66,7 @@ NSString * const KeyWithType(KeyType type) {
///
@(NO):@{
@(KeyType_PasswordEncode) : @"1ea53d260ecf11e7b56e00163e046a26",
@(KeyType_NTESQuickLoginBusinessId) : @"57ccd6209f12437496611aec8c315c46",
@(KeyType_NTESQuickLoginBusinessId) : @"200c83103d4a413591c7969dd8d4d6e2",
@(KeyType_QQAppid) : @"102044928",
@(KeyType_QQSecret) : @"715dd2601777347cd57af77c3e28402f",
@(KeyType_WechatAppid) : @"wx4b772d5ebc964a38",

View File

@@ -422,7 +422,7 @@
NSFileManager *fileMgr = [[NSFileManager alloc] init];
[fileMgr createDirectoryAtPath:filePath withIntermediateDirectories:YES attributes:nil error:nil];
}
[UploadFile downloadAudioWithFileName:fileName musicUrl:model.playUrl mainFileName:@"kMewMainHomeVoiceCard" completion:^(BOOL isSuccess, NSString *editAudioPath) {
[UploadFile mew_downloadAudioWithFileName:fileName musicUrl:model.playUrl mainFileName:@"kMewMainHomeVoiceCard" completion:^(BOOL isSuccess, NSString *editAudioPath) {
if(isSuccess){
[self mew_setplayAudioWithUrl:editAudioPath];

View File

@@ -361,20 +361,16 @@ typedef NS_ENUM(NSUInteger, XYLoginType) {
CMModel.privacyState = YES;
}
CMModel.privacyColor = [ThemeColor secondTextColor];
CMModel.appPrivacyText = [NSString stringWithFormat:@"同意《默认》,并授权%@获取本机号码。",AppName];
CMModel.privacyFont = [UIFont systemFontOfSize:12];
CMModel.protocolColor = [ThemeColor mainTextColor];
CMModel.appPrivacyOriginBottomMargin = 30;
@kWeakify(self);
CMModel.backActionBlock = ^(int backType) {
@kStrongify(self);
CMModel.backActionBlock = ^{ //
[self hideHUD];
};
CMModel.checkActionBlock = ^(BOOL isChecked) {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if (isChecked) {

View File

@@ -299,10 +299,6 @@ NS_ASSUME_NONNULL_BEGIN
/// @param completion 完成
/// @param uid 用户id
+(void)requestGamePartnerInfoList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid;
/// 补填邀请码
/// @param completion 完成
/// @param inviteCode 邀请码
+(void)requestInviteCode:(HttpRequestHelperCompletion)completion inviteCode:(NSString *)inviteCode;
@end
NS_ASSUME_NONNULL_END

View File

@@ -336,10 +336,4 @@
+(void)requestGamePartnerInfoList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid{
[self makeRequest:@"gamePartnerInfo/list" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__,uid, nil];
}
///
/// @param completion
/// @param inviteCode
+(void)requestInviteCode:(HttpRequestHelperCompletion)completion inviteCode:(NSString *)inviteCode{
[self makeRequest:@"inviteCode/refillInviteCode" method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__,inviteCode, nil];
}
@end

View File

@@ -23,7 +23,6 @@ typedef NS_ENUM(NSInteger, XPMineSettingItemType){
XPMineSettingItemType_Clear_Memory,///清楚缓存
XPMineSettingItemType_About_Us,///关于我们
XPMineSettingItemType_CheckUpdate,///检查更新
XPMineSettingItemType_InvitationCode,///填写邀请码
};
@interface XPMineSettingItemModel : NSObject

View File

@@ -17,14 +17,12 @@ NS_ASSUME_NONNULL_BEGIN
/// 获取数据源
/// @param userinfo 当前的用户信息
- (void)getMineSettingDataSourceWith:(UserInfoModel *)userinfo;
- (void)getNewMineSettingDataSourceWith:(UserInfoModel *)userinfo;
/// 退出当前账号
- (void)logoutCurrentAccount;
///获取版本更新
- (void)getVersionUpdate;
/// 补填邀请码
-(void)fillInviteCode:(NSString *)inviteCode;
@end

View File

@@ -39,89 +39,7 @@
- (id<XPMineSettingProtocol>)getView {
return (id<XPMineSettingProtocol>) [super getView];
}
///
/// @param userinfo
- (void)getNewMineSettingDataSourceWith:(UserInfoModel *)userinfo {
XPMineSettingItemModel * phoneItem = [[XPMineSettingItemModel alloc] init];
phoneItem.title = @"手机号码";
phoneItem.subTitle = userinfo.isBindPhone ? userinfo.phone : @"设置";
phoneItem.type = XPMineSettingItemType_Phone;
self.phoneItem = phoneItem;
XPMineSettingItemModel * loginItem = [[XPMineSettingItemModel alloc] init];
loginItem.title = userinfo.isBindPasswd ? @"重置密码" : @"设置密码";
loginItem.subTitle = @"设置";
loginItem.type = XPMineSettingItemType_Login_Password;
self.loginItem = loginItem;
XPMineSettingItemModel * blackListItem = [[XPMineSettingItemModel alloc] init];
blackListItem.title = @"黑名单管理";
blackListItem.subTitle = @"";
blackListItem.type = XPMineSettingItemType_Black_Manager;
XPMineSettingItemModel * invitationCodeItem = [[XPMineSettingItemModel alloc] init];
invitationCodeItem.title = @"填写邀请码";
invitationCodeItem.subTitle = @"";
invitationCodeItem.type = XPMineSettingItemType_InvitationCode;
XPMineSettingItemModel * payItem = [[XPMineSettingItemModel alloc] init];
payItem.title = @"支付密码";
payItem.subTitle = userinfo.isBindPaymentPwd ? @"修改" : @"设置";
payItem.type = XPMineSettingItemType_Pay_Password;
self.payItem = payItem;
XPMineSettingItemModel * notificaItem = [[XPMineSettingItemModel alloc] init];
notificaItem.title = @"通知提醒设置";
notificaItem.subTitle = @"设置";
notificaItem.type = XPMineSettingItemType_Notification_Remind;
XPMineSettingItemModel * privacyItem = [[XPMineSettingItemModel alloc] init];
privacyItem.title = @"个人信息与权限";
privacyItem.subTitle = @"";
privacyItem.type = XPMineSettingItemType_Permission;
XPMineSettingItemModel * helperItem = [[XPMineSettingItemModel alloc] init];
helperItem.title = @"帮助";
helperItem.subTitle = @"";
helperItem.type = XPMineSettingItemType_Helper;
XPMineSettingItemModel * feedbackItem = [[XPMineSettingItemModel alloc] init];
feedbackItem.title = @"我要反馈";
feedbackItem.subTitle = @"";
feedbackItem.type = XPMineSettingItemType_Feedback;
XPMineSettingItemModel * clearMemoryItem = [[XPMineSettingItemModel alloc] init];
clearMemoryItem.title = @"清除缓存";
clearMemoryItem.subTitle = @"";
clearMemoryItem.type = XPMineSettingItemType_Clear_Memory;
XPMineSettingItemModel *updateItem = [[XPMineSettingItemModel alloc] init];
updateItem.title = @"检查更新";
updateItem.subTitle = @"";
updateItem.type = XPMineSettingItemType_CheckUpdate;
XPMineSettingItemModel * aboutusItem = [[XPMineSettingItemModel alloc] init];
aboutusItem.title = [NSString stringWithFormat:@"关于%@", AppName];
aboutusItem.subTitle = @"";
aboutusItem.type = XPMineSettingItemType_About_Us;
NSArray * oneSection = @[phoneItem];
NSArray * twoSection = @[loginItem,payItem, notificaItem, blackListItem];
if (userinfo.canRefillInviteCode == YES){
twoSection = @[loginItem,payItem, notificaItem, blackListItem,invitationCodeItem];
}
NSArray * threeSection = @[privacyItem];
NSArray * fourthSection = @[helperItem, clearMemoryItem, updateItem, aboutusItem];
self.datasouce = @[oneSection, twoSection, threeSection, fourthSection];
[[self getView] getMineSettingDatasourceSuccess:self.datasouce];
}
///
/// @param userinfo
@@ -147,14 +65,6 @@
blackListItem.subTitle = @"";
blackListItem.type = XPMineSettingItemType_Black_Manager;
XPMineSettingItemModel * invitationCodeItem = [[XPMineSettingItemModel alloc] init];
invitationCodeItem.title = @"填写邀请码";
invitationCodeItem.subTitle = @"";
invitationCodeItem.type = XPMineSettingItemType_InvitationCode;
XPMineSettingItemModel * payItem = [[XPMineSettingItemModel alloc] init];
payItem.title = @"支付密码";
payItem.subTitle = userinfo.isBindPaymentPwd ? @"修改" : @"设置";
@@ -198,9 +108,6 @@
NSArray * oneSection = @[phoneItem];
NSArray * twoSection = @[loginItem,payItem, notificaItem, blackListItem];
if (userinfo.canRefillInviteCode == YES){
twoSection = @[loginItem,payItem, notificaItem, blackListItem,invitationCodeItem];
}
NSArray * threeSection = @[privacyItem];
NSArray * fourthSection = @[helperItem, clearMemoryItem, updateItem, aboutusItem];
@@ -256,12 +163,4 @@
} errorToast:NO] appVersion:appVersion os:os channel:channel];
}
///
-(void)fillInviteCode:(NSString *)inviteCode{
[Api requestInviteCode:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView]fillInviteCodeSuccess];
} fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView]fillInviteCodeFail:code];
} showLoading:YES errorToast:YES] inviteCode:inviteCode];
}
@end

View File

@@ -11,7 +11,7 @@
#import "NSMutableDictionary+Saft.h"
///Tool
#import "AccountInfoStorage.h"
#import "UploadFile.h"
#import "UploadImage.h"
///Model
#import "XPMineUserInfoEditModel.h"
@@ -112,14 +112,16 @@
///
/// @param avatar
- (void)uploadAvatar:(UIImage *)avatar {
NSData *data = UIImageJPEGRepresentation(avatar, 0.5);
NSString *format = [UIImage contentTypeWithImageData:data];
NSString *name = [NSString stringWithFormat:@"image/%@.%@",[NSString createUUID],format];
[[UploadFile share]QCloudUploadImage:data named:name success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
[[self getView] uploadImageSuccess:key];
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
}];
[Api qiniuUpLoadImage:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadImage uploadImage:avatar named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
NSString *url = resp[@"path"];
[[self getView] uploadImageSuccess:url];
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
[[self getView] showErrorToast:@"上传失败"];
}];
}]];
}

View File

@@ -12,7 +12,7 @@
#import "UserInfoModel.h"
///Tool
#import "AccountInfoStorage.h"
#import "UploadFile.h"
#import "UploadImage.h"
///P
#import "XPMineUserInfoAlbumProtocol.h"
@@ -40,14 +40,16 @@
///
/// @param albumImage image
- (void)uploadAlbumImage:(UIImage *)albumImage {
NSData *data = UIImageJPEGRepresentation(albumImage, 0.5);
NSString *format = [UIImage contentTypeWithImageData:data];
NSString *name = [NSString stringWithFormat:@"image/%@.%@",[NSString createUUID],format];
[[UploadFile share]QCloudUploadImage:data named:name success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
[[self getView] uploadAlbumImageToThirdSuccess:key];
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
[[self getView] showErrorToast:@"上传失败"];
}];
[Api qiniuUpLoadImage:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadImage uploadImage:albumImage named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
NSString *url = resp[@"path"];
[[self getView] uploadAlbumImageToThirdSuccess:url];
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
[[self getView] showErrorToast:@"上传失败"];
}];
} showLoading:YES]];
}

View File

@@ -24,10 +24,6 @@ NS_ASSUME_NONNULL_BEGIN
///版本更新
-(void)getVersionUpdate:(XPVersionUpdateModel *)model;
///补填邀请码成功
-(void)fillInviteCodeSuccess;
///补填邀请码失败
-(void)fillInviteCodeFail:(NSInteger)code;
@end
NS_ASSUME_NONNULL_END

View File

@@ -26,9 +26,6 @@
#import "TTAlertConfig.h"
#import "TTPopup.h"
#import "XPUpgradeView.h"
#import "YinMineSettingFillCodeView.h"
#import "YinMineSettingPopUpView.h"
///P
#import "XPMineSettingPresent.h"
#import "XPMineSettingProtocol.h"
@@ -47,7 +44,7 @@
#import "XPLoginBindPhoneResultViewController.h"
@interface XPMineSettingViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineSettingProtocol,YinMineSettingFillCodeViewDelegate,YinMineSettingPopUpViewDelegate>
@interface XPMineSettingViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineSettingProtocol>
///
@property (nonatomic,strong) UITableView *tableView;
///
@@ -208,14 +205,6 @@
[self.presenter getVersionUpdate];
}
break;
case XPMineSettingItemType_InvitationCode:
{
YinMineSettingFillCodeView *codeView = [[YinMineSettingFillCodeView alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)];
codeView.delegate = self;
[TTPopup popupView:codeView style:TTPopupStyleAlert];
break;
}
default:
break;
}
@@ -294,18 +283,7 @@
self.userInfo = userInfo;
[self.presenter getMineSettingDataSourceWith:userInfo];
}
///
-(void)fillInviteCodeSuccess{
self.userInfo.canRefillInviteCode = NO;
[self.presenter getNewMineSettingDataSourceWith:self.userInfo];
}
///
-(void)fillInviteCodeFail:(NSInteger)code{
if (code == 211185 || code == 211186){
self.userInfo.canRefillInviteCode = NO;
[self.presenter getNewMineSettingDataSourceWith:self.userInfo];
}
}
- (void)logoutCurrentAccountSuccess {
[self.navigationController popToRootViewControllerAnimated:NO];
}
@@ -334,17 +312,7 @@
service.shouldDismissOnBackgroundTouch = NO;
[TTPopup popupWithConfig:service];
}
#pragma mark - YinMineSettingFillCodeViewDelegate
- (void)showFillInviteCodeView:(NSString *)code{
YinMineSettingPopUpView *popUpView = [[YinMineSettingPopUpView alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)];
popUpView.code = code;
popUpView.delegate = self;
[TTPopup popupView:popUpView style:TTPopupStyleAlert];
}
#pragma mark - YinMineSettingPopUpViewDelegate
-(void)confirmFillInviteCode:(NSString *)code{
[self.presenter fillInviteCode:code];
}
#pragma mark - Event Response
- (void)logoutButtonAction:(UIButton *)sender {
[self.presenter logoutCurrentAccount];

View File

@@ -76,15 +76,18 @@
///
/// @param filePath
- (void)uploadVoice:(NSString *)filePath {
NSString *name = [NSString stringWithFormat:@"file/%@",[NSString createUUID]];
[[UploadFile share]QCloudUploadFile:filePath named:name success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
[[self getView] uploadVoiceFileToThirdSuccess:key];
[Api qiniuUpLoadImage:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadFile uploadFile:filePath named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
NSString *url = resp[@"path"];
[[self getView] uploadVoiceFileToThirdSuccess:url];
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
[[self getView] uploadVoiceFileFail:message];
}];
} fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView] uploadVoiceFileFail:msg];
}]];
}
@end

View File

@@ -152,7 +152,7 @@
[self.idStackView addArrangedSubview:self.copysIdImageView];
///
[self.tagStackView addArrangedSubview:self.clanBtn];
[self.tagStackView addArrangedSubview:self.newUserImageView];
[self.tagStackView addArrangedSubview:self.officalImageView];
[self.tagStackView addArrangedSubview:self.experImageView];
@@ -286,11 +286,11 @@
make.height.mas_equalTo(22);
}];
// [self.clanBtn mas_makeConstraints:^(MASConstraintMaker *make) {
// make.height.mas_equalTo(22);
//
// }];
//
[self.clanBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(22);
}];
[self.experImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(36);
make.height.mas_equalTo(18);

View File

@@ -1,22 +0,0 @@
//
// YinMineSettingFillCodeView.h
// xplan-ios
//
// Created by duoban on 2024/3/26.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@protocol YinMineSettingFillCodeViewDelegate <NSObject>
-(void)showFillInviteCodeView:(NSString *)code;
@end
@interface YinMineSettingFillCodeView : UIView
@property(nonatomic,weak) id<YinMineSettingFillCodeViewDelegate>delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -1,161 +0,0 @@
//
// YinMineSettingFillCodeView.m
// xplan-ios
//
// Created by duoban on 2024/3/26.
//
#import "YinMineSettingFillCodeView.h"
@interface YinMineSettingFillCodeView()<UITextFieldDelegate>
@property(nonatomic,strong) UIButton *backView;
@property(nonatomic,strong) UIView *bgView;
@property(nonatomic,strong) UILabel *titleView;
@property(nonatomic,strong) UITextField *textField;
@property(nonatomic,strong) UILabel *explainView;
@property(nonatomic,strong) UIButton *confirmBtn;
@end
@implementation YinMineSettingFillCodeView
-(instancetype)initWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];
if(self){
[self installUI];
[self installConstraints];
}
return self;
}
-(void)installUI{
self.backgroundColor = [UIColor colorWithWhite:0 alpha:0.4];
[self addSubview:self.backView];
[self addSubview:self.bgView];
[self.bgView addSubview:self.titleView];
[self.bgView addSubview:self.textField];
[self.bgView addSubview:self.explainView];
[self.bgView addSubview:self.confirmBtn];
}
-(void)installConstraints{
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self);
}];
[self.bgView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(307));
make.height.mas_equalTo(kGetScaleWidth(274));
make.center.equalTo(self);
}];
[self.titleView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(28));
make.centerX.equalTo(self.bgView);
}];
[self.textField mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(74));
make.width.mas_equalTo(kGetScaleWidth(255));
make.height.mas_equalTo(kGetScaleWidth(48));
make.centerX.equalTo(self.bgView);
}];
[self.explainView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(kGetScaleWidth(26));
make.trailing.mas_equalTo(-kGetScaleWidth(26));
make.top.mas_equalTo(kGetScaleWidth(134));
make.height.mas_equalTo(kGetScaleWidth(60));
}];
[self.confirmBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(210));
make.width.mas_equalTo(kGetScaleWidth(244));
make.height.mas_equalTo(kGetScaleWidth(40));
make.centerX.equalTo(self.bgView);
}];
}
-(void)backAction{
[TTPopup dismiss];
}
-(void)textDidChange:(UITextField *)textField{
if (textField.text.length > 10){
textField.text = [textField.text substringToIndex:10];
}
}
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
if (string.length == 0){
return YES;
}
NSString *regex =@"^[a-zA-Z0-9]+$";
NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex];
if ([pred evaluateWithObject:string]) {
return YES;
}
return NO;
}
-(void)confirmBtnAction{
if (self.textField.text.length <= 0){
[XCHUDTool showErrorWithMessage:@"请填写邀请码"];
return;
}
if (self.delegate && [self.delegate respondsToSelector:@selector(showFillInviteCodeView:)]){
[self.delegate showFillInviteCodeView:self.textField.text];
}
[TTPopup dismiss];
}
#pragma mark -
- (UIButton *)backView{
if(!_backView){
_backView = [UIButton new];
[_backView addTarget:self action:@selector(backAction) forControlEvents:UIControlEventTouchUpInside];
}
return _backView;
}
- (UIView *)bgView{
if(!_bgView){
_bgView = [UIView new];
_bgView.backgroundColor = [UIColor whiteColor];
[_bgView setCornerWithLeftTopCorner:kGetScaleWidth(20) rightTopCorner:kGetScaleWidth(20) bottomLeftCorner:kGetScaleWidth(20) bottomRightCorner:kGetScaleWidth(20) size:CGSizeMake(kGetScaleWidth(307), kGetScaleWidth(274))];
}
return _bgView;
}
- (UILabel *)titleView{
if(!_titleView){
_titleView = [UILabel labelInitWithText:@"填写邀请码" font:kFontSemibold(16) textColor:UIColorFromRGB(0x2B2D33)];
}
return _titleView;
}
- (UITextField *)textField{
if(!_textField){
_textField = [UITextField new];
NSAttributedString *att = [[NSAttributedString alloc]initWithString:@"请输入要填写的邀请码" attributes:@{NSFontAttributeName:kFontRegular(14),NSForegroundColorAttributeName:UIColorFromRGB(0x878B9C)}];
_textField.attributedPlaceholder = att;
_textField.textAlignment = NSTextAlignmentCenter;
_textField.backgroundColor = UIColorFromRGB(0xF3F5FA);
[_textField setCornerWithLeftTopCorner:kGetScaleWidth(8) rightTopCorner:kGetScaleWidth(8) bottomLeftCorner:kGetScaleWidth(8) bottomRightCorner:kGetScaleWidth(8) size:CGSizeMake(kGetScaleWidth(255), kGetScaleWidth(48))];
[_textField addTarget:self action:@selector(textDidChange:) forControlEvents:UIControlEventEditingChanged];
_textField.delegate = self;
}
return _textField;
}
- (UILabel *)explainView{
if(!_explainView){
_explainView = [UILabel new];
_explainView.numberOfLines = 0;
NSMutableParagraphStyle *style = [NSMutableParagraphStyle new];
style.lineSpacing = 3;
NSMutableAttributedString *att = [[NSMutableAttributedString alloc]initWithString:@"填写说明:\n请填写邀请人的邀请码\n邀请码只能填写一次请勿随意填写" attributes:@{NSFontAttributeName:kFontRegular(14),NSForegroundColorAttributeName:UIColorFromRGB(0xB3B3C3),NSParagraphStyleAttributeName:style}];
[att addAttributes:@{NSFontAttributeName:kFontRegular(14),NSForegroundColorAttributeName:UIColorFromRGB(0x2B2D33)} range:[att.string rangeOfString:@"填写说明:"]];
_explainView.attributedText = att;
}
return _explainView;
}
- (UIButton *)confirmBtn{
if(!_confirmBtn){
_confirmBtn = [UIButton new];
_confirmBtn.backgroundColor = UIColorFromRGB(0xFFDA24);
_confirmBtn.layer.cornerRadius = kGetScaleWidth(40)/2;
_confirmBtn.layer.masksToBounds = true;
[_confirmBtn setTitle:@"确认" forState:UIControlStateNormal];
[_confirmBtn setTitleColor:UIColorFromRGB(0x2B2D33) forState:UIControlStateNormal];
_confirmBtn.titleLabel.font = kFontMedium(14);
[_confirmBtn addTarget:self action:@selector(confirmBtnAction) forControlEvents:UIControlEventTouchUpInside];
}
return _confirmBtn;
}
@end

View File

@@ -1,21 +0,0 @@
//
// YinMineSettingPopUpView.h
// xplan-ios
//
// Created by duoban on 2024/3/26.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@protocol YinMineSettingPopUpViewDelegate <NSObject>
-(void)confirmFillInviteCode:(NSString *)code;
@end
@interface YinMineSettingPopUpView : UIView
@property(nonatomic,copy) NSString *code;
@property(nonatomic,weak) id<YinMineSettingPopUpViewDelegate>delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -1,115 +0,0 @@
//
// YinMineSettingPopUpView.m
// xplan-ios
//
// Created by duoban on 2024/3/26.
//
#import "YinMineSettingPopUpView.h"
@interface YinMineSettingPopUpView()
@property(nonatomic,strong) UIView *bgView;
@property(nonatomic,strong) UILabel *contextView;
@property(nonatomic,strong) UIButton *cancelBtn;
@property(nonatomic,strong) UIButton *confirmBtn;
@end
@implementation YinMineSettingPopUpView
-(instancetype)initWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];
if(self){
[self installUI];
[self installConstraints];
}
return self;
}
-(void)installUI{
[self addSubview:self.bgView];
[self.bgView addSubview:self.contextView];
[self.bgView addSubview:self.cancelBtn];
[self.bgView addSubview:self.confirmBtn];
}
-(void)installConstraints{
[self.bgView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(307));
make.height.mas_equalTo(kGetScaleWidth(176));
make.center.equalTo(self);
}];
[self.contextView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(32));
make.centerX.equalTo(self.bgView);
}];
[self.cancelBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(112));
make.leading.mas_equalTo(kGetScaleWidth(22));
make.width.mas_equalTo(kGetScaleWidth(124));
make.height.mas_equalTo(kGetScaleWidth(40));
}];
[self.confirmBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(112));
make.trailing.mas_equalTo(-kGetScaleWidth(22));
make.width.mas_equalTo(kGetScaleWidth(124));
make.height.mas_equalTo(kGetScaleWidth(40));
}];
}
- (void)setCode:(NSString *)code{
_code = code;
NSMutableAttributedString *att = [[NSMutableAttributedString alloc]initWithString:[NSString stringWithFormat:@"确认填写 邀请码【%@】?\n\n注意邀请码只能填写1次",_code] attributes:@{NSFontAttributeName:kFontRegular(14),NSForegroundColorAttributeName:UIColorFromRGB(0x2B2D33)}];
[att addAttributes:@{NSFontAttributeName:kFontMedium(14),NSForegroundColorAttributeName:UIColorFromRGB(0x2B2D33)} range:[att.string rangeOfString:[NSString stringWithFormat:@"【%@】",_code]]];
[att addAttributes:@{NSFontAttributeName:kFontSemibold(16),NSForegroundColorAttributeName:UIColorFromRGB(0xFFDA24)} range:[att.string rangeOfString:@"1次"]];
_contextView.attributedText = att;
}
-(void)cancelBtnAction{
[TTPopup dismiss];
}
-(void)confirmBtnAction{
[TTPopup dismiss];
if (self.delegate && [self.delegate respondsToSelector:@selector(confirmFillInviteCode:)]){
[self.delegate confirmFillInviteCode:self.code];
}
}
#pragma mark -
- (UIView *)bgView{
if(!_bgView){
_bgView = [UIView new];
_bgView.backgroundColor = [UIColor whiteColor];
[_bgView setCornerWithLeftTopCorner:kGetScaleWidth(20) rightTopCorner:kGetScaleWidth(20) bottomLeftCorner:kGetScaleWidth(20) bottomRightCorner:kGetScaleWidth(20) size:CGSizeMake(kGetScaleWidth(307), kGetScaleWidth(176))];
}
return _bgView;
}
- (UILabel *)contextView{
if(!_contextView){
_contextView = [UILabel new];
_contextView.textAlignment = NSTextAlignmentCenter;
_contextView.numberOfLines = 3;
}
return _contextView;
}
- (UIButton *)cancelBtn{
if(!_cancelBtn){
_cancelBtn = [UIButton new];
_cancelBtn.backgroundColor = UIColorRGBAlpha(0xFFDA24, 0.2);
_cancelBtn.layer.cornerRadius = kGetScaleWidth(40)/2;
_cancelBtn.layer.masksToBounds = true;
[_cancelBtn setTitle:@"取消" forState:UIControlStateNormal];
[_cancelBtn setTitleColor:UIColorFromRGB(0x2B2D33) forState:UIControlStateNormal];
_cancelBtn.titleLabel.font = kFontMedium(14);
[_cancelBtn addTarget:self action:@selector(cancelBtnAction) forControlEvents:UIControlEventTouchUpInside];
}
return _cancelBtn;
}
- (UIButton *)confirmBtn{
if(!_confirmBtn){
_confirmBtn = [UIButton new];
_confirmBtn.backgroundColor = UIColorFromRGB(0xFFDA24);
_confirmBtn.layer.cornerRadius = kGetScaleWidth(40)/2;
_confirmBtn.layer.masksToBounds = true;
[_confirmBtn setTitle:@"确认" forState:UIControlStateNormal];
[_confirmBtn setTitleColor:UIColorFromRGB(0x2B2D33) forState:UIControlStateNormal];
_confirmBtn.titleLabel.font = kFontMedium(14);
[_confirmBtn addTarget:self action:@selector(confirmBtnAction) forControlEvents:UIControlEventTouchUpInside];
}
return _confirmBtn;
}
@end

View File

@@ -15,7 +15,7 @@
#import "ThemeColor.h"
#import "UIImage+Utils.h"
#import "Api+Mine.h"
#import "UploadFile.h"
#import "UploadImage.h"
#import "TTPopup.h"
#import "NSArray+Safe.h"
#import "NSMutableDictionary+Saft.h"
@@ -170,43 +170,53 @@
}
- (void)uploadAlbumPicList:(NSArray *)array finish:(void(^)(NSArray *list))finish {
dispatch_semaphore_t semaphore = dispatch_semaphore_create(1);
dispatch_queue_t queue = dispatch_get_global_queue(0, 0);
NSMutableArray * dataArray = [NSMutableArray array];
dispatch_async(queue, ^{
for (UIImage * image in array) {
dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);
[Api qiniuUpLoadImage:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadImage uploadImage:image named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
dispatch_semaphore_signal(semaphore);
self.imageCount ++;
NSMutableDictionary * dict= [NSMutableDictionary dictionary];
MonentsPicResInfo * infor = [MonentsPicResInfo modelWithDictionary:resp];
if (infor.path) {
[dict safeSetObject:infor.path forKey:@"resUrl"];
}
if (infor.format) {
[dict safeSetObject:infor.format forKey:@"format"];
}
dispatch_semaphore_t semaphore = dispatch_semaphore_create(1);
dispatch_queue_t queue = dispatch_get_global_queue(0, 0);
NSMutableArray * dataArray = [NSMutableArray array];
dispatch_async(queue, ^{
for (UIImage * image in array) {
dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);
NSData *data = UIImageJPEGRepresentation(image, 0.5);
NSString *format = [UIImage contentTypeWithImageData:data];
NSString *name = [NSString stringWithFormat:@"image/%@.%@",[NSString createUUID],format];
[[UploadFile share]QCloudUploadImage:data named:name success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
dispatch_semaphore_signal(semaphore);
self.imageCount ++;
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
if (image.size.width > 0){
[dict safeSetObject:@(image.size.width) forKey:@"width"];
}
if (image.size.height){
[dict safeSetObject:@(image.size.height) forKey:@"height"];
}
if (key.length > 0) {
[dict safeSetObject:key forKey:@"resUrl"];
}
[dict safeSetObject:format forKey:@"format"];
[dataArray addObject:dict];
if (self.imageCount == array.count) {
dispatch_async(dispatch_get_main_queue(), ^{
finish(dataArray);
});
}
if (infor.w) {
[dict safeSetObject:@(infor.w) forKey:@"width"];
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
self.imageCount ++;
dispatch_semaphore_signal(semaphore);
}];
}
});
if (infor.h) {
[dict safeSetObject:@(infor.h) forKey:@"height"];
}
[dataArray addObject:dict];
if (self.imageCount == array.count) {
dispatch_async(dispatch_get_main_queue(), ^{
finish(dataArray);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
self.imageCount ++;
dispatch_semaphore_signal(semaphore);
}];
} else {
self.imageCount ++;
dispatch_semaphore_signal(semaphore);
}
}];
}
});
}
#pragma mark - UITextViewDelegate

View File

@@ -11,7 +11,7 @@
#import <JXCategoryView/JXCategoryIndicatorBackgroundView.h>
#import <JXCategoryView/JXCategoryListContainerView.h>
#import "XPPrivilegeCardItemVC.h"
#import "UploadFile.h"
#import "UploadImage.h"
#import "Api+Mine.h"
#import "XPPrivilegeCardTitlView.h"
#import "XPPrivilegeCardProduceView.h"
@@ -284,43 +284,59 @@
id obj = array.firstObject;
if(self.produceView.cardType == 1){
NSData *data = (NSData *)obj;
NSString *format = [UIImage contentTypeWithImageData:data];
NSString *name = [NSString stringWithFormat:@"image/%@.%@",[NSString createUUID],format];
[[UploadFile share]QCloudUploadImage:data named:name success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
if(key != nil){
[Api qiniuUpLoadImage:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadImage uploadGifImageData:(NSData *)obj named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
NSString *path = resp[@"path"];
if(path != nil){
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[path]);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[]);
});
}];
} else {
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[key]);
finish(@[]);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[]);
});
}];
}];
return;
}
NSData *data = UIImageJPEGRepresentation((UIImage *)obj, 0.5);
NSString *format = [UIImage contentTypeWithImageData:data];
NSString *name = [NSString stringWithFormat:@"image/%@.%@",[NSString createUUID],format];
[[UploadFile share]QCloudUploadImage:data named:name success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
if(key != nil){
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[key]);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
[Api qiniuUpLoadImage:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadImage uploadImage:(UIImage *)obj named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
NSString *path = resp[@"path"];
if(path != nil){
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[path]);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[]);
});
}];
}];
} else {
dispatch_async(dispatch_get_main_queue(), ^{
finish(@[]);
});
}
}];
}
@@ -331,43 +347,66 @@
NSMutableDictionary *photoDic = [NSMutableDictionary dictionary];
dispatch_async(queue, ^{
dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);
[Api qiniuUpLoadImage:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadImage uploadImage:self.videoModel.videoPhoto named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
dispatch_semaphore_signal(semaphore);
NSString *path = resp[@"path"];
if(path != nil){
[photoDic setValue:path forKey:@"photoUrl"];
}
if(photoDic.allKeys.count == 2){
dispatch_async(dispatch_get_main_queue(), ^{
finish(photoDic);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
dispatch_semaphore_signal(semaphore);
[photoDic setValue:@"" forKey:@"photoUrl"];
dispatch_async(dispatch_get_main_queue(), ^{
finish(photoDic);
});
NSData *data = UIImageJPEGRepresentation(self.videoModel.videoPhoto, 0.5);
NSString *format = [UIImage contentTypeWithImageData:data];
NSString *name = [NSString stringWithFormat:@"image/%@.%@",[NSString createUUID],format];
[[UploadFile share]QCloudUploadImage:data named:name success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
dispatch_semaphore_signal(semaphore);
if(key != nil){
[photoDic setValue:key forKey:@"photoUrl"];
}
if(photoDic.allKeys.count == 2){
}];
} else {
dispatch_semaphore_signal(semaphore);
[photoDic setValue:@"" forKey:@"photoUrl"];
dispatch_async(dispatch_get_main_queue(), ^{
finish(photoDic);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
dispatch_semaphore_signal(semaphore);
[photoDic setValue:@"" forKey:@"photoUrl"];
dispatch_async(dispatch_get_main_queue(), ^{
finish(photoDic);
});
}];
dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);
NSString *file = [NSString stringWithFormat:@"file/%@",[NSString createUUID]];
[[UploadFile share]QCloudUploadFileWithData:videoData named:file success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
dispatch_semaphore_signal(semaphore);
if(key != nil){
[photoDic setValue:key forKey:@"videoUrl"];
}
if(photoDic.allKeys.count == 2){
dispatch_async(dispatch_get_main_queue(), ^{
finish(photoDic);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
[Api qiniuUpLoadImage:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
NSString *key = data.data[@"key"];
NSString *token = data.data[@"token"];
[UploadImage uploadGifImageData:videoData named:key token:token success:^(NSString * _Nonnull key, NSDictionary * _Nonnull resp) {
dispatch_semaphore_signal(semaphore);
NSString *path = resp[@"path"];
if(path != nil){
[photoDic setValue:path forKey:@"videoUrl"];
}
if(photoDic.allKeys.count == 2){
dispatch_async(dispatch_get_main_queue(), ^{
finish(photoDic);
});
}
} failure:^(NSNumber * _Nonnull resCode, NSString * _Nonnull message) {
dispatch_semaphore_signal(semaphore);
[photoDic setValue:@"" forKey:@"videoUrl"];
if(photoDic.allKeys.count == 2){
dispatch_async(dispatch_get_main_queue(), ^{
finish(photoDic);
});
}
}];
} else {
dispatch_semaphore_signal(semaphore);
[photoDic setValue:@"" forKey:@"videoUrl"];
if(photoDic.allKeys.count == 2){
@@ -375,7 +414,8 @@
finish(photoDic);
});
}
}];
}
}];
});

View File

@@ -1125,9 +1125,10 @@
///gif
- (void)beginGifAnimation:(NSString *)giftUrl startPoint:(CGPoint)startPoint endPoint:(CGPoint)endPoint {
FLAnimatedImageView * giftImageView = [self.giftReuseArray anyObject];
CGFloat width = (kGetScaleWidth(256)/3) ;
CGFloat heigth = (kGetScaleWidth(144)/3) ;
if (giftImageView == nil) {
CGFloat width = (kGetScaleWidth(256)/3) ;
CGFloat heigth = (kGetScaleWidth(144)/3) ;
giftImageView = [[FLAnimatedImageView alloc]initWithFrame:CGRectMake(0, 0 , width, heigth)];
giftImageView.center = startPoint;
giftImageView.alpha = 1;
@@ -1137,8 +1138,6 @@
}else {
[self.giftReuseArray removeObject:giftImageView];
}
giftImageView.frame = CGRectMake(0, 0 , width, heigth);
giftImageView.center = startPoint;
giftImageView.hidden = NO;
giftImageView.layer.cornerRadius = 6;
giftImageView.layer.masksToBounds = YES;
@@ -1176,9 +1175,10 @@
///
- (void)beginGiftAnimation:(NSString *)giftUrl startPoint:(CGPoint)startPoint endPoint:(CGPoint)endPoint {
FLAnimatedImageView * giftImageView = [self.giftReuseArray anyObject];
CGFloat width = 55;
CGFloat heigth = 55;
if (giftImageView == nil) {
CGFloat width = 55;
CGFloat heigth = 55;
giftImageView = [[FLAnimatedImageView alloc]initWithFrame:CGRectMake(0, 0 , width, heigth)];
giftImageView.center = startPoint;
giftImageView.alpha = 1;
@@ -1188,17 +1188,12 @@
}else {
[self.giftReuseArray removeObject:giftImageView];
}
giftImageView.frame = CGRectMake(0, 0 , width, heigth);
giftImageView.center = startPoint;
giftImageView.hidden = NO;
[giftImageView sd_setImageWithURL:[NSURL URLWithString:giftUrl]completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
[self.lowLevelView addSubview:giftImageView];
CAAnimationGroup *group = [XPRoomAnimationTool createGiftAnimationStartPoint:startPoint endPoint:endPoint];
[giftImageView.layer addAnimation:group forKey:@"giftDisplayViewAnimation"];
[self performSelector:@selector(aniationDidFinish:) withObject:giftImageView afterDelay:(3.2+0.25)];
}];
[giftImageView sd_setImageWithURL:[NSURL URLWithString:giftUrl]];
[self.lowLevelView addSubview:giftImageView];
CAAnimationGroup *group = [XPRoomAnimationTool createGiftAnimationStartPoint:startPoint endPoint:endPoint];
[giftImageView.layer addAnimation:group forKey:@"giftDisplayViewAnimation"];
[self performSelector:@selector(aniationDidFinish:) withObject:giftImageView afterDelay:(3.2+0.25)];
}
- (void)aniationVideoViewDidFinish:(UIView *)videoView{
@@ -1410,22 +1405,10 @@
if (obj.otherViewType == GiftOtherViewTypeMp4 && obj.viewUrl && obj.viewUrl.length > 0 && roomInfor.hasAnimationEffect) {
GiftReceiveInfoModel * model = [[GiftReceiveInfoModel alloc] init];
model.viewUrl = obj.viewUrl;
model.gift = obj;
model.nick = receiveInfo.nick;
model.targetUids = receiveInfo.targetUids;
model.isBatch = receiveInfo.isBatch;
model.targetAvatar = receiveInfo.targetAvatar;
model.targetNick = receiveInfo.targetNick;
[self.giftEffectQueue addObject:model];
} else if (obj.hasVggPic && roomInfor.hasAnimationEffect) {
GiftReceiveInfoModel * model = [[GiftReceiveInfoModel alloc] init];
model.viewUrl = obj.viewUrl;
model.gift = obj;
model.nick = receiveInfo.nick;
model.targetUids = receiveInfo.targetUids;
model.isBatch = receiveInfo.isBatch;
model.targetAvatar = receiveInfo.targetAvatar;
model.targetNick = receiveInfo.targetNick;
model.vggUrl = obj.vggUrl;
[self.giftEffectQueue addObject:model];
}
}];

View File

@@ -239,7 +239,6 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
}
#pragma mark - Private Method
@@ -255,9 +254,6 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出
[self.view addSubview:self.roomHeaderView];
[self.view addSubview:self.functionView];
[self.view addSubview:self.animationView];
id traget = self.navigationController.interactivePopGestureRecognizer.delegate;
UIPanGestureRecognizer * pan = [[UIPanGestureRecognizer alloc]initWithTarget:traget action:nil];
[self.view addGestureRecognizer:pan];
}
- (void)initSubViewConstraints {

View File

@@ -34,7 +34,6 @@
#import "XPAdImageTool.h"
#import "YYUtility.h"
#import "NSMutableDictionary+Saft.h"
#import "UploadFile.h"
///Model
#import "AccountModel.h"
#import "RoomInfoModel.h"
@@ -201,7 +200,6 @@ UIKIT_EXTERN NSString *kTabShowAnchorCardKey;
- (void)autoLoginSuccess {
[self.presenter loginNIM];
[self.presenter getUserInfo];
[[UploadFile share]initQCloud];
///
[self.presenter checkTranscation];
///