苹果登录
10
Podfile.lock
@@ -8,6 +8,9 @@ PODS:
|
|||||||
- Moya/Core (= 15.0.0)
|
- Moya/Core (= 15.0.0)
|
||||||
- Moya/Core (15.0.0):
|
- Moya/Core (15.0.0):
|
||||||
- Alamofire (~> 5.0)
|
- Alamofire (~> 5.0)
|
||||||
|
- NIMSDK_LITE (9.6.1):
|
||||||
|
- NIMSDK_LITE/NOS (= 9.6.1)
|
||||||
|
- NIMSDK_LITE/NOS (9.6.1)
|
||||||
- "NSObject+Rx (5.2.2)":
|
- "NSObject+Rx (5.2.2)":
|
||||||
- RxSwift (~> 6.2)
|
- RxSwift (~> 6.2)
|
||||||
- Nuke (10.7.1)
|
- Nuke (10.7.1)
|
||||||
@@ -40,6 +43,7 @@ DEPENDENCIES:
|
|||||||
- Kingfisher
|
- Kingfisher
|
||||||
- MBProgressHUD
|
- MBProgressHUD
|
||||||
- Moya
|
- Moya
|
||||||
|
- NIMSDK_LITE (= 9.6.1)
|
||||||
- "NSObject+Rx"
|
- "NSObject+Rx"
|
||||||
- Nuke
|
- Nuke
|
||||||
- Reusable
|
- Reusable
|
||||||
@@ -56,6 +60,7 @@ SPEC REPOS:
|
|||||||
- Kingfisher
|
- Kingfisher
|
||||||
- MBProgressHUD
|
- MBProgressHUD
|
||||||
- Moya
|
- Moya
|
||||||
|
- NIMSDK_LITE
|
||||||
- "NSObject+Rx"
|
- "NSObject+Rx"
|
||||||
- Nuke
|
- Nuke
|
||||||
- Protobuf
|
- Protobuf
|
||||||
@@ -74,6 +79,7 @@ SPEC CHECKSUMS:
|
|||||||
Kingfisher: 99edc495d3b7607e6425f0d6f6847b2abd6d716d
|
Kingfisher: 99edc495d3b7607e6425f0d6f6847b2abd6d716d
|
||||||
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
|
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
|
||||||
Moya: 138f0573e53411fb3dc17016add0b748dfbd78ee
|
Moya: 138f0573e53411fb3dc17016add0b748dfbd78ee
|
||||||
|
NIMSDK_LITE: b020e3dbbc9f53934609bc35ecba7798be503e1a
|
||||||
"NSObject+Rx": 61cf1f7306a73dcef8b36649198af0813ec18dfd
|
"NSObject+Rx": 61cf1f7306a73dcef8b36649198af0813ec18dfd
|
||||||
Nuke: 279f17a599fd1c83cf51de5e0e1f2db143a287b0
|
Nuke: 279f17a599fd1c83cf51de5e0e1f2db143a287b0
|
||||||
Protobuf: 8e9074797a13c484a79959fdb819ef4ae6da7dbe
|
Protobuf: 8e9074797a13c484a79959fdb819ef4ae6da7dbe
|
||||||
@@ -85,6 +91,6 @@ SPEC CHECKSUMS:
|
|||||||
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
|
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
|
||||||
SVGAPlayer: 318b85a78b61292d6ae9dfcd651f3f0d1cdadd86
|
SVGAPlayer: 318b85a78b61292d6ae9dfcd651f3f0d1cdadd86
|
||||||
|
|
||||||
PODFILE CHECKSUM: 34a476613fc8cf70e90765dce36c6cc360eb4128
|
PODFILE CHECKSUM: 975d6fb232bd31671465589b82e2a0c52188d41f
|
||||||
|
|
||||||
COCOAPODS: 1.12.1
|
COCOAPODS: 1.14.3
|
||||||
|
10
Pods/Manifest.lock
generated
@@ -8,6 +8,9 @@ PODS:
|
|||||||
- Moya/Core (= 15.0.0)
|
- Moya/Core (= 15.0.0)
|
||||||
- Moya/Core (15.0.0):
|
- Moya/Core (15.0.0):
|
||||||
- Alamofire (~> 5.0)
|
- Alamofire (~> 5.0)
|
||||||
|
- NIMSDK_LITE (9.6.1):
|
||||||
|
- NIMSDK_LITE/NOS (= 9.6.1)
|
||||||
|
- NIMSDK_LITE/NOS (9.6.1)
|
||||||
- "NSObject+Rx (5.2.2)":
|
- "NSObject+Rx (5.2.2)":
|
||||||
- RxSwift (~> 6.2)
|
- RxSwift (~> 6.2)
|
||||||
- Nuke (10.7.1)
|
- Nuke (10.7.1)
|
||||||
@@ -40,6 +43,7 @@ DEPENDENCIES:
|
|||||||
- Kingfisher
|
- Kingfisher
|
||||||
- MBProgressHUD
|
- MBProgressHUD
|
||||||
- Moya
|
- Moya
|
||||||
|
- NIMSDK_LITE (= 9.6.1)
|
||||||
- "NSObject+Rx"
|
- "NSObject+Rx"
|
||||||
- Nuke
|
- Nuke
|
||||||
- Reusable
|
- Reusable
|
||||||
@@ -56,6 +60,7 @@ SPEC REPOS:
|
|||||||
- Kingfisher
|
- Kingfisher
|
||||||
- MBProgressHUD
|
- MBProgressHUD
|
||||||
- Moya
|
- Moya
|
||||||
|
- NIMSDK_LITE
|
||||||
- "NSObject+Rx"
|
- "NSObject+Rx"
|
||||||
- Nuke
|
- Nuke
|
||||||
- Protobuf
|
- Protobuf
|
||||||
@@ -74,6 +79,7 @@ SPEC CHECKSUMS:
|
|||||||
Kingfisher: 99edc495d3b7607e6425f0d6f6847b2abd6d716d
|
Kingfisher: 99edc495d3b7607e6425f0d6f6847b2abd6d716d
|
||||||
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
|
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
|
||||||
Moya: 138f0573e53411fb3dc17016add0b748dfbd78ee
|
Moya: 138f0573e53411fb3dc17016add0b748dfbd78ee
|
||||||
|
NIMSDK_LITE: b020e3dbbc9f53934609bc35ecba7798be503e1a
|
||||||
"NSObject+Rx": 61cf1f7306a73dcef8b36649198af0813ec18dfd
|
"NSObject+Rx": 61cf1f7306a73dcef8b36649198af0813ec18dfd
|
||||||
Nuke: 279f17a599fd1c83cf51de5e0e1f2db143a287b0
|
Nuke: 279f17a599fd1c83cf51de5e0e1f2db143a287b0
|
||||||
Protobuf: 8e9074797a13c484a79959fdb819ef4ae6da7dbe
|
Protobuf: 8e9074797a13c484a79959fdb819ef4ae6da7dbe
|
||||||
@@ -85,6 +91,6 @@ SPEC CHECKSUMS:
|
|||||||
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
|
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
|
||||||
SVGAPlayer: 318b85a78b61292d6ae9dfcd651f3f0d1cdadd86
|
SVGAPlayer: 318b85a78b61292d6ae9dfcd651f3f0d1cdadd86
|
||||||
|
|
||||||
PODFILE CHECKSUM: 34a476613fc8cf70e90765dce36c6cc360eb4128
|
PODFILE CHECKSUM: 975d6fb232bd31671465589b82e2a0c52188d41f
|
||||||
|
|
||||||
COCOAPODS: 1.12.1
|
COCOAPODS: 1.14.3
|
||||||
|
6891
Pods/Pods.xcodeproj/project.pbxproj
generated
@@ -67,48 +67,83 @@
|
|||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>8</integer>
|
<integer>8</integer>
|
||||||
</dict>
|
</dict>
|
||||||
<key>Pods-yinmeng-ios.xcscheme</key>
|
<key>Nuke.xcscheme</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>isShown</key>
|
<key>isShown</key>
|
||||||
<false/>
|
<false/>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>9</integer>
|
<integer>9</integer>
|
||||||
</dict>
|
</dict>
|
||||||
<key>Reusable.xcscheme</key>
|
<key>Pods-yinmeng-ios.xcscheme</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>isShown</key>
|
<key>isShown</key>
|
||||||
<false/>
|
<false/>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>10</integer>
|
<integer>10</integer>
|
||||||
</dict>
|
</dict>
|
||||||
<key>RxCocoa.xcscheme</key>
|
<key>Protobuf-Protobuf_Privacy.xcscheme</key>
|
||||||
<dict>
|
|
||||||
<key>isShown</key>
|
|
||||||
<false/>
|
|
||||||
<key>orderHint</key>
|
|
||||||
<integer>11</integer>
|
|
||||||
</dict>
|
|
||||||
<key>RxRelay.xcscheme</key>
|
|
||||||
<dict>
|
<dict>
|
||||||
<key>isShown</key>
|
<key>isShown</key>
|
||||||
<false/>
|
<false/>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>12</integer>
|
<integer>12</integer>
|
||||||
</dict>
|
</dict>
|
||||||
<key>RxSwift.xcscheme</key>
|
<key>Protobuf.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>isShown</key>
|
||||||
|
<false/>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>11</integer>
|
||||||
|
</dict>
|
||||||
|
<key>Reusable.xcscheme</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>isShown</key>
|
<key>isShown</key>
|
||||||
<false/>
|
<false/>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>13</integer>
|
<integer>13</integer>
|
||||||
</dict>
|
</dict>
|
||||||
<key>SnapKit.xcscheme</key>
|
<key>RxCocoa.xcscheme</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>isShown</key>
|
<key>isShown</key>
|
||||||
<false/>
|
<false/>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>14</integer>
|
<integer>14</integer>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>RxRelay.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>isShown</key>
|
||||||
|
<false/>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>15</integer>
|
||||||
|
</dict>
|
||||||
|
<key>RxSwift.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>isShown</key>
|
||||||
|
<false/>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>16</integer>
|
||||||
|
</dict>
|
||||||
|
<key>SSZipArchive.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>isShown</key>
|
||||||
|
<false/>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>18</integer>
|
||||||
|
</dict>
|
||||||
|
<key>SVGAPlayer.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>isShown</key>
|
||||||
|
<false/>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>19</integer>
|
||||||
|
</dict>
|
||||||
|
<key>SnapKit.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>isShown</key>
|
||||||
|
<false/>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>17</integer>
|
||||||
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
<key>SuppressBuildableAutocreation</key>
|
<key>SuppressBuildableAutocreation</key>
|
||||||
<dict/>
|
<dict/>
|
||||||
|
@@ -1,11 +1,11 @@
|
|||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
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}/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}/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"
|
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON" "${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}/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"
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1
|
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}/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}/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}/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}/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"
|
||||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
|
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
|
LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
|
||||||
OTHER_LDFLAGS = $(inherited) -l"iconv" -l"z" -framework "AVFoundation" -framework "Accelerate" -framework "Alamofire" -framework "CFNetwork" -framework "CoreGraphics" -framework "DeviceKit" -framework "Foundation" -framework "HandyJSON" -framework "Kingfisher" -framework "MBProgressHUD" -framework "Moya" -framework "NSObject_Rx" -framework "Nuke" -framework "Protobuf" -framework "QuartzCore" -framework "Reusable" -framework "RxCocoa" -framework "RxRelay" -framework "RxSwift" -framework "SSZipArchive" -framework "SVGAPlayer" -framework "Security" -framework "SnapKit" -framework "UIKit" -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 "Kingfisher" -framework "MBProgressHUD" -framework "Moya" -framework "NIMNOS" -framework "NIMSDK" -framework "NSObject_Rx" -framework "Nuke" -framework "Protobuf" -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_SWIFT_FLAGS = $(inherited) -D COCOAPODS
|
OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
|
||||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||||
|
@@ -1,11 +1,11 @@
|
|||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
|
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}/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}/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"
|
FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/DeviceKit" "${PODS_CONFIGURATION_BUILD_DIR}/HandyJSON" "${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}/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"
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 $(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1
|
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}/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}/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}/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}/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"
|
||||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
|
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
|
LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
|
||||||
OTHER_LDFLAGS = $(inherited) -l"iconv" -l"z" -framework "AVFoundation" -framework "Accelerate" -framework "Alamofire" -framework "CFNetwork" -framework "CoreGraphics" -framework "DeviceKit" -framework "Foundation" -framework "HandyJSON" -framework "Kingfisher" -framework "MBProgressHUD" -framework "Moya" -framework "NSObject_Rx" -framework "Nuke" -framework "Protobuf" -framework "QuartzCore" -framework "Reusable" -framework "RxCocoa" -framework "RxRelay" -framework "RxSwift" -framework "SSZipArchive" -framework "SVGAPlayer" -framework "Security" -framework "SnapKit" -framework "UIKit" -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 "Kingfisher" -framework "MBProgressHUD" -framework "Moya" -framework "NIMNOS" -framework "NIMSDK" -framework "NSObject_Rx" -framework "Nuke" -framework "Protobuf" -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_SWIFT_FLAGS = $(inherited) -D COCOAPODS
|
OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
|
||||||
PODS_BUILD_DIR = ${BUILD_DIR}
|
PODS_BUILD_DIR = ${BUILD_DIR}
|
||||||
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||||
|
@@ -62,6 +62,8 @@
|
|||||||
E8D15AC52B8C90D400369467 /* AboutUsVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8D15AC42B8C90D400369467 /* AboutUsVC.swift */; };
|
E8D15AC52B8C90D400369467 /* AboutUsVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8D15AC42B8C90D400369467 /* AboutUsVC.swift */; };
|
||||||
E8D15AE82B8CD47100369467 /* WebViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8D15AE72B8CD47100369467 /* WebViewController.swift */; };
|
E8D15AE82B8CD47100369467 /* WebViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8D15AE72B8CD47100369467 /* WebViewController.swift */; };
|
||||||
E8D15AEA2B8CD77800369467 /* H5Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8D15AE92B8CD77800369467 /* H5Utils.swift */; };
|
E8D15AEA2B8CD77800369467 /* H5Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8D15AE92B8CD77800369467 /* H5Utils.swift */; };
|
||||||
|
E8E4AAB52B8F8E3A0096D77C /* AuthItmeButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8E4AAB42B8F8E3A0096D77C /* AuthItmeButton.swift */; };
|
||||||
|
E8E4AAB72B8F95CA0096D77C /* AuthAppleManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8E4AAB62B8F95CA0096D77C /* AuthAppleManager.swift */; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
@@ -127,6 +129,9 @@
|
|||||||
E8D15AC42B8C90D400369467 /* AboutUsVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AboutUsVC.swift; sourceTree = "<group>"; };
|
E8D15AC42B8C90D400369467 /* AboutUsVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AboutUsVC.swift; sourceTree = "<group>"; };
|
||||||
E8D15AE72B8CD47100369467 /* WebViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebViewController.swift; sourceTree = "<group>"; };
|
E8D15AE72B8CD47100369467 /* WebViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebViewController.swift; sourceTree = "<group>"; };
|
||||||
E8D15AE92B8CD77800369467 /* H5Utils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = H5Utils.swift; sourceTree = "<group>"; };
|
E8D15AE92B8CD77800369467 /* H5Utils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = H5Utils.swift; sourceTree = "<group>"; };
|
||||||
|
E8E4AAB42B8F8E3A0096D77C /* AuthItmeButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthItmeButton.swift; sourceTree = "<group>"; };
|
||||||
|
E8E4AAB62B8F95CA0096D77C /* AuthAppleManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthAppleManager.swift; sourceTree = "<group>"; };
|
||||||
|
E8E4AAB82B8F99B90096D77C /* yinmeng-ios.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "yinmeng-ios.entitlements"; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
@@ -292,6 +297,7 @@
|
|||||||
E86A43D42B8774B70084C04D /* AuthViewModel.swift */,
|
E86A43D42B8774B70084C04D /* AuthViewModel.swift */,
|
||||||
E8D15A9E2B89AED500369467 /* AuthManager.swift */,
|
E8D15A9E2B89AED500369467 /* AuthManager.swift */,
|
||||||
E8D15AA02B89AF4F00369467 /* UserTokenObject.swift */,
|
E8D15AA02B89AF4F00369467 /* UserTokenObject.swift */,
|
||||||
|
E8E4AAB62B8F95CA0096D77C /* AuthAppleManager.swift */,
|
||||||
);
|
);
|
||||||
path = VM;
|
path = VM;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -318,6 +324,7 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
E86A43CA2B874C6F0084C04D /* AuthPrivacyView.swift */,
|
E86A43CA2B874C6F0084C04D /* AuthPrivacyView.swift */,
|
||||||
|
E8E4AAB42B8F8E3A0096D77C /* AuthItmeButton.swift */,
|
||||||
);
|
);
|
||||||
path = View;
|
path = View;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -359,6 +366,7 @@
|
|||||||
E884E85D2B6900C500ADE6EE /* yinmeng-ios */ = {
|
E884E85D2B6900C500ADE6EE /* yinmeng-ios */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
E8E4AAB82B8F99B90096D77C /* yinmeng-ios.entitlements */,
|
||||||
E86A43B12B85E1FC0084C04D /* Modules */,
|
E86A43B12B85E1FC0084C04D /* Modules */,
|
||||||
E86A43AB2B85DFC20084C04D /* Extension */,
|
E86A43AB2B85DFC20084C04D /* Extension */,
|
||||||
E86A43A72B85DF7A0084C04D /* Base */,
|
E86A43A72B85DF7A0084C04D /* Base */,
|
||||||
@@ -607,12 +615,14 @@
|
|||||||
E86A43B02B85E11B0084C04D /* BaseNavigationViewController.swift in Sources */,
|
E86A43B02B85E11B0084C04D /* BaseNavigationViewController.swift in Sources */,
|
||||||
E86A43E82B884C5E0084C04D /* String+.swift in Sources */,
|
E86A43E82B884C5E0084C04D /* String+.swift in Sources */,
|
||||||
E8D15AA32B89B03D00369467 /* Deserialized.swift in Sources */,
|
E8D15AA32B89B03D00369467 /* Deserialized.swift in Sources */,
|
||||||
|
E8E4AAB72B8F95CA0096D77C /* AuthAppleManager.swift in Sources */,
|
||||||
E8D15AC22B8C703C00369467 /* UserFunctionView.swift in Sources */,
|
E8D15AC22B8C703C00369467 /* UserFunctionView.swift in Sources */,
|
||||||
E86A43DA2B877A840084C04D /* AppConfigObject.swift in Sources */,
|
E86A43DA2B877A840084C04D /* AppConfigObject.swift in Sources */,
|
||||||
E8D15AA62B89B0C600369467 /* List+.swift in Sources */,
|
E8D15AA62B89B0C600369467 /* List+.swift in Sources */,
|
||||||
E81A7BAE2B885B20009E736E /* Base64.m in Sources */,
|
E81A7BAE2B885B20009E736E /* Base64.m in Sources */,
|
||||||
E8479E462B8DD5BF009AF878 /* Date+.swift in Sources */,
|
E8479E462B8DD5BF009AF878 /* Date+.swift in Sources */,
|
||||||
E81A7BB22B886299009E736E /* HUDTool.swift in Sources */,
|
E81A7BB22B886299009E736E /* HUDTool.swift in Sources */,
|
||||||
|
E8E4AAB52B8F8E3A0096D77C /* AuthItmeButton.swift in Sources */,
|
||||||
E86A43BC2B85FA640084C04D /* AuthForgetVC.swift in Sources */,
|
E86A43BC2B85FA640084C04D /* AuthForgetVC.swift in Sources */,
|
||||||
E86A43C32B8628AF0084C04D /* BaseTabBarViewController.swift in Sources */,
|
E86A43C32B8628AF0084C04D /* BaseTabBarViewController.swift in Sources */,
|
||||||
E8479E3B2B8DC5FA009AF878 /* ChatViewModel.swift in Sources */,
|
E8479E3B2B8DC5FA009AF878 /* ChatViewModel.swift in Sources */,
|
||||||
@@ -799,10 +809,11 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
|
CODE_SIGN_ENTITLEMENTS = "yinmeng-ios/yinmeng-ios.entitlements";
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
DEFINES_MODULE = YES;
|
DEFINES_MODULE = YES;
|
||||||
DEVELOPMENT_TEAM = 48UCG35Q9W;
|
DEVELOPMENT_TEAM = 7684Q29X5F;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
INFOPLIST_FILE = "yinmeng-ios/Info.plist";
|
INFOPLIST_FILE = "yinmeng-ios/Info.plist";
|
||||||
@@ -833,10 +844,11 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
|
CODE_SIGN_ENTITLEMENTS = "yinmeng-ios/yinmeng-ios.entitlements";
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
DEFINES_MODULE = YES;
|
DEFINES_MODULE = YES;
|
||||||
DEVELOPMENT_TEAM = 48UCG35Q9W;
|
DEVELOPMENT_TEAM = 7684Q29X5F;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
INFOPLIST_FILE = "yinmeng-ios/Info.plist";
|
INFOPLIST_FILE = "yinmeng-ios/Info.plist";
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
<key>yinmeng-ios.xcscheme_^#shared#^_</key>
|
<key>yinmeng-ios.xcscheme_^#shared#^_</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>15</integer>
|
<integer>20</integer>
|
||||||
</dict>
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
|
@@ -17,7 +17,7 @@ var window: UIWindow?
|
|||||||
UIApplication.shared.applicationIconBadgeNumber = 0
|
UIApplication.shared.applicationIconBadgeNumber = 0
|
||||||
self.window = UIWindow.init(frame: UIScreen.main.bounds)
|
self.window = UIWindow.init(frame: UIScreen.main.bounds)
|
||||||
self.window?.backgroundColor = UIColor.white
|
self.window?.backgroundColor = UIColor.white
|
||||||
self.window?.rootViewController = BaseNavigationViewController(rootViewController:AuthLoginVC())
|
self.window?.rootViewController = BaseNavigationViewController(rootViewController:AuthLaunchVC())
|
||||||
loginStateListener()
|
loginStateListener()
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@@ -36,7 +36,7 @@ var window: UIWindow?
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
///去登录
|
///去登录
|
||||||
self.window?.rootViewController = BaseNavigationViewController(rootViewController:AuthLoginVC())
|
self.window?.rootViewController = BaseNavigationViewController(rootViewController:AuthLaunchVC())
|
||||||
}
|
}
|
||||||
}).disposed(by: rx.disposeBag)
|
}).disposed(by: rx.disposeBag)
|
||||||
|
|
||||||
|
22
yinmeng-ios/Assets.xcassets/auth/auth_login_apple.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_apple@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_apple@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_apple.imageset/auth_login_apple@2x.png
vendored
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_apple.imageset/auth_login_apple@3x.png
vendored
Normal file
After Width: | Height: | Size: 6.1 KiB |
22
yinmeng-ios/Assets.xcassets/auth/auth_login_box.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_box@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_box@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_box.imageset/auth_login_box@2x.png
vendored
Normal file
After Width: | Height: | Size: 668 B |
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_box.imageset/auth_login_box@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.2 KiB |
22
yinmeng-ios/Assets.xcassets/auth/auth_login_box_sel.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_box_sel@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_box_sel@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_box_sel.imageset/auth_login_box_sel@2x.png
vendored
Normal file
After Width: | Height: | Size: 661 B |
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_box_sel.imageset/auth_login_box_sel@3x.png
vendored
Normal file
After Width: | Height: | Size: 1005 B |
22
yinmeng-ios/Assets.xcassets/auth/auth_login_id.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_id@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_id@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_id.imageset/auth_login_id@2x.png
vendored
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_id.imageset/auth_login_id@3x.png
vendored
Normal file
After Width: | Height: | Size: 6.6 KiB |
22
yinmeng-ios/Assets.xcassets/auth/auth_login_logo.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_logo@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "auth_login_logo@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_logo.imageset/auth_login_logo@2x.png
vendored
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
yinmeng-ios/Assets.xcassets/auth/auth_login_logo.imageset/auth_login_logo@3x.png
vendored
Normal file
After Width: | Height: | Size: 38 KiB |
@@ -8,7 +8,306 @@
|
|||||||
import UIKit
|
import UIKit
|
||||||
|
|
||||||
class AuthLaunchVC: BaseViewController, HiddenNavigationBarProtocol {
|
class AuthLaunchVC: BaseViewController, HiddenNavigationBarProtocol {
|
||||||
|
var viewModel:AuthViewModel = AuthViewModel.authVM
|
||||||
override func viewDidLoad() {
|
override func viewDidLoad() {
|
||||||
|
super.viewDidLoad()
|
||||||
|
view.addSubview(backImgView)
|
||||||
|
view.addSubview(logoImgView)
|
||||||
|
view.addSubview(titleLb)
|
||||||
|
view.addSubview(phoneLoginBtn)
|
||||||
|
view.addSubview(otherStackView)
|
||||||
|
view.addSubview(loginStackView)
|
||||||
|
view.addSubview(stackView)
|
||||||
|
|
||||||
|
otherStackView.addArrangedSubview(leftView)
|
||||||
|
otherStackView.addArrangedSubview(otherLb)
|
||||||
|
otherStackView.addArrangedSubview(rightView)
|
||||||
|
|
||||||
|
loginStackView.addArrangedSubview(idView)
|
||||||
|
loginStackView.addArrangedSubview(appleView)
|
||||||
|
|
||||||
|
stackView.addArrangedSubview(boxBtn)
|
||||||
|
stackView.addArrangedSubview(protocolStackView)
|
||||||
|
|
||||||
|
protocolStackView.addArrangedSubview(agreeLb)
|
||||||
|
protocolStackView.addArrangedSubview(userProtocolBtn)
|
||||||
|
protocolStackView.addArrangedSubview(andLb)
|
||||||
|
protocolStackView.addArrangedSubview(privacyBtn)
|
||||||
|
|
||||||
|
backImgView.snp.makeConstraints { make in
|
||||||
|
make.edges.equalTo(view)
|
||||||
|
}
|
||||||
|
|
||||||
|
logoImgView.snp.makeConstraints { make in
|
||||||
|
make.size.equalTo(CGSize(width: 88, height: 88))
|
||||||
|
make.centerX.equalTo(view)
|
||||||
|
make.top.equalTo(view).offset(StatusBarHeight + 76)
|
||||||
|
}
|
||||||
|
|
||||||
|
titleLb.snp.makeConstraints { make in
|
||||||
|
make.centerX.equalTo(view)
|
||||||
|
make.top.equalTo(logoImgView.snp.bottom).offset(16)
|
||||||
|
}
|
||||||
|
|
||||||
|
phoneLoginBtn.snp.makeConstraints { make in
|
||||||
|
make.left.right.equalTo(view).inset(40)
|
||||||
|
make.height.equalTo(52)
|
||||||
|
make.top.equalTo(titleLb.snp.bottom).offset(110)
|
||||||
|
}
|
||||||
|
|
||||||
|
otherStackView.snp.makeConstraints { make in
|
||||||
|
make.centerX.equalTo(view)
|
||||||
|
make.bottom.equalTo(loginStackView.snp.top).offset(-32)
|
||||||
|
}
|
||||||
|
|
||||||
|
leftView.snp.makeConstraints { make in
|
||||||
|
make.width.equalTo(100)
|
||||||
|
make.height.equalTo(0.5)
|
||||||
|
}
|
||||||
|
|
||||||
|
rightView.snp.makeConstraints { make in
|
||||||
|
make.width.equalTo(100)
|
||||||
|
make.height.equalTo(0.5)
|
||||||
|
}
|
||||||
|
|
||||||
|
loginStackView.snp.makeConstraints { make in
|
||||||
|
make.centerX.equalTo(view)
|
||||||
|
make.bottom.equalTo(stackView.snp.top).offset(-56)
|
||||||
|
}
|
||||||
|
|
||||||
|
idView.snp.makeConstraints { make in
|
||||||
|
make.width.equalTo(47)
|
||||||
|
make.height.equalTo(70)
|
||||||
|
}
|
||||||
|
|
||||||
|
appleView.snp.makeConstraints { make in
|
||||||
|
make.width.equalTo(47)
|
||||||
|
make.height.equalTo(70)
|
||||||
|
}
|
||||||
|
|
||||||
|
stackView.snp.makeConstraints { make in
|
||||||
|
make.centerX.equalTo(view)
|
||||||
|
make.bottom.equalTo(view).offset(-23 - SafeAraeBottomHeight)
|
||||||
|
}
|
||||||
|
|
||||||
|
boxBtn.snp.makeConstraints { make in
|
||||||
|
make.size.equalTo(CGSize(width: 14, height: 14))
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private lazy var backImgView: UIImageView = {
|
||||||
|
let imageView = UIImageView()
|
||||||
|
imageView.image = UIImage(named: "auth_login_bg")
|
||||||
|
imageView.isUserInteractionEnabled = true
|
||||||
|
imageView.layer.masksToBounds = true
|
||||||
|
imageView.contentMode = .scaleAspectFill
|
||||||
|
return imageView
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
private lazy var logoImgView: UIImageView = {
|
||||||
|
let imageView = UIImageView()
|
||||||
|
imageView.image = UIImage(named: "auth_login_logo")
|
||||||
|
imageView.isUserInteractionEnabled = true
|
||||||
|
imageView.layer.masksToBounds = true
|
||||||
|
imageView.contentMode = .scaleAspectFill
|
||||||
|
return imageView
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var titleLb: UILabel = {
|
||||||
|
let label = UILabel()
|
||||||
|
label.textColor = UIColor.white
|
||||||
|
label.font = UIFont.systemFont(ofSize: 28, weight: .medium)
|
||||||
|
label.text = "欢迎来到音萌"
|
||||||
|
return label
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var phoneLoginBtn: UIButton = {
|
||||||
|
let button = UIButton(type: .custom)
|
||||||
|
button.setBackgroundImage(UIImage.gradient([ThemeColor(hexStr: "#FF60FD"), ThemeColor(hexStr: "#8974FF"), ThemeColor(hexStr: "#69EBFF")], radius: 0), for: .normal)
|
||||||
|
button.setTitle("手机号登录", for: .normal)
|
||||||
|
button.setTitleColor(UIColor.white, for: .normal)
|
||||||
|
button.titleLabel?.font = UIFont.systemFont(ofSize: 16, weight: .medium)
|
||||||
|
button.layer.masksToBounds = true
|
||||||
|
button.layer.cornerRadius = 26
|
||||||
|
button.addTarget(self, action: #selector(phoneLoginBtnAction), for: .touchUpInside)
|
||||||
|
return button
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var otherStackView: UIStackView = {
|
||||||
|
let stackView = UIStackView()
|
||||||
|
stackView.distribution = .fill
|
||||||
|
stackView.axis = .horizontal
|
||||||
|
stackView.alignment = .center
|
||||||
|
stackView.spacing = 15
|
||||||
|
return stackView
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var leftView: UIView = {
|
||||||
|
let view = UIView()
|
||||||
|
view.backgroundColor = .white
|
||||||
|
return view
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var otherLb: UILabel = {
|
||||||
|
let label = UILabel()
|
||||||
|
label.textColor = .white
|
||||||
|
label.text = "其他登录方式"
|
||||||
|
label.font = UIFont.systemFont(ofSize: 13)
|
||||||
|
return label
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
private lazy var rightView: UIView = {
|
||||||
|
let view = UIView()
|
||||||
|
view.backgroundColor = .white
|
||||||
|
return view
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var loginStackView: UIStackView = {
|
||||||
|
let stackView = UIStackView()
|
||||||
|
stackView.distribution = .fill
|
||||||
|
stackView.axis = .horizontal
|
||||||
|
stackView.alignment = .fill
|
||||||
|
stackView.spacing = 89
|
||||||
|
return stackView
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var idView: AuthItmeButton = {
|
||||||
|
let view = AuthItmeButton()
|
||||||
|
view.imageName = "auth_login_id"
|
||||||
|
view.title = "账号登录"
|
||||||
|
view.backgroundColor = .clear
|
||||||
|
view.addTarget(self, action: #selector(idClick), for: .touchUpInside)
|
||||||
|
return view
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var appleView: AuthItmeButton = {
|
||||||
|
let view = AuthItmeButton()
|
||||||
|
view.imageName = "auth_login_apple"
|
||||||
|
view.title = "iPhone登录"
|
||||||
|
view.backgroundColor = .clear
|
||||||
|
view.addTarget(self, action: #selector(appleClick), for: .touchUpInside)
|
||||||
|
return view
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private lazy var stackView: UIStackView = {
|
||||||
|
let stackView = UIStackView()
|
||||||
|
stackView.distribution = .fill
|
||||||
|
stackView.axis = .horizontal
|
||||||
|
stackView.alignment = .fill
|
||||||
|
stackView.spacing = 4
|
||||||
|
return stackView
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
private lazy var boxBtn: UIButton = {
|
||||||
|
let button = UIButton(type: .custom)
|
||||||
|
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)
|
||||||
|
return button
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var protocolStackView: UIStackView = {
|
||||||
|
let stackView = UIStackView()
|
||||||
|
stackView.distribution = .fill
|
||||||
|
stackView.axis = .horizontal
|
||||||
|
stackView.alignment = .fill
|
||||||
|
stackView.spacing = 0
|
||||||
|
return stackView
|
||||||
|
}()
|
||||||
|
private lazy var agreeLb: UILabel = {
|
||||||
|
let label = UILabel()
|
||||||
|
label.textColor = .white
|
||||||
|
label.font = UIFont.systemFont(ofSize: 12)
|
||||||
|
label.text = "同意"
|
||||||
|
return label
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var userProtocolBtn: UIButton = {
|
||||||
|
let button = UIButton(type: .custom)
|
||||||
|
button.setTitle("《用户服务协议》", for: .normal)
|
||||||
|
button.setTitleColor(UIColor.white, for: .normal)
|
||||||
|
button.titleLabel?.font = UIFont.systemFont(ofSize: 12)
|
||||||
|
button.addTarget(self, action: #selector(userProtocolBtnAction), for: .touchUpInside)
|
||||||
|
return button
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
private lazy var andLb: UILabel = {
|
||||||
|
let label = UILabel()
|
||||||
|
label.textColor = .white
|
||||||
|
label.text = "和"
|
||||||
|
label.font = UIFont.systemFont(ofSize: 12)
|
||||||
|
return label
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
private lazy var privacyBtn: UIButton = {
|
||||||
|
let button = UIButton(type: .custom)
|
||||||
|
button.setTitle("《隐私协议》", for: .normal)
|
||||||
|
button.setTitleColor(UIColor.white, for: .normal)
|
||||||
|
button.titleLabel?.font = UIFont.systemFont(ofSize: 12)
|
||||||
|
button.addTarget(self, action: #selector(privacyBtnAction), for: .touchUpInside)
|
||||||
|
return button
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
@objc func privacyBtnAction() {
|
||||||
|
let web = WebViewController(url: "yinmeng/\(H5Utils.privacy.rawValue)")
|
||||||
|
self.navigationController?.pushViewController(web, animated: true)
|
||||||
|
}
|
||||||
|
|
||||||
|
@objc func userProtocolBtnAction() {
|
||||||
|
let web = WebViewController(url: "yinmeng/\(H5Utils.privacy.rawValue)")
|
||||||
|
self.navigationController?.pushViewController(web, animated: true)
|
||||||
|
}
|
||||||
|
|
||||||
|
@objc func phoneLoginBtnAction() {
|
||||||
|
if self.boxBtn.isSelected == false {
|
||||||
|
HUDTool.show(with: "请阅读并勾选协议")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
let loginVC = AuthLoginVC()
|
||||||
|
loginVC.index = 0
|
||||||
|
self.navigationController?.pushViewController(loginVC, animated: true)
|
||||||
|
}
|
||||||
|
|
||||||
|
@objc func idClick() {
|
||||||
|
if self.boxBtn.isSelected == false {
|
||||||
|
HUDTool.show(with: "请阅读并勾选协议")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
let loginVC = AuthLoginVC()
|
||||||
|
loginVC.index = 1
|
||||||
|
self.navigationController?.pushViewController(loginVC, animated: true)
|
||||||
|
}
|
||||||
|
|
||||||
|
@objc func appleClick() {
|
||||||
|
if self.boxBtn.isSelected == false {
|
||||||
|
HUDTool.show(with: "请阅读并勾选协议")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
AuthAppleManager.manager.authorizatio { info in
|
||||||
|
if let infor = info{
|
||||||
|
self.viewModel.authApple(params: infor)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@objc func boxBtnAction() {
|
||||||
|
self.boxBtn.isSelected = !self.boxBtn.isSelected
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
extension AuthLaunchVC {
|
||||||
|
private func loginApple() {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -17,6 +17,15 @@ class AuthLoginVC: BaseViewController, HiddenNavigationBarProtocol {
|
|||||||
var code:String = ""
|
var code:String = ""
|
||||||
var id:String = ""
|
var id:String = ""
|
||||||
var password:String = ""
|
var password:String = ""
|
||||||
|
var index:Int? {
|
||||||
|
didSet {
|
||||||
|
if index ?? 0 > 0 {
|
||||||
|
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
|
||||||
|
self.pwdLoginBtnAction()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
override func viewDidLoad() {
|
override func viewDidLoad() {
|
||||||
super.viewDidLoad()
|
super.viewDidLoad()
|
||||||
|
93
yinmeng-ios/Modules/Auth/VM/AuthAppleManager.swift
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
//
|
||||||
|
// AuthAppleManager.swift
|
||||||
|
// yinmeng-ios
|
||||||
|
//
|
||||||
|
// Created by MaiMang on 2024/2/29.
|
||||||
|
//
|
||||||
|
|
||||||
|
import Foundation
|
||||||
|
import AuthenticationServices
|
||||||
|
|
||||||
|
typealias AuthCompletion = ([String: Any]?) -> Void
|
||||||
|
|
||||||
|
class AuthAppleManager:NSObject,ASAuthorizationControllerDelegate,ASAuthorizationControllerPresentationContextProviding {
|
||||||
|
public static var manager = AuthAppleManager.init()
|
||||||
|
|
||||||
|
var completion : AuthCompletion?
|
||||||
|
|
||||||
|
|
||||||
|
@available(iOS 13.0, *)
|
||||||
|
func presentationAnchor(for controller: ASAuthorizationController) -> ASPresentationAnchor {
|
||||||
|
return UIApplication.shared.keyWindow!;
|
||||||
|
}
|
||||||
|
|
||||||
|
@available(iOS 13.0, *)
|
||||||
|
func authorizationController(controller: ASAuthorizationController, didCompleteWithAuthorization authorization: ASAuthorization) {
|
||||||
|
|
||||||
|
if authorization.credential.isKind(of: ASAuthorizationAppleIDCredential.self) {
|
||||||
|
|
||||||
|
let maiCssl : ASAuthorizationAppleIDCredential = authorization.credential as! ASAuthorizationAppleIDCredential
|
||||||
|
|
||||||
|
let maitokenJon = String.init(data: maiCssl.identityToken ?? Data.init(), encoding: String.Encoding.utf8)
|
||||||
|
let maicodeCa = String.init(data: maiCssl.authorizationCode ?? Data.init(), encoding: String.Encoding.utf8)
|
||||||
|
|
||||||
|
|
||||||
|
var reusltScom = Dictionary<String, Any>.init()
|
||||||
|
reusltScom.updateValue(maiCssl.user , forKey: "unionid")
|
||||||
|
reusltScom.updateValue(maitokenJon ?? "", forKey: "openid")
|
||||||
|
reusltScom.updateValue(maitokenJon ?? "", forKey: "access_token")
|
||||||
|
completion?(reusltScom)
|
||||||
|
}else{
|
||||||
|
HUDTool.show(with:"授权失败")
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
func authorizatio(block:AuthCompletion?) -> Void {
|
||||||
|
if #available(iOS 13.0, *){
|
||||||
|
completion = block
|
||||||
|
|
||||||
|
let providerCac : ASAuthorizationAppleIDProvider = ASAuthorizationAppleIDProvider.init()
|
||||||
|
|
||||||
|
let mairequestMka : ASAuthorizationAppleIDRequest = providerCac.createRequest()
|
||||||
|
mairequestMka.requestedScopes = [ASAuthorization.Scope.fullName,ASAuthorization.Scope.email]
|
||||||
|
|
||||||
|
let maicontrollerKKk : ASAuthorizationController = ASAuthorizationController.init(authorizationRequests: [mairequestMka])
|
||||||
|
maicontrollerKKk.delegate = self
|
||||||
|
maicontrollerKKk.presentationContextProvider = self
|
||||||
|
maicontrollerKKk.performRequests()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@available(iOS 13.0, *)
|
||||||
|
func authorizationController(controller: ASAuthorizationController, didCompleteWithError error: Error) {
|
||||||
|
let maierr = error as? NSError
|
||||||
|
if maierr != nil {
|
||||||
|
var message = ""
|
||||||
|
switch maierr?.code {
|
||||||
|
case ASAuthorizationError.canceled.rawValue:
|
||||||
|
message = "授权取消"
|
||||||
|
break
|
||||||
|
case ASAuthorizationError.failed.rawValue:
|
||||||
|
message = "授权请求失败"
|
||||||
|
break
|
||||||
|
case ASAuthorizationError.invalidResponse.rawValue:
|
||||||
|
message = "授权请求无响应"
|
||||||
|
break
|
||||||
|
case ASAuthorizationError.notHandled.rawValue:
|
||||||
|
message = "授权请求失败"
|
||||||
|
break
|
||||||
|
case ASAuthorizationError.unknown.rawValue:
|
||||||
|
message = "授权请求失败"
|
||||||
|
break
|
||||||
|
default:
|
||||||
|
break
|
||||||
|
}
|
||||||
|
HUDTool.show(with: message)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -78,6 +78,26 @@ class AuthViewModel: NSObject {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func authApple(params:[String: Any]) {
|
||||||
|
var par = params
|
||||||
|
par.updateValue("5", forKey: "type")
|
||||||
|
RequestPost(path: "acc/third/login", parma: par) { data in
|
||||||
|
if let account = Deserialized<UserTokenObject>.toModel(with: data) {
|
||||||
|
LoginTokenConfig.config.saveTokenToLocaltion(token: account)
|
||||||
|
self.token.onNext(account)
|
||||||
|
self.token.onCompleted()
|
||||||
|
///进行token的置换
|
||||||
|
if let accessToken = account.access_token {
|
||||||
|
self.tokenTransformTicket(accesToken: accessToken)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} fail: { code, msg in
|
||||||
|
self.token.onNext(nil)
|
||||||
|
self.token.onCompleted()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
///通过token获取ticket
|
///通过token获取ticket
|
||||||
func tokenTransformTicket(accesToken:String) {
|
func tokenTransformTicket(accesToken:String) {
|
||||||
let params = ["access_token": accesToken, "issue_type": "multi"]
|
let params = ["access_token": accesToken, "issue_type": "multi"]
|
||||||
|
59
yinmeng-ios/Modules/Auth/View/AuthItmeButton.swift
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
//
|
||||||
|
// AuthItmeButton.swift
|
||||||
|
// yinmeng-ios
|
||||||
|
//
|
||||||
|
// Created by MaiMang on 2024/2/28.
|
||||||
|
//
|
||||||
|
|
||||||
|
import UIKit
|
||||||
|
|
||||||
|
class AuthItmeButton: UIControl {
|
||||||
|
var title:String? {
|
||||||
|
didSet {
|
||||||
|
titleLb.text = title
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var imageName:String? {
|
||||||
|
didSet {
|
||||||
|
guard let imageName = imageName else { return}
|
||||||
|
imgView.image = UIImage(named: imageName)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
override init(frame: CGRect) {
|
||||||
|
super.init(frame: frame)
|
||||||
|
addSubview(imgView)
|
||||||
|
addSubview(titleLb)
|
||||||
|
imgView.snp.makeConstraints { make in
|
||||||
|
make.size.equalTo(CGSize(width: 47, height: 47))
|
||||||
|
make.top.centerX.equalTo(self)
|
||||||
|
}
|
||||||
|
|
||||||
|
titleLb.snp.makeConstraints { make in
|
||||||
|
make.centerX.equalTo(self)
|
||||||
|
make.top.equalTo(imgView.snp.bottom).offset(6)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
required init?(coder: NSCoder) {
|
||||||
|
fatalError("init(coder:) has not been implemented")
|
||||||
|
}
|
||||||
|
|
||||||
|
private lazy var imgView: UIImageView = {
|
||||||
|
let imageView = UIImageView()
|
||||||
|
imageView.isUserInteractionEnabled = false
|
||||||
|
imageView.layer.masksToBounds = true
|
||||||
|
imageView.contentMode = .scaleAspectFill
|
||||||
|
return imageView
|
||||||
|
}()
|
||||||
|
|
||||||
|
private lazy var titleLb: UILabel = {
|
||||||
|
let label = UILabel()
|
||||||
|
label.textColor = .white
|
||||||
|
label.font = UIFont.systemFont(ofSize: 12)
|
||||||
|
return label
|
||||||
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@@ -6,12 +6,12 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
import UIKit
|
import UIKit
|
||||||
|
import Reusable
|
||||||
protocol ChatBaseCellProtocol: NSObjectProtocol {
|
protocol ChatBaseCellProtocol: NSObjectProtocol {
|
||||||
func cell(_ cell: ChatBaseCell, didTapAvatarAt model: ChatBaseObject)
|
func cell(_ cell: ChatBaseCell, didTapAvatarAt model: ChatBaseObject)
|
||||||
}
|
}
|
||||||
|
|
||||||
class ChatBaseCell: UITableViewCell {
|
class ChatBaseCell: UITableViewCell, Reusable{
|
||||||
weak var delegate: ChatBaseCellProtocol?
|
weak var delegate: ChatBaseCellProtocol?
|
||||||
var model:ChatBaseObject? {
|
var model:ChatBaseObject? {
|
||||||
didSet {
|
didSet {
|
||||||
|
@@ -165,7 +165,7 @@ class PlanetStarClickItemView: UIView {
|
|||||||
@objc func chatBtnAction(){
|
@objc func chatBtnAction(){
|
||||||
if let _refreshBlcok = refreshBlcok,let uid = self.chooseModel?.uid{
|
if let _refreshBlcok = refreshBlcok,let uid = self.chooseModel?.uid{
|
||||||
|
|
||||||
_refreshBlcok(uid)
|
_refreshBlcok("\(uid)")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@objc func refreshBtnAction(){
|
@objc func refreshBtnAction(){
|
||||||
|
10
yinmeng-ios/yinmeng-ios.entitlements
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>com.apple.developer.applesignin</key>
|
||||||
|
<array>
|
||||||
|
<string>Default</string>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|