修复bug
This commit is contained in:
12
Podfile.lock
12
Podfile.lock
@@ -2,6 +2,7 @@ PODS:
|
||||
- Alamofire (5.8.1)
|
||||
- DeviceKit (4.9.0)
|
||||
- HandyJSON (5.0.2)
|
||||
- HappyDNS (1.0.3)
|
||||
- Kingfisher (7.10.2)
|
||||
- LookinServer (1.2.6):
|
||||
- LookinServer/Core (= 1.2.6)
|
||||
@@ -18,6 +19,8 @@ PODS:
|
||||
- RxSwift (~> 6.2)
|
||||
- Nuke (10.7.1)
|
||||
- Protobuf (3.25.3)
|
||||
- Qiniu (8.7.1):
|
||||
- HappyDNS (~> 1.0.3)
|
||||
- Reusable (4.1.2):
|
||||
- Reusable/Storyboard (= 4.1.2)
|
||||
- Reusable/View (= 4.1.2)
|
||||
@@ -55,6 +58,7 @@ DEPENDENCIES:
|
||||
- NIMSDK_LITE (= 9.6.1)
|
||||
- "NSObject+Rx"
|
||||
- Nuke
|
||||
- Qiniu
|
||||
- Reusable
|
||||
- RxCocoa
|
||||
- RxSwift
|
||||
@@ -67,6 +71,7 @@ SPEC REPOS:
|
||||
- Alamofire
|
||||
- DeviceKit
|
||||
- HandyJSON
|
||||
- HappyDNS
|
||||
- Kingfisher
|
||||
- LookinServer
|
||||
- MBProgressHUD
|
||||
@@ -75,6 +80,7 @@ SPEC REPOS:
|
||||
- "NSObject+Rx"
|
||||
- Nuke
|
||||
- Protobuf
|
||||
- Qiniu
|
||||
- Reusable
|
||||
- RxCocoa
|
||||
- RxRelay
|
||||
@@ -88,6 +94,7 @@ SPEC CHECKSUMS:
|
||||
Alamofire: 3ca42e259043ee0dc5c0cdd76c4bc568b8e42af7
|
||||
DeviceKit: 847709bf70b78fd9ab765bd571fb9f5f815c3fc1
|
||||
HandyJSON: 9e4e236f5d2dbefad5155a77417bbea438201c03
|
||||
HappyDNS: 5421fc84775a299517e994afadb9e732b265ec65
|
||||
Kingfisher: 99edc495d3b7607e6425f0d6f6847b2abd6d716d
|
||||
LookinServer: de929b55f8fa2e241c18c39af3f900eaa9166389
|
||||
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
|
||||
@@ -96,6 +103,7 @@ SPEC CHECKSUMS:
|
||||
"NSObject+Rx": 61cf1f7306a73dcef8b36649198af0813ec18dfd
|
||||
Nuke: 279f17a599fd1c83cf51de5e0e1f2db143a287b0
|
||||
Protobuf: 8e9074797a13c484a79959fdb819ef4ae6da7dbe
|
||||
Qiniu: 088b904e53819277376d64cd90cfd139d532e386
|
||||
Reusable: 6bae6a5e8aa793c9c441db0213c863a64bce9136
|
||||
RxCocoa: 94f817b71c07517321eb4f9ad299112ca8af743b
|
||||
RxRelay: 1de1523e604c72b6c68feadedd1af3b1b4d0ecbd
|
||||
@@ -105,6 +113,6 @@ SPEC CHECKSUMS:
|
||||
SVGAPlayer: 318b85a78b61292d6ae9dfcd651f3f0d1cdadd86
|
||||
TZImagePickerController: f1c9f1cae6ac0e30b31aaa9698f9bf4a7cf5b84f
|
||||
|
||||
PODFILE CHECKSUM: 5f55788a4e0d9fc7115e0ba01f38062806d64f6d
|
||||
PODFILE CHECKSUM: 0e42b3af214ecf970f2f77d700453a7ab9bf4774
|
||||
|
||||
COCOAPODS: 1.14.3
|
||||
COCOAPODS: 1.12.1
|
||||
|
12
Pods/Manifest.lock
generated
12
Pods/Manifest.lock
generated
@@ -2,6 +2,7 @@ PODS:
|
||||
- Alamofire (5.8.1)
|
||||
- DeviceKit (4.9.0)
|
||||
- HandyJSON (5.0.2)
|
||||
- HappyDNS (1.0.3)
|
||||
- Kingfisher (7.10.2)
|
||||
- LookinServer (1.2.6):
|
||||
- LookinServer/Core (= 1.2.6)
|
||||
@@ -18,6 +19,8 @@ PODS:
|
||||
- RxSwift (~> 6.2)
|
||||
- Nuke (10.7.1)
|
||||
- Protobuf (3.25.3)
|
||||
- Qiniu (8.7.1):
|
||||
- HappyDNS (~> 1.0.3)
|
||||
- Reusable (4.1.2):
|
||||
- Reusable/Storyboard (= 4.1.2)
|
||||
- Reusable/View (= 4.1.2)
|
||||
@@ -55,6 +58,7 @@ DEPENDENCIES:
|
||||
- NIMSDK_LITE (= 9.6.1)
|
||||
- "NSObject+Rx"
|
||||
- Nuke
|
||||
- Qiniu
|
||||
- Reusable
|
||||
- RxCocoa
|
||||
- RxSwift
|
||||
@@ -67,6 +71,7 @@ SPEC REPOS:
|
||||
- Alamofire
|
||||
- DeviceKit
|
||||
- HandyJSON
|
||||
- HappyDNS
|
||||
- Kingfisher
|
||||
- LookinServer
|
||||
- MBProgressHUD
|
||||
@@ -75,6 +80,7 @@ SPEC REPOS:
|
||||
- "NSObject+Rx"
|
||||
- Nuke
|
||||
- Protobuf
|
||||
- Qiniu
|
||||
- Reusable
|
||||
- RxCocoa
|
||||
- RxRelay
|
||||
@@ -88,6 +94,7 @@ SPEC CHECKSUMS:
|
||||
Alamofire: 3ca42e259043ee0dc5c0cdd76c4bc568b8e42af7
|
||||
DeviceKit: 847709bf70b78fd9ab765bd571fb9f5f815c3fc1
|
||||
HandyJSON: 9e4e236f5d2dbefad5155a77417bbea438201c03
|
||||
HappyDNS: 5421fc84775a299517e994afadb9e732b265ec65
|
||||
Kingfisher: 99edc495d3b7607e6425f0d6f6847b2abd6d716d
|
||||
LookinServer: de929b55f8fa2e241c18c39af3f900eaa9166389
|
||||
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
|
||||
@@ -96,6 +103,7 @@ SPEC CHECKSUMS:
|
||||
"NSObject+Rx": 61cf1f7306a73dcef8b36649198af0813ec18dfd
|
||||
Nuke: 279f17a599fd1c83cf51de5e0e1f2db143a287b0
|
||||
Protobuf: 8e9074797a13c484a79959fdb819ef4ae6da7dbe
|
||||
Qiniu: 088b904e53819277376d64cd90cfd139d532e386
|
||||
Reusable: 6bae6a5e8aa793c9c441db0213c863a64bce9136
|
||||
RxCocoa: 94f817b71c07517321eb4f9ad299112ca8af743b
|
||||
RxRelay: 1de1523e604c72b6c68feadedd1af3b1b4d0ecbd
|
||||
@@ -105,6 +113,6 @@ SPEC CHECKSUMS:
|
||||
SVGAPlayer: 318b85a78b61292d6ae9dfcd651f3f0d1cdadd86
|
||||
TZImagePickerController: f1c9f1cae6ac0e30b31aaa9698f9bf4a7cf5b84f
|
||||
|
||||
PODFILE CHECKSUM: 5f55788a4e0d9fc7115e0ba01f38062806d64f6d
|
||||
PODFILE CHECKSUM: 0e42b3af214ecf970f2f77d700453a7ab9bf4774
|
||||
|
||||
COCOAPODS: 1.14.3
|
||||
COCOAPODS: 1.12.1
|
||||
|
10488
Pods/Pods.xcodeproj/project.pbxproj
generated
10488
Pods/Pods.xcodeproj/project.pbxproj
generated
File diff suppressed because it is too large
Load Diff
@@ -15,7 +15,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>7.11.0</string>
|
||||
<string>7.10.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
|
@@ -13,7 +13,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>7.11.0</string>
|
||||
<string>7.10.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
|
@@ -1,11 +1,11 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/Moya" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_ROOT}/NIMSDK_LITE/NIMSDK"
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/LookinServer" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/Moya" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/TZImagePickerController" "${PODS_ROOT}/NIMSDK_LITE/NIMSDK"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit/DeviceKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON/HandyJSON.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS/HappyDNS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD/MBProgressHUD.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Moya/Moya.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx/NSObject_Rx.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke/Nuke.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu/Qiniu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable/Reusable.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay/RxRelay.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive/SSZipArchive.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer/SVGAPlayer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers"
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit/DeviceKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON/HandyJSON.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS/HappyDNS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/LookinServer/LookinServer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD/MBProgressHUD.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Moya/Moya.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx/NSObject_Rx.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke/Nuke.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu/Qiniu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable/Reusable.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay/RxRelay.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive/SSZipArchive.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer/SVGAPlayer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/TZImagePickerController/TZImagePickerController.framework/Headers"
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
|
||||
OTHER_LDFLAGS = $(inherited) -l"c++" -l"iconv" -l"resolv" -l"sqlite3.0" -l"z" -framework "AVFoundation" -framework "Accelerate" -framework "Alamofire" -framework "AudioToolbox" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "CoreTelephony" -framework "DeviceKit" -framework "Foundation" -framework "HandyJSON" -framework "HappyDNS" -framework "Kingfisher" -framework "MBProgressHUD" -framework "Moya" -framework "NIMNOS" -framework "NIMSDK" -framework "NSObject_Rx" -framework "Nuke" -framework "Protobuf" -framework "Qiniu" -framework "QuartzCore" -framework "Reusable" -framework "RxCocoa" -framework "RxRelay" -framework "RxSwift" -framework "SSZipArchive" -framework "SVGAPlayer" -framework "Security" -framework "SnapKit" -framework "SystemConfiguration" -framework "UIKit" -framework "VideoToolbox" -weak_framework "Combine" -weak_framework "SwiftUI"
|
||||
OTHER_LDFLAGS = $(inherited) -l"c++" -l"iconv" -l"resolv" -l"sqlite3.0" -l"z" -framework "AVFoundation" -framework "Accelerate" -framework "Alamofire" -framework "AudioToolbox" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "CoreTelephony" -framework "DeviceKit" -framework "Foundation" -framework "HandyJSON" -framework "HappyDNS" -framework "Kingfisher" -framework "LookinServer" -framework "MBProgressHUD" -framework "Moya" -framework "NIMNOS" -framework "NIMSDK" -framework "NSObject_Rx" -framework "Nuke" -framework "Photos" -framework "PhotosUI" -framework "Protobuf" -framework "Qiniu" -framework "QuartzCore" -framework "Reusable" -framework "RxCocoa" -framework "RxRelay" -framework "RxSwift" -framework "SSZipArchive" -framework "SVGAPlayer" -framework "Security" -framework "SnapKit" -framework "SystemConfiguration" -framework "TZImagePickerController" -framework "UIKit" -framework "VideoToolbox" -weak_framework "Combine" -weak_framework "SwiftUI"
|
||||
OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
|
@@ -1,11 +1,11 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/Moya" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_ROOT}/NIMSDK_LITE/NIMSDK"
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/Moya" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/TZImagePickerController" "${PODS_ROOT}/NIMSDK_LITE/NIMSDK"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit/DeviceKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON/HandyJSON.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS/HappyDNS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD/MBProgressHUD.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Moya/Moya.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx/NSObject_Rx.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke/Nuke.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu/Qiniu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable/Reusable.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay/RxRelay.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive/SSZipArchive.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer/SVGAPlayer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers"
|
||||
HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit/DeviceKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON/HandyJSON.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/HappyDNS/HappyDNS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD/MBProgressHUD.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Moya/Moya.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NSObject+Rx/NSObject_Rx.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Nuke/Nuke.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Protobuf/Protobuf.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Qiniu/Qiniu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Reusable/Reusable.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa/RxCocoa.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay/RxRelay.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive/SSZipArchive.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SVGAPlayer/SVGAPlayer.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/TZImagePickerController/TZImagePickerController.framework/Headers"
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
|
||||
OTHER_LDFLAGS = $(inherited) -l"c++" -l"iconv" -l"resolv" -l"sqlite3.0" -l"z" -framework "AVFoundation" -framework "Accelerate" -framework "Alamofire" -framework "AudioToolbox" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "CoreTelephony" -framework "DeviceKit" -framework "Foundation" -framework "HandyJSON" -framework "HappyDNS" -framework "Kingfisher" -framework "MBProgressHUD" -framework "Moya" -framework "NIMNOS" -framework "NIMSDK" -framework "NSObject_Rx" -framework "Nuke" -framework "Protobuf" -framework "Qiniu" -framework "QuartzCore" -framework "Reusable" -framework "RxCocoa" -framework "RxRelay" -framework "RxSwift" -framework "SSZipArchive" -framework "SVGAPlayer" -framework "Security" -framework "SnapKit" -framework "SystemConfiguration" -framework "UIKit" -framework "VideoToolbox" -weak_framework "Combine" -weak_framework "SwiftUI"
|
||||
OTHER_LDFLAGS = $(inherited) -l"c++" -l"iconv" -l"resolv" -l"sqlite3.0" -l"z" -framework "AVFoundation" -framework "Accelerate" -framework "Alamofire" -framework "AudioToolbox" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "CoreTelephony" -framework "DeviceKit" -framework "Foundation" -framework "HandyJSON" -framework "HappyDNS" -framework "Kingfisher" -framework "MBProgressHUD" -framework "Moya" -framework "NIMNOS" -framework "NIMSDK" -framework "NSObject_Rx" -framework "Nuke" -framework "Photos" -framework "PhotosUI" -framework "Protobuf" -framework "Qiniu" -framework "QuartzCore" -framework "Reusable" -framework "RxCocoa" -framework "RxRelay" -framework "RxSwift" -framework "SSZipArchive" -framework "SVGAPlayer" -framework "Security" -framework "SnapKit" -framework "SystemConfiguration" -framework "TZImagePickerController" -framework "UIKit" -framework "VideoToolbox" -weak_framework "Combine" -weak_framework "SwiftUI"
|
||||
OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
|
||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
|
@@ -15,7 +15,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>6.6.0</string>
|
||||
<string>6.5.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
|
@@ -1,4 +1,3 @@
|
||||
APPLICATION_EXTENSION_API_ONLY = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift"
|
||||
|
@@ -1,4 +1,3 @@
|
||||
APPLICATION_EXTENSION_API_ONLY = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxRelay" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift"
|
||||
|
@@ -15,7 +15,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>6.6.0</string>
|
||||
<string>6.5.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
|
@@ -1,4 +1,3 @@
|
||||
APPLICATION_EXTENSION_API_ONLY = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxRelay
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift"
|
||||
|
@@ -1,4 +1,3 @@
|
||||
APPLICATION_EXTENSION_API_ONLY = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxRelay
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift"
|
||||
|
@@ -15,7 +15,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>6.6.0</string>
|
||||
<string>6.5.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
|
@@ -1,4 +1,3 @@
|
||||
APPLICATION_EXTENSION_API_ONLY = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxSwift
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
|
@@ -1,4 +1,3 @@
|
||||
APPLICATION_EXTENSION_API_ONLY = YES
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
||||
CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxSwift
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
|
@@ -1015,6 +1015,7 @@
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
|
||||
INFOPLIST_KEY_UIMainStoryboardFile = Main;
|
||||
INFOPLIST_KEY_UIRequiresFullScreen = YES;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
@@ -1024,11 +1025,13 @@
|
||||
MARKETING_VERSION = 1.0.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "linyudan.yinmeng-ios";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||
SUPPORTS_MACCATALYST = NO;
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "yinmeng-ios/Base/Security/yinmeng-ios-Bridging-Header.h";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -1055,6 +1058,7 @@
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
|
||||
INFOPLIST_KEY_UIMainStoryboardFile = Main;
|
||||
INFOPLIST_KEY_UIRequiresFullScreen = YES;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
@@ -1064,10 +1068,12 @@
|
||||
MARKETING_VERSION = 1.0.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "linyudan.yinmeng-ios";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||
SUPPORTS_MACCATALYST = NO;
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "yinmeng-ios/Base/Security/yinmeng-ios-Bridging-Header.h";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
|
@@ -10,17 +10,16 @@
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface RecordVoiceManager : NSObject
|
||||
/// 声音录制对象
|
||||
@property (nonatomic, strong) AVAudioRecorder *audioRecorder;
|
||||
/// 本地录制的音频地址
|
||||
@property (nonatomic, copy) NSString *totalFilePath;
|
||||
/// 音频文件名
|
||||
@property (nonatomic, copy) NSString *fileName;
|
||||
///播放器4
|
||||
|
||||
@property (nonatomic, strong) AVAudioRecorder *recorder;
|
||||
|
||||
@property (nonatomic, copy) NSString *path;
|
||||
|
||||
@property (nonatomic, copy) NSString *file;
|
||||
|
||||
@property (nonatomic, strong) AVAudioPlayer *player;
|
||||
/// 是否正在播放声音
|
||||
|
||||
@property (nonatomic, assign) BOOL isPlayVoice;
|
||||
/// 初始化录音对象
|
||||
- (void)initWithRecord;
|
||||
-(void)stopRecord;
|
||||
- (void)playFilePathVoice;
|
||||
|
@@ -9,8 +9,8 @@
|
||||
|
||||
@implementation RecordVoiceManager
|
||||
-(void)stopRecord{
|
||||
[self.audioRecorder stop];
|
||||
self.audioRecorder = nil;
|
||||
[self.recorder stop];
|
||||
self.recorder = nil;
|
||||
}
|
||||
/// 初始化录音对象
|
||||
- (void)initWithRecord {
|
||||
@@ -18,47 +18,38 @@
|
||||
[audioSession setCategory:AVAudioSessionCategoryRecord error:nil];
|
||||
//录音设置
|
||||
NSMutableDictionary *recordSettings = [[NSMutableDictionary alloc] init];
|
||||
//录音格式
|
||||
[recordSettings setValue :[NSNumber numberWithInt:kAudioFormatLinearPCM] forKey: AVFormatIDKey];
|
||||
//采样率
|
||||
[recordSettings setValue :[NSNumber numberWithFloat:16000.0] forKey: AVSampleRateKey];
|
||||
//通道数
|
||||
[recordSettings setValue :[NSNumber numberWithInt:2] forKey: AVNumberOfChannelsKey];
|
||||
//线性采样位数
|
||||
[recordSettings setValue :[NSNumber numberWithInt:16] forKey: AVLinearPCMBitDepthKey];
|
||||
//音频质量,采样质量
|
||||
[recordSettings setValue:[NSNumber numberWithInt:AVAudioQualityMin] forKey:AVEncoderAudioQualityKey];
|
||||
NSError *error = nil;
|
||||
|
||||
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
|
||||
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
|
||||
NSString *date = [dateFormat stringFromDate:[NSDate date]];
|
||||
self.fileName = [NSString stringWithFormat:@"voiceShow_%@.wav", date];
|
||||
self.file = [NSString stringWithFormat:@"voiceShow_%@.wav", date];
|
||||
NSFileManager *fileMgr = [[NSFileManager alloc] init];
|
||||
//创建文件管理器
|
||||
NSString *filePath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"voiceShow"];
|
||||
self.totalFilePath = [filePath stringByAppendingPathComponent:self.fileName];
|
||||
self.path = [filePath stringByAppendingPathComponent:self.file];
|
||||
if (![fileMgr fileExistsAtPath:filePath]) {
|
||||
//如果不存在,则说明是第一次运行这个程序,那么建立这个文件夹
|
||||
[fileMgr createDirectoryAtPath:filePath withIntermediateDirectories:YES attributes:nil error:nil];
|
||||
}
|
||||
|
||||
if (![fileMgr fileExistsAtPath:filePath]) { return; }
|
||||
|
||||
NSURL *fileUrl = [NSURL fileURLWithPath:self.totalFilePath];
|
||||
self.audioRecorder = [[AVAudioRecorder alloc] initWithURL:fileUrl settings:recordSettings error:&error];
|
||||
self.audioRecorder.meteringEnabled = YES;
|
||||
[self.audioRecorder updateMeters];
|
||||
NSLog(@"%f",[self.audioRecorder peakPowerForChannel:0]);
|
||||
if(!self.audioRecorder) {
|
||||
// [MewHUDTool showErrorWithMessage:@"录制失败,请重试"];
|
||||
NSURL *fileUrl = [NSURL fileURLWithPath:self.path];
|
||||
self.recorder = [[AVAudioRecorder alloc] initWithURL:fileUrl settings:recordSettings error:&error];
|
||||
self.recorder.meteringEnabled = YES;
|
||||
[self.recorder updateMeters];
|
||||
NSLog(@"%f",[self.recorder peakPowerForChannel:0]);
|
||||
if(!self.recorder) {
|
||||
return;
|
||||
}
|
||||
if(![self.audioRecorder prepareToRecord]) {
|
||||
// [MewHUDTool showErrorWithMessage:@"录制失败,请重试"];
|
||||
if(![self.recorder prepareToRecord]) {
|
||||
return;
|
||||
}
|
||||
BOOL status = [self.audioRecorder record];
|
||||
BOOL status = [self.recorder record];
|
||||
NSLog(@"%d",status);
|
||||
}
|
||||
- (void)playFilePathVoice {
|
||||
@@ -70,10 +61,10 @@
|
||||
}
|
||||
|
||||
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionAllowBluetooth error:nil];
|
||||
BOOL isFile = [[NSFileManager defaultManager] fileExistsAtPath:self.totalFilePath];
|
||||
BOOL isFile = [[NSFileManager defaultManager] fileExistsAtPath:self.path];
|
||||
|
||||
NSError *AVerror = NULL;
|
||||
self.player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:self.totalFilePath] error:&AVerror];
|
||||
self.player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:self.path] error:&AVerror];
|
||||
self.player.volume = 1;
|
||||
self.player.numberOfLoops = -1;
|
||||
|
||||
|
@@ -221,6 +221,7 @@ class AuthLaunchVC: BaseViewController, HiddenNavigationBarProtocol {
|
||||
button.setImage(UIImage(named: "auth_login_box"), for: .normal)
|
||||
button.setImage(UIImage(named: "auth_login_box_sel"), for: .selected)
|
||||
button.addTarget(self, action: #selector(boxBtnAction), for: .touchUpInside)
|
||||
button.isSelected = true
|
||||
return button
|
||||
}()
|
||||
|
||||
|
@@ -8,6 +8,7 @@
|
||||
import Foundation
|
||||
import RxSwift
|
||||
import NIMSDK
|
||||
import MBProgressHUD
|
||||
class AuthViewModel: NSObject {
|
||||
static let authVM = AuthViewModel.init()
|
||||
let data = PublishSubject<Bool>()
|
||||
@@ -56,8 +57,13 @@ class AuthViewModel: NSObject {
|
||||
///账号密码登录
|
||||
func authPhoneCode(phone:String, code:String) {
|
||||
if let phoneDes = phone.encrypt() {
|
||||
MBProgressHUD.showAdded(to: UIApplication.shared.keyWindow!, animated: true)
|
||||
let params = ["phone":phoneDes, "code":code, "client_secret":"uyzjdhds", "version":"1", "client_id":"erban-client", "grant_type":"password"]
|
||||
RequestPost(path: "oauth/token", parma: params) { data in
|
||||
if let window = UIApplication.shared.keyWindow{
|
||||
MBProgressHUD.hide(for: window, animated: true)
|
||||
}
|
||||
|
||||
if let account = Deserialized<UserTokenObject>.toModel(with: data) {
|
||||
LoginTokenConfig.config.saveTokenToLocaltion(token: account)
|
||||
self.token.onNext(account)
|
||||
@@ -68,6 +74,10 @@ class AuthViewModel: NSObject {
|
||||
}
|
||||
}
|
||||
} fail: { code, data in
|
||||
if let window = UIApplication.shared.keyWindow{
|
||||
MBProgressHUD.hide(for: window, animated: true)
|
||||
}
|
||||
HUDTool.show(with: data)
|
||||
self.token.onNext(nil)
|
||||
self.token.onCompleted()
|
||||
}
|
||||
@@ -78,8 +88,13 @@ class AuthViewModel: NSObject {
|
||||
///ID登录
|
||||
func authIDPassword(account:String, password: String) {
|
||||
if let phoneDes = account.encrypt(), let pwdDes = password.encrypt() {
|
||||
MBProgressHUD.showAdded(to: UIApplication.shared.keyWindow!, animated: true)
|
||||
let params = ["phone":phoneDes, "password":pwdDes, "client_secret":"uyzjdhds", "version":"1", "client_id":"erban-client", "grant_type":"password"]
|
||||
RequestPost(path: "oauth/token", parma: params) { data in
|
||||
if let window = UIApplication.shared.keyWindow{
|
||||
MBProgressHUD.hide(for: window, animated: true)
|
||||
}
|
||||
|
||||
if let account = Deserialized<UserTokenObject>.toModel(with: data) {
|
||||
LoginTokenConfig.config.saveTokenToLocaltion(token: account)
|
||||
self.token.onNext(account)
|
||||
@@ -90,6 +105,10 @@ class AuthViewModel: NSObject {
|
||||
}
|
||||
}
|
||||
} fail: { code, data in
|
||||
if let window = UIApplication.shared.keyWindow{
|
||||
MBProgressHUD.hide(for: window, animated: true)
|
||||
}
|
||||
HUDTool.show(with: data)
|
||||
self.token.onNext(nil)
|
||||
self.token.onCompleted()
|
||||
}
|
||||
|
@@ -155,8 +155,8 @@ class HomeVoiceRecordView: UIView,UITextViewDelegate {
|
||||
if self.time < 3 {
|
||||
self.recordBtnView.type = 0
|
||||
HUDTool.show(with: "录制的语音至少3s")
|
||||
if FileManager.default.isDeletableFile(atPath: self.recorder.totalFilePath){
|
||||
try? FileManager.default.removeItem(atPath: self.recorder.totalFilePath)
|
||||
if FileManager.default.isDeletableFile(atPath: self.recorder.path){
|
||||
try? FileManager.default.removeItem(atPath: self.recorder.path)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -201,12 +201,12 @@ class HomeVoiceRecordView: UIView,UITextViewDelegate {
|
||||
builder?.setZone(zone)
|
||||
}
|
||||
let manager = QNUploadManager.init(configuration: config)
|
||||
manager?.putFile(self.recorder.totalFilePath, key: getKey , token: getToken, complete: { info, key, res in
|
||||
manager?.putFile(self.recorder.path, key: getKey , token: getToken, complete: { info, key, res in
|
||||
let gender = self.myModel?.gender == 1 ? "1" : "2"
|
||||
let desc = self.signatureView.text.count == 0 ? "这个人很懒还没有签名" : self.signatureView.text
|
||||
|
||||
let dura = "\(self.time)"
|
||||
let url = self.recorder.totalFilePath
|
||||
let url = self.recorder.path
|
||||
RequestPost(path: "voiceShow/publish", parma: ["gender":gender,"desc":desc ?? "","dura":dura,"url":url]) { data in
|
||||
if Thread.current.isMainThread {
|
||||
self.activityView.removeFromSuperview()
|
||||
@@ -260,8 +260,8 @@ class HomeVoiceRecordView: UIView,UITextViewDelegate {
|
||||
}
|
||||
self.time = 0
|
||||
recorder.stopRecord()
|
||||
if FileManager.default.isDeletableFile(atPath: self.recorder.totalFilePath){
|
||||
try? FileManager.default.removeItem(atPath: self.recorder.totalFilePath)
|
||||
if FileManager.default.isDeletableFile(atPath: self.recorder.path){
|
||||
try? FileManager.default.removeItem(atPath: self.recorder.path)
|
||||
}
|
||||
self.recordBtnView.type = 0
|
||||
}
|
||||
|
@@ -2,7 +2,7 @@
|
||||
// PlayVoiceManager.swift
|
||||
// yinmeng-ios
|
||||
//
|
||||
// Created by duoban on 2024/2/29.
|
||||
// Created by yinmeng on 2024/2/29.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
@@ -50,10 +50,11 @@ class PlayVoiceManager: NSObject,AVAudioPlayerDelegate {
|
||||
|
||||
|
||||
let allPath = path + "/kUserVoice/" + name
|
||||
try? FileManager.default.removeItem(atPath: allPath)
|
||||
if FileManager.default.fileExists(atPath: allPath){
|
||||
beginPlayVoice(url: allPath)
|
||||
}else{
|
||||
|
||||
// try? FileManager.default.createDirectory(atPath: allPath, withIntermediateDirectories: true, attributes: nil)
|
||||
downloadDataWithUrl(url: url, path: allPath)
|
||||
}
|
||||
|
||||
@@ -69,12 +70,31 @@ class PlayVoiceManager: NSObject,AVAudioPlayerDelegate {
|
||||
let downloadTask = session.downloadTask(with: request,
|
||||
completionHandler: { (location:URL?, response:URLResponse?, error:Error?)
|
||||
-> Void in
|
||||
//location位置转换
|
||||
let locationPath = location!.path
|
||||
//创建文件管理器
|
||||
let fileManager = FileManager.default
|
||||
try? fileManager.moveItem(atPath: locationPath, toPath: path)
|
||||
self.beginPlayVoice(url:path)
|
||||
let locationPath = location!.path
|
||||
let getUlr = URL.init(string: path)
|
||||
let locationUrl = URL.init(string: locationPath)
|
||||
|
||||
|
||||
let data = try? NSData.dataWithContentsOfMappedFile(locationPath)
|
||||
if let _data = data as? Data{
|
||||
do{
|
||||
FileManager.default.createFile(atPath: path, contents: _data)
|
||||
self.beginPlayVoice(url:path)
|
||||
}
|
||||
catch{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
})
|
||||
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
// UserPayViewController.swift
|
||||
// yinmeng-ios
|
||||
//
|
||||
// Created by duoban on 2024/2/29.
|
||||
// Created by yinmeng on 2024/2/29.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
@@ -18,27 +18,10 @@ class UserPayViewController: BaseViewController, HiddenNavigationBarProtocol{
|
||||
requestData()
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(receiveInitiatePaymentNot(not:)), name: NSNotification.Name(rawValue: "kInitiatePayment"), object: nil)
|
||||
}
|
||||
@objc func receiveInitiatePaymentNot(not:Notification) async{
|
||||
if let _data = not.userInfo,let transactionId = _data["transactionId"] as? String{
|
||||
if #available(iOS 15.0, *) {
|
||||
try? await UserPayViewManager.shared._verifyBusinessAccomplish(transaction: transactionId)
|
||||
}
|
||||
self.orderId = ""
|
||||
RequestGet(path: "purse/query", parma: ["channelType":"8"]) { data in
|
||||
|
||||
if let model = Deserialized<UserPayViewModel>.toModel(with: data) {
|
||||
self.pricView.text = model.diamonds
|
||||
}
|
||||
|
||||
} fail: { code, data in
|
||||
print(code)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
if let _data = not.userInfo,let recordId = _data["recordId"] as? String,let appAccountToken = _data["appAccountToken"] as? String{
|
||||
try? await self.initiatePaymentAction(recordId: recordId, appAccountToken: appAccountToken)
|
||||
}
|
||||
@objc func receiveInitiatePaymentNot(not:Notification) {
|
||||
//
|
||||
//
|
||||
//
|
||||
}
|
||||
func requestData(){
|
||||
RequestGet(path: "chargeprod/list", parma: ["channelType":"8"]) { data in
|
||||
@@ -186,45 +169,66 @@ class UserPayViewController: BaseViewController, HiddenNavigationBarProtocol{
|
||||
guard let chargeProdId = self.chooseModel?.chargeProdId else{
|
||||
return
|
||||
}
|
||||
MBProgressHUD.showAdded(to: self.view, animated: true)
|
||||
MBProgressHUD.showAdded(to: UIApplication.shared.keyWindow!, animated: true)
|
||||
let uid = "\(AuthManager.userUid)"
|
||||
let ticket = AuthManager.ticket
|
||||
let deviceInfo = UIDevice.current.identifierForVendor?.uuidString ?? ""
|
||||
let clientIp = "0.0.0.0"
|
||||
RequestPost(path: "storeKitV2/placeOrder", parma: ["chargeProdId":chargeProdId,"uid":uid,"ticket":ticket,"deviceInfo":deviceInfo]) { data in
|
||||
|
||||
if let _data = data as? [String : Any]{
|
||||
|
||||
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "kInitiatePayment"), object: nil, userInfo: _data)
|
||||
if let _data = data as? [String:Any],let recordId = _data["recordId"] as? String,let appAccountToken = _data["appAccountToken"] as? String{
|
||||
self.initiatePaymentAction(recordId: recordId, appAccountToken: appAccountToken)
|
||||
}else{
|
||||
HUDTool.show(with: "购买失败")
|
||||
MBProgressHUD.hide(for: UIApplication.shared.keyWindow!, animated: true)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
} fail: { code, data in
|
||||
MBProgressHUD.hide(for: self.view, animated: true)
|
||||
HUDTool.show(with: data)
|
||||
MBProgressHUD.hide(for: UIApplication.shared.keyWindow!, animated: true)
|
||||
}
|
||||
|
||||
}
|
||||
deinit{
|
||||
NotificationCenter.default.removeObserver(self)
|
||||
}
|
||||
func initiatePaymentAction(recordId:String,appAccountToken:String)async throws{
|
||||
func initiatePaymentAction(recordId:String,appAccountToken:String) {
|
||||
self.orderId = recordId
|
||||
if #available(iOS 15.0, *) {
|
||||
try await UserPayViewManager.shared._demandCommodityThing(productId: recordId, uuid: appAccountToken)
|
||||
UserPayViewManager.shared._ConditionBlock = {[weak self] (state , result) in
|
||||
if state == .Pay || state == .Start || state == .VerifiedServer{
|
||||
|
||||
}else if state == .Unowned{
|
||||
HUDTool.show(with: "出现未知错误,请重新尝试")
|
||||
MBProgressHUD.hide(for: UIApplication.shared.keyWindow!, animated: true)
|
||||
}else{
|
||||
HUDTool.show(with: "购买失败")
|
||||
MBProgressHUD.hide(for: UIApplication.shared.keyWindow!, animated: true)
|
||||
}
|
||||
if state == .VerifiedServer{
|
||||
if let transactionId = result?["transactionId"] as? String{
|
||||
self?.paySuccess(transactionId: transactionId)
|
||||
|
||||
|
||||
if let data = result,let transactionId = data["transactionId"]{
|
||||
self?.paySuccess(transactionId:"\(transactionId)")
|
||||
}else{
|
||||
HUDTool.show(with: "购买失败")
|
||||
MBProgressHUD.hide(for: UIApplication.shared.keyWindow!, animated: true)
|
||||
}
|
||||
}
|
||||
}
|
||||
Task {
|
||||
do {
|
||||
try await UserPayViewManager.shared._demandCommodityThing(productId: self.chooseModel?.chargeProdId ?? "", uuid: appAccountToken)
|
||||
|
||||
}catch{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
} else {
|
||||
HUDTool.show(with: "充值失败。当前仅支持运行iOS15及以上系统的手机进行充值,请升级系统版本后重试。")
|
||||
}
|
||||
@@ -232,18 +236,43 @@ class UserPayViewController: BaseViewController, HiddenNavigationBarProtocol{
|
||||
func paySuccess(transactionId:String){
|
||||
let uid = "\(AuthManager.userUid)"
|
||||
let ticket = AuthManager.ticket
|
||||
RequestPost(path: "storeKitV2/verifyOrder", parma: ["chargeRecordId":self.orderId,"chooseEnv":"true","uid":uid,"ticket":ticket,"transcationId":transactionId]) { data in
|
||||
MBProgressHUD.hide(for: UIApplication.shared.keyWindow!, animated: true)
|
||||
|
||||
if #available(iOS 15.0, *) {
|
||||
Task {
|
||||
try await UserPayViewManager.shared._verifyBusinessAccomplish(transaction: transactionId)
|
||||
self.orderId = ""
|
||||
RequestGet(path: "purse/query", parma: ["channelType":"8"]) { data in
|
||||
|
||||
if let model = Deserialized<UserPayViewModel>.toModel(with: data) {
|
||||
self.pricView.text = model.diamonds
|
||||
}
|
||||
|
||||
} fail: { code, data in
|
||||
print(code)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
RequestPost(path: "storeKitV2/verifyOrder", parma: ["chooseEnv":"true","uid":uid,"ticket":ticket,"transcationId":transactionId]) { data in
|
||||
MBProgressHUD.hide(for: self.view, animated: true)
|
||||
|
||||
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "kInitiatePayment"), object: nil, userInfo: ["transactionId":transactionId])
|
||||
} fail: { code, data in
|
||||
if code == 1444{
|
||||
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "kInitiatePayment"), object: nil, userInfo: ["transactionId":transactionId])
|
||||
}
|
||||
MBProgressHUD.hide(for: self.view, animated: true)
|
||||
}
|
||||
|
||||
} fail: { code, data in
|
||||
if code == 1444{
|
||||
Task {
|
||||
if #available(iOS 15.0, *) {
|
||||
try await UserPayViewManager.shared._verifyBusinessAccomplish(transaction: transactionId)
|
||||
} else {
|
||||
// Fallback on earlier versions
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
HUDTool.show(with: data)
|
||||
MBProgressHUD.hide(for: UIApplication.shared.keyWindow!, animated: true)
|
||||
}
|
||||
}
|
||||
@objc func backBtnAction(){
|
||||
self.navigationController?.popViewController(animated: true)
|
||||
|
@@ -195,9 +195,15 @@ class PlanetStarClickItemView: UIView {
|
||||
|
||||
}
|
||||
@objc func clickImageViewAction(sender:UITapGestureRecognizer){
|
||||
if let view = sender.view as? UIImageView{
|
||||
self.setClickImageView(view: view)
|
||||
}
|
||||
}
|
||||
|
||||
func setClickImageView(view:UIImageView){
|
||||
self.isStop = true
|
||||
self.vapView.transform = CGAffineTransformIdentity
|
||||
let j = (sender.view?.tag ?? 100) - 100
|
||||
let j = view.tag - 100
|
||||
self.chooseModel = self.dataList[j]
|
||||
if let _chooseModel = self.chooseModel{
|
||||
self.sexImageVeiw.image = _chooseModel.gender == 1 ? UIImage(named: "yin_plane_star_man") : UIImage(named: "yin_plane_star__woman")
|
||||
@@ -205,7 +211,7 @@ class PlanetStarClickItemView: UIView {
|
||||
self.attentionBtn.isSelected = _chooseModel.hasLike
|
||||
self.signatureView.text = _chooseModel.userDesc
|
||||
}
|
||||
if let startPoint = sender.view?.frame.origin{
|
||||
let startPoint = view.frame.origin
|
||||
let movePoint = ceterPoint!
|
||||
let start = getAngle(point: startPoint)
|
||||
let move = getAngle(point: movePoint)
|
||||
@@ -217,8 +223,8 @@ class PlanetStarClickItemView: UIView {
|
||||
UIView.animate(withDuration: 0.4) {
|
||||
self.setClickViewLayout()
|
||||
}completion: { isCompletion in
|
||||
self.setCliickViewAnimationCompletionLayout(view: sender.view as! UIImageView)
|
||||
}
|
||||
self.setCliickViewAnimationCompletionLayout(view: view )
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -358,6 +364,13 @@ class PlanetStarClickItemView: UIView {
|
||||
clickView.layer.borderColor = model.gender == 2 ? ThemeColor(hexStr: "#D667FF").cgColor : ThemeColor(hexStr: "#57CDFF").cgColor
|
||||
}
|
||||
}
|
||||
if self.isStop == false{
|
||||
if let view = self.clickViewList.first{
|
||||
self.setClickImageView(view: view)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user