Commit 33bbaab3fff5158823f3e95476ee4221d7412fd9
1 parent
7b2ee585
no message
Showing
19 changed files
with
750 additions
and
216 deletions
CNLiveServices.podspec
| ... | ... | @@ -32,11 +32,6 @@ TODO: Add long description of the pod here. |
| 32 | 32 | |
| 33 | 33 | s.source_files = 'CNLiveServices/Classes/CNLiveServices.h' |
| 34 | 34 | |
| 35 | - # 环境 | |
| 36 | - s.subspec 'Environment' do |ss| | |
| 37 | - ss.source_files = 'CNLiveServices/Classes/Environment/*.{h,m}' | |
| 38 | - end | |
| 39 | - | |
| 40 | 35 | # 首页 |
| 41 | 36 | s.subspec 'Home' do |ss| |
| 42 | 37 | ss.source_files = 'CNLiveServices/Classes/Home/*.{h,m}' |
| ... | ... | @@ -74,5 +69,6 @@ TODO: Add long description of the pod here. |
| 74 | 69 | # s.public_header_files = 'Pod/Classes/**/*.h' |
| 75 | 70 | # s.frameworks = 'UIKit', 'MapKit' |
| 76 | 71 | s.dependency 'BeeHive' |
| 77 | - | |
| 72 | + s.dependency 'CNLiveEnvironment' | |
| 73 | + | |
| 78 | 74 | end | ... | ... |
CNLiveServices/Classes/CNLiveServices.h
CNLiveServices/Classes/Environment/CNLiveEnvironmentServiceProtocol.h deleted
100644 → 0
| 1 | -// | |
| 2 | -// CNLiveEnvironmentServiceProtocol.h | |
| 3 | -// TestBH | |
| 4 | -// | |
| 5 | -// Created by CNLive-zxw on 2019/7/22. | |
| 6 | -// Copyright © 2019 XW. All rights reserved. | |
| 7 | -// | |
| 8 | - | |
| 9 | -#import <Foundation/Foundation.h> | |
| 10 | -#import "BHServiceProtocol.h" | |
| 11 | - | |
| 12 | -typedef NS_ENUM(NSInteger, CNLiveEnvironmentType) { | |
| 13 | - CNLiveDebugInHouse = 0,//测试企业环境 | |
| 14 | - CNLiveProductionInHouse = 1,//正式企业环境 | |
| 15 | - CNLiveDebugAppStore = 2,//测试商店环境 | |
| 16 | - CNLiveProductionAppStore = 3 //正式商店环境 | |
| 17 | - | |
| 18 | -}; | |
| 19 | - | |
| 20 | -@protocol CNLiveEnvironmentServiceProtocol <NSObject, BHServiceProtocol> | |
| 21 | -- (void)setEnvironment:(CNLiveEnvironmentType)isEnvironment; | |
| 22 | - | |
| 23 | - | |
| 24 | -@end |
Example/CNLiveServices.xcodeproj/project.pbxproj
| ... | ... | @@ -15,6 +15,8 @@ |
| 15 | 15 | 0833CE9A22EFE03200AA3B2C /* CNUserAgreementWebController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0833CE9922EFE03200AA3B2C /* CNUserAgreementWebController.m */; }; |
| 16 | 16 | 084124BC22E70027006699C6 /* CNLiveDetailsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 084124BB22E70027006699C6 /* CNLiveDetailsViewController.m */; }; |
| 17 | 17 | 084124C622E702C6006699C6 /* CNLiveFoundViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 084124C522E702C6006699C6 /* CNLiveFoundViewController.m */; }; |
| 18 | + 084356B5231CFDBA006BD702 /* CNLiveUserInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 084356B4231CFDBA006BD702 /* CNLiveUserInfoModel.m */; }; | |
| 19 | + 084356B8231D10F8006BD702 /* CNLiveUserRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 084356B7231D10F8006BD702 /* CNLiveUserRequest.m */; }; | |
| 18 | 20 | 0882D6A422E5AE1B000859E7 /* CNLiveLoginService.m in Sources */ = {isa = PBXBuildFile; fileRef = 0882D6A322E5AE1B000859E7 /* CNLiveLoginService.m */; }; |
| 19 | 21 | 0882D6A722E5AEB2000859E7 /* CNLoginViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0882D6A622E5AEB2000859E7 /* CNLoginViewController.m */; }; |
| 20 | 22 | 0882D6AA22E5AEDB000859E7 /* CNLiveLoginModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 0882D6A922E5AEDB000859E7 /* CNLiveLoginModule.m */; }; |
| ... | ... | @@ -65,6 +67,13 @@ |
| 65 | 67 | 084124BB22E70027006699C6 /* CNLiveDetailsViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CNLiveDetailsViewController.m; sourceTree = "<group>"; }; |
| 66 | 68 | 084124C422E702C6006699C6 /* CNLiveFoundViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNLiveFoundViewController.h; sourceTree = "<group>"; }; |
| 67 | 69 | 084124C522E702C6006699C6 /* CNLiveFoundViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CNLiveFoundViewController.m; sourceTree = "<group>"; }; |
| 70 | + 084356B3231CFDBA006BD702 /* CNLiveUserInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNLiveUserInfoModel.h; sourceTree = "<group>"; }; | |
| 71 | + 084356B4231CFDBA006BD702 /* CNLiveUserInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CNLiveUserInfoModel.m; sourceTree = "<group>"; }; | |
| 72 | + 084356B6231D10F8006BD702 /* CNLiveUserRequest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNLiveUserRequest.h; sourceTree = "<group>"; }; | |
| 73 | + 084356B7231D10F8006BD702 /* CNLiveUserRequest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CNLiveUserRequest.m; sourceTree = "<group>"; }; | |
| 74 | + 084356B9231D1128006BD702 /* CNLiveUserTypeDef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNLiveUserTypeDef.h; sourceTree = "<group>"; }; | |
| 75 | + 084356BA231D19A4006BD702 /* CNLiveUserUrl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNLiveUserUrl.h; sourceTree = "<group>"; }; | |
| 76 | + 084356BB231D1DDE006BD702 /* CNLiveUserCenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNLiveUserCenter.h; sourceTree = "<group>"; }; | |
| 68 | 77 | 0882D6A222E5AE1B000859E7 /* CNLiveLoginService.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNLiveLoginService.h; sourceTree = "<group>"; }; |
| 69 | 78 | 0882D6A322E5AE1B000859E7 /* CNLiveLoginService.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CNLiveLoginService.m; sourceTree = "<group>"; }; |
| 70 | 79 | 0882D6A522E5AEB2000859E7 /* CNLoginViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNLoginViewController.h; sourceTree = "<group>"; }; |
| ... | ... | @@ -195,8 +204,15 @@ |
| 195 | 204 | 084124C822E72DE4006699C6 /* Model */ = { |
| 196 | 205 | isa = PBXGroup; |
| 197 | 206 | children = ( |
| 207 | + 084356B9231D1128006BD702 /* CNLiveUserTypeDef.h */, | |
| 198 | 208 | 08A5392F22FC22C000CDA315 /* CNLiveUserInfoManager.h */, |
| 199 | 209 | 08A5393022FC22C000CDA315 /* CNLiveUserInfoManager.m */, |
| 210 | + 084356B3231CFDBA006BD702 /* CNLiveUserInfoModel.h */, | |
| 211 | + 084356B4231CFDBA006BD702 /* CNLiveUserInfoModel.m */, | |
| 212 | + 084356B6231D10F8006BD702 /* CNLiveUserRequest.h */, | |
| 213 | + 084356B7231D10F8006BD702 /* CNLiveUserRequest.m */, | |
| 214 | + 084356BA231D19A4006BD702 /* CNLiveUserUrl.h */, | |
| 215 | + 084356BB231D1DDE006BD702 /* CNLiveUserCenter.h */, | |
| 200 | 216 | ); |
| 201 | 217 | path = Model; |
| 202 | 218 | sourceTree = "<group>"; |
| ... | ... | @@ -405,6 +421,7 @@ |
| 405 | 421 | developmentRegion = English; |
| 406 | 422 | hasScannedForEncodings = 0; |
| 407 | 423 | knownRegions = ( |
| 424 | + English, | |
| 408 | 425 | en, |
| 409 | 426 | Base, |
| 410 | 427 | "zh-Hans", |
| ... | ... | @@ -474,13 +491,21 @@ |
| 474 | 491 | ); |
| 475 | 492 | inputPaths = ( |
| 476 | 493 | "${PODS_ROOT}/Target Support Files/Pods-CNLiveServices_Example/Pods-CNLiveServices_Example-frameworks.sh", |
| 494 | + "${BUILT_PRODUCTS_DIR}/AFNetworking/AFNetworking.framework", | |
| 477 | 495 | "${BUILT_PRODUCTS_DIR}/BeeHive/BeeHive.framework", |
| 496 | + "${BUILT_PRODUCTS_DIR}/CNLiveEnvironment/CNLiveEnvironment.framework", | |
| 497 | + "${BUILT_PRODUCTS_DIR}/CNLiveRequestBastKit/CNLiveRequestBastKit.framework", | |
| 498 | + "${BUILT_PRODUCTS_DIR}/MJExtension/MJExtension.framework", | |
| 478 | 499 | ); |
| 479 | 500 | name = "[CP] Embed Pods Frameworks"; |
| 480 | 501 | outputFileListPaths = ( |
| 481 | 502 | ); |
| 482 | 503 | outputPaths = ( |
| 504 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AFNetworking.framework", | |
| 483 | 505 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/BeeHive.framework", |
| 506 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveEnvironment.framework", | |
| 507 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveRequestBastKit.framework", | |
| 508 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJExtension.framework", | |
| 484 | 509 | ); |
| 485 | 510 | runOnlyForDeploymentPostprocessing = 0; |
| 486 | 511 | shellPath = /bin/sh; |
| ... | ... | @@ -527,8 +552,10 @@ |
| 527 | 552 | 08109F1E22FC3CBC0008A577 /* CNLiveFoundService.m in Sources */, |
| 528 | 553 | 0833CE9A22EFE03200AA3B2C /* CNUserAgreementWebController.m in Sources */, |
| 529 | 554 | 0882D6A422E5AE1B000859E7 /* CNLiveLoginService.m in Sources */, |
| 555 | + 084356B8231D10F8006BD702 /* CNLiveUserRequest.m in Sources */, | |
| 530 | 556 | 0882D6B822E5B3D1000859E7 /* CNLiveHomeViewController.m in Sources */, |
| 531 | 557 | 084124C622E702C6006699C6 /* CNLiveFoundViewController.m in Sources */, |
| 558 | + 084356B5231CFDBA006BD702 /* CNLiveUserInfoModel.m in Sources */, | |
| 532 | 559 | 08A5393122FC22C000CDA315 /* CNLiveUserInfoManager.m in Sources */, |
| 533 | 560 | 6003F59A195388D20070C39A /* main.m in Sources */, |
| 534 | 561 | ); | ... | ... |
Example/CNLiveServices/Found/CNLiveFoundViewController.m
| ... | ... | @@ -7,6 +7,7 @@ |
| 7 | 7 | // |
| 8 | 8 | |
| 9 | 9 | #import "CNLiveFoundViewController.h" |
| 10 | +#import "CNLiveUserInfoManager.h" | |
| 10 | 11 | |
| 11 | 12 | @interface CNLiveFoundViewController () |
| 12 | 13 | |
| ... | ... | @@ -28,6 +29,9 @@ |
| 28 | 29 | [btn0 setTitle:@"回调传值" forState:UIControlStateNormal]; |
| 29 | 30 | [btn0 addTarget:self action:@selector(testButtonClicked) forControlEvents:UIControlEventTouchUpInside]; |
| 30 | 31 | [self.view addSubview:btn0]; |
| 32 | + | |
| 33 | + NSLog(@"姓名:%@, ID:%@, Token:%@, Head:%@",User_Name,User_ID,User_Token, User_Head); | |
| 34 | + | |
| 31 | 35 | |
| 32 | 36 | } |
| 33 | 37 | ... | ... |
Example/CNLiveServices/Home/CNLiveHomeViewController.m
| ... | ... | @@ -59,7 +59,7 @@ |
| 59 | 59 | |
| 60 | 60 | - (void)testButtonClicked1 { |
| 61 | 61 | id<CNLiveUserAgreementServiceProtocol> agreement = [[BeeHive shareInstance] createService:@protocol(CNLiveUserAgreementServiceProtocol)]; |
| 62 | - [[agreement class] jumpToAgreementH5WithType:CNAgreementUser]; | |
| 62 | + [[agreement class] jumpToAgreementH5WithType:CNAgreementCancellation]; | |
| 63 | 63 | |
| 64 | 64 | } |
| 65 | 65 | ... | ... |
Example/CNLiveServices/Login/Controller/CNLoginViewController.m
| ... | ... | @@ -9,6 +9,7 @@ |
| 9 | 9 | #import "CNLoginViewController.h" |
| 10 | 10 | #import "CNLiveServices.h" |
| 11 | 11 | #import "CNLiveUserInfoManager.h" |
| 12 | +#import "CNLiveUserRequest.h" | |
| 12 | 13 | |
| 13 | 14 | @interface CNLoginViewController () |
| 14 | 15 | |
| ... | ... | @@ -32,13 +33,13 @@ |
| 32 | 33 | self.view.backgroundColor = [UIColor whiteColor]; |
| 33 | 34 | self.title = @"登录"; |
| 34 | 35 | |
| 35 | -// UIButton *btn0 = [UIButton buttonWithType:UIButtonTypeCustom]; | |
| 36 | -// btn0.frame = CGRectMake(0, 0, 100, 100); | |
| 37 | -// btn0.center = CGPointMake(self.view.center.x, self.view.center.y-120); | |
| 38 | -// btn0.backgroundColor = [UIColor redColor]; | |
| 39 | -// [btn0 setTitle:@"进入协议" forState:UIControlStateNormal]; | |
| 40 | -// [btn0 addTarget:self action:@selector(testButtonClicked) forControlEvents:UIControlEventTouchUpInside]; | |
| 41 | -// [self.view addSubview:btn0]; | |
| 36 | + UIButton *btn0 = [UIButton buttonWithType:UIButtonTypeCustom]; | |
| 37 | + btn0.frame = CGRectMake(0, 0, 100, 100); | |
| 38 | + btn0.center = CGPointMake(self.view.center.x, self.view.center.y-120); | |
| 39 | + btn0.backgroundColor = [UIColor redColor]; | |
| 40 | + [btn0 setTitle:@"进入协议" forState:UIControlStateNormal]; | |
| 41 | + [btn0 addTarget:self action:@selector(testButtonClicked0) forControlEvents:UIControlEventTouchUpInside]; | |
| 42 | + [self.view addSubview:btn0]; | |
| 42 | 43 | |
| 43 | 44 | UIButton *btn1 = [UIButton buttonWithType:UIButtonTypeCustom]; |
| 44 | 45 | btn1.frame = CGRectMake(0, 0, 100, 100); |
| ... | ... | @@ -50,19 +51,27 @@ |
| 50 | 51 | |
| 51 | 52 | } |
| 52 | 53 | |
| 53 | -- (void)testButtonClicked { | |
| 54 | -// id<CNLiveHomeServiceProtocol> home = [[BeeHive shareInstance] createService:@protocol(CNLiveHomeServiceProtocol)]; | |
| 55 | -// [home pushToHomeViewController]; | |
| 56 | - | |
| 54 | +- (void)testButtonClicked0 { | |
| 57 | 55 | id<CNLiveUserAgreementServiceProtocol> agreement = [[BeeHive shareInstance] createService:@protocol(CNLiveUserAgreementServiceProtocol)]; |
| 58 | - [agreement jumpToAgreementH5WithType:CNAgreementUser]; | |
| 56 | + [[agreement class] jumpToAgreementH5WithType:CNAgreementUser]; | |
| 59 | 57 | |
| 60 | 58 | } |
| 61 | 59 | |
| 62 | 60 | - (void)testButtonClicked1 { |
| 63 | - [CNLiveUserInfoManager manager].isLogin = YES; | |
| 61 | + | |
| 62 | + [CNLiveUserRequest loginWithUserName:nil password:nil fromId:nil success:^(id _Nonnull result) { | |
| 63 | + | |
| 64 | + } failure:^(NSDictionary * _Nonnull errorDic) { | |
| 65 | + | |
| 66 | + }]; | |
| 67 | + | |
| 68 | + | |
| 69 | +// NSDictionary *dic = @{@"token":@"zxwqwer",@"id":@"123",@"pic":@"http://asdsa",@"name":@"张晓文"}; | |
| 70 | + NSDictionary *dic = @{@"token":@"zxwqwer",@"id":@"123",@"name":@"张晓文",@"pic":@""}; | |
| 71 | + | |
| 72 | + [[CNLiveUserInfoManager manager] defaultConfiguration:dic]; | |
| 64 | 73 | [self dismissViewControllerAnimated:YES completion:^{ |
| 65 | - self.completeBlock? self.completeBlock(YES):@""; | |
| 74 | + self.completeBlock? self.completeBlock(User_Login):@""; | |
| 66 | 75 | |
| 67 | 76 | }]; |
| 68 | 77 | } | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserCenter.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveUserCenter.h | |
| 3 | +// CNLiveServices | |
| 4 | +// | |
| 5 | +// Created by CNLive-zxw on 2019/9/2. | |
| 6 | +// Copyright © 2019 153993236@qq.com. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#ifndef CNLiveUserCenter_h | |
| 10 | +#define CNLiveUserCenter_h | |
| 11 | + | |
| 12 | +// 枚举值 | |
| 13 | +#import "CNLiveUserTypeDef.h" | |
| 14 | +// 用户相关的请求 | |
| 15 | +#import "CNLiveUserRequest.h" | |
| 16 | +// 本地化用户数据 | |
| 17 | +#import "CNLiveUserInfoManager.h" | |
| 18 | + | |
| 19 | +#endif /* CNLiveUserCenter_h */ | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserInfoManager.h
| ... | ... | @@ -6,14 +6,63 @@ |
| 6 | 6 | // Copyright © 2019 153993236@qq.com. All rights reserved. |
| 7 | 7 | // |
| 8 | 8 | |
| 9 | +/** | |
| 10 | + * 保存用户信息 | |
| 11 | + */ | |
| 12 | + | |
| 9 | 13 | #import <Foundation/Foundation.h> |
| 14 | +#import "CNLiveUserTypeDef.h" | |
| 10 | 15 | |
| 11 | 16 | NS_ASSUME_NONNULL_BEGIN |
| 17 | +// Token | |
| 18 | +#define User_Token [CNLiveUserInfoManager manager].token?[CNLiveUserInfoManager manager].token:@"" | |
| 19 | +// 用户id | |
| 20 | +#define User_ID [CNLiveUserInfoManager manager].ID?[CNLiveUserInfoManager manager].ID:@"" | |
| 21 | +// 用户手机号 | |
| 22 | +#define User_Tel [CNLiveUserInfoManager manager].tel?[CNLiveUserInfoManager manager].tel:@"" | |
| 23 | +// 用户名字 | |
| 24 | +#define User_Name [CNLiveUserInfoManager manager].name?[CNLiveUserInfoManager manager].name:@"" | |
| 25 | +// 用户性别 | |
| 26 | +#define User_Sex [CNLiveUserInfoManager manager].sex?[CNLiveUserInfoManager manager].sex:@"" | |
| 27 | +// 默认头像 | |
| 28 | +#define Default_Head @"默认头像" | |
| 29 | +// 用户头像 | |
| 30 | +#define User_Head [CNLiveUserInfoManager manager].pic?[CNLiveUserInfoManager manager].pic:Default_Head | |
| 31 | +// 用户简介 | |
| 32 | +#define User_Introduction [CNLiveUserInfoManager manager].introduction?[CNLiveUserInfoManager manager].introduction:@"" | |
| 33 | +// 用户是否登录 | |
| 34 | +#define User_Login [CNLiveUserInfoManager manager].isLogin | |
| 12 | 35 | |
| 13 | 36 | @interface CNLiveUserInfoManager : NSObject |
| 14 | -@property (nonatomic, assign) BOOL isLogin; | |
| 37 | + | |
| 38 | +@property (nonatomic, copy, readonly) NSString * __nullable token; | |
| 39 | +@property (nonatomic, copy, readonly) NSString * __nullable ID; | |
| 40 | +@property (nonatomic, copy, readonly) NSString * __nullable name; | |
| 41 | +@property (nonatomic, copy, readonly) NSString * __nullable tel; | |
| 42 | +@property (nonatomic, copy, readonly) NSString * __nullable pic; | |
| 43 | +@property (nonatomic, copy, readonly) NSString * __nullable sex; | |
| 44 | +@property (nonatomic, copy, readonly) NSString * __nullable introduction; | |
| 45 | +@property (nonatomic, assign, readonly) BOOL isLogin; | |
| 46 | + | |
| 15 | 47 | + (instancetype)manager; |
| 16 | 48 | |
| 49 | +/** | |
| 50 | + * 配置用户信息 | |
| 51 | + * | |
| 52 | + * dic 用户信息字典 | |
| 53 | + */ | |
| 54 | +- (void)defaultConfiguration:(NSDictionary *)dic; | |
| 55 | + | |
| 56 | +/** | |
| 57 | + * 更新用户信息 | |
| 58 | + */ | |
| 59 | +- (void)updateUserInfo:(CNLiveUserInfoType)type info:(NSString *)info; | |
| 60 | + | |
| 61 | +/** | |
| 62 | + * 退出登录,删除用户信息 | |
| 63 | + */ | |
| 64 | +- (void)removeUserInfo; | |
| 65 | + | |
| 17 | 66 | @end |
| 18 | 67 | |
| 19 | 68 | NS_ASSUME_NONNULL_END | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserInfoManager.m
| ... | ... | @@ -7,11 +7,24 @@ |
| 7 | 7 | // |
| 8 | 8 | |
| 9 | 9 | #import "CNLiveUserInfoManager.h" |
| 10 | +#import "MJExtension.h" | |
| 11 | +#import "CNLiveUserInfoModel.h" | |
| 12 | + | |
| 10 | 13 | @interface CNLiveUserInfoManager() |
| 14 | +@property (nonatomic, copy, readwrite) NSString * __nullable token; | |
| 15 | +@property (nonatomic, copy, readwrite) NSString * __nullable ID; | |
| 16 | +@property (nonatomic, copy, readwrite) NSString * __nullable tel; | |
| 17 | +@property (nonatomic, copy, readwrite) NSString * __nullable name; | |
| 18 | +@property (nonatomic, copy, readwrite) NSString * __nullable pic; | |
| 19 | +@property (nonatomic, copy, readwrite) NSString * __nullable sex; | |
| 20 | +@property (nonatomic, copy, readwrite) NSString * __nullable introduction; | |
| 11 | 21 | |
| 22 | +@property (nonatomic, strong) CNLiveUserInfoModel * __nullable model; | |
| 12 | 23 | @end |
| 13 | 24 | |
| 14 | 25 | @implementation CNLiveUserInfoManager |
| 26 | +NSString * const CNLiveUserInfo = @"CNLiveUserInfo"; | |
| 27 | + | |
| 15 | 28 | static CNLiveUserInfoManager *_instance = nil; |
| 16 | 29 | |
| 17 | 30 | /** |
| ... | ... | @@ -40,6 +53,112 @@ static CNLiveUserInfoManager *_instance = nil; |
| 40 | 53 | - (nonnull id)mutableCopyWithZone:(nullable NSZone *)zone { |
| 41 | 54 | return _instance; |
| 42 | 55 | } |
| 56 | +- (instancetype)init{ | |
| 57 | + if (self = [super init]) { | |
| 58 | + NSDictionary *dic = [[NSUserDefaults standardUserDefaults] objectForKey:CNLiveUserInfo]; | |
| 59 | + if (dic != nil) { | |
| 60 | + [self defaultConfiguration:dic]; | |
| 61 | + } | |
| 62 | + } | |
| 63 | + return self; | |
| 64 | +} | |
| 65 | + | |
| 66 | +/** | |
| 67 | + * 用户是否登录成功 | |
| 68 | + */ | |
| 69 | +- (BOOL)isLogin{ | |
| 70 | + if(self.ID && ![self.ID isEqualToString:@""] && self.name && ![self.name isEqualToString:@""] && self.token && ![self.token isEqualToString:@""]){ | |
| 71 | + return YES; | |
| 72 | + } | |
| 73 | + return NO; | |
| 74 | +} | |
| 75 | + | |
| 76 | +/** | |
| 77 | + * 配置用户信息 | |
| 78 | + * | |
| 79 | + * dic 用户信息字典 | |
| 80 | + */ | |
| 81 | +- (void)defaultConfiguration:(NSDictionary *)dic { | |
| 82 | + [[NSUserDefaults standardUserDefaults] setObject:dic forKey:CNLiveUserInfo]; | |
| 83 | + [[NSUserDefaults standardUserDefaults] synchronize]; | |
| 84 | + | |
| 85 | + CNLiveUserInfoModel *model = [CNLiveUserInfoModel mj_objectWithKeyValues:dic]; | |
| 86 | + self.model = model; | |
| 87 | + self.token = model.token; | |
| 88 | + self.ID = model.ID; | |
| 89 | + self.name = model.name; | |
| 90 | + self.pic = model.pic; | |
| 91 | +} | |
| 92 | + | |
| 93 | +/** | |
| 94 | + * 更新用户信息 | |
| 95 | + */ | |
| 96 | +- (void)updateUserInfo:(CNLiveUserInfoType)type info:(NSString *)info{ | |
| 97 | + NSMutableDictionary *dic = [[NSUserDefaults standardUserDefaults] objectForKey:CNLiveUserInfo]; | |
| 98 | + if (dic != nil) { | |
| 99 | + switch (type) { | |
| 100 | + case CNLiveUserInfoTypeTel: | |
| 101 | + { | |
| 102 | + dic[@"tel"] = info; | |
| 103 | + _instance.tel = info; | |
| 104 | + _instance.model.tel = info; | |
| 105 | + | |
| 106 | + } | |
| 107 | + break; | |
| 108 | + case CNLiveUserInfoTypeName: | |
| 109 | + { | |
| 110 | + dic[@"name"] = info; | |
| 111 | + _instance.name = info; | |
| 112 | + _instance.model.name = info; | |
| 113 | + | |
| 114 | + } | |
| 115 | + break; | |
| 116 | + case CNLiveUserInfoTypeHead: | |
| 117 | + { | |
| 118 | + dic[@"pic"] = info; | |
| 119 | + _instance.pic = info; | |
| 120 | + _instance.model.pic = info; | |
| 121 | + | |
| 122 | + } | |
| 123 | + break; | |
| 124 | + case CNLiveUserInfoTypeSex: | |
| 125 | + { | |
| 126 | + dic[@"sex"] = info; | |
| 127 | + _instance.sex = info; | |
| 128 | + _instance.model.sex = info; | |
| 129 | + | |
| 130 | + } | |
| 131 | + break; | |
| 132 | + case CNLiveUserInfoTypeIntroduction: | |
| 133 | + { | |
| 134 | + dic[@"introduction"] = info; | |
| 135 | + _instance.introduction = info; | |
| 136 | + _instance.model.introduction = info; | |
| 137 | + | |
| 138 | + } | |
| 139 | + break; | |
| 140 | + } | |
| 141 | + [[NSUserDefaults standardUserDefaults] setObject:dic forKey:CNLiveUserInfo]; | |
| 142 | + [[NSUserDefaults standardUserDefaults] synchronize]; | |
| 143 | + } | |
| 144 | +} | |
| 145 | + | |
| 146 | +/** | |
| 147 | + * 退出登录,删除用户信息 | |
| 148 | + */ | |
| 149 | +- (void)removeUserInfo{ | |
| 150 | + [[NSUserDefaults standardUserDefaults] setObject:nil forKey:CNLiveUserInfo]; | |
| 151 | + [[NSUserDefaults standardUserDefaults] synchronize]; | |
| 152 | + | |
| 153 | + self.model = nil; | |
| 154 | + self.token = nil; | |
| 155 | + self.ID = nil; | |
| 156 | + self.name = nil; | |
| 157 | + self.pic = nil; | |
| 158 | + self.sex = nil; | |
| 159 | + self.introduction = nil; | |
| 160 | + | |
| 161 | +} | |
| 43 | 162 | |
| 44 | 163 | |
| 45 | 164 | @end | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserInfoModel.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveUserInfoModel.h | |
| 3 | +// CNLiveServices_Example | |
| 4 | +// | |
| 5 | +// Created by CNLive-zxw on 2019/9/2. | |
| 6 | +// Copyright © 2019 153993236@qq.com. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#import <Foundation/Foundation.h> | |
| 10 | + | |
| 11 | +NS_ASSUME_NONNULL_BEGIN | |
| 12 | + | |
| 13 | +@interface CNLiveUserInfoModel : NSObject | |
| 14 | +@property (nonatomic, copy) NSString *token; | |
| 15 | +@property (nonatomic, copy) NSString *ID; | |
| 16 | +@property (nonatomic, copy) NSString *tel; | |
| 17 | +@property (nonatomic, copy) NSString *name; | |
| 18 | +@property (nonatomic, copy) NSString *pic; | |
| 19 | +@property (nonatomic, copy) NSString *sex; | |
| 20 | +@property (nonatomic, copy) NSString *introduction; | |
| 21 | + | |
| 22 | +@end | |
| 23 | + | |
| 24 | +NS_ASSUME_NONNULL_END | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserInfoModel.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveUserInfoModel.m | |
| 3 | +// CNLiveServices_Example | |
| 4 | +// | |
| 5 | +// Created by CNLive-zxw on 2019/9/2. | |
| 6 | +// Copyright © 2019 153993236@qq.com. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#import "CNLiveUserInfoModel.h" | |
| 10 | + | |
| 11 | +@implementation CNLiveUserInfoModel | |
| 12 | + | |
| 13 | ++ (NSDictionary *)mj_replacedKeyFromPropertyName { | |
| 14 | + return @{@"ID":@"id"}; | |
| 15 | +} | |
| 16 | + | |
| 17 | +@end | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserRequest.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveUserRequest.h | |
| 3 | +// CNLiveServices_Example | |
| 4 | +// | |
| 5 | +// Created by CNLive-zxw on 2019/9/2. | |
| 6 | +// Copyright © 2019 153993236@qq.com. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#import <Foundation/Foundation.h> | |
| 10 | +#import "CNLiveUserTypeDef.h" | |
| 11 | + | |
| 12 | +NS_ASSUME_NONNULL_BEGIN | |
| 13 | + | |
| 14 | +@interface CNLiveUserRequest : NSObject | |
| 15 | + | |
| 16 | +/** | |
| 17 | + @abstract 初始化 | |
| 18 | + @param appId 注册成功获得应用ID | |
| 19 | + @param appKey 注册成功获得应用key | |
| 20 | + @param appSecret 注册成功获得应用secret | |
| 21 | + @param isTestEnvironment 测试环境开关 | |
| 22 | + @warning 必传参数 | |
| 23 | + 必须在 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions; 方法中调用 | |
| 24 | + */ | |
| 25 | ++ (void)setAppId:(NSString *)appId appKey:(NSString *)appKey appSecret:(NSString *)appSecret isTestEnvironment:(BOOL)isTestEnvironment; | |
| 26 | + | |
| 27 | + | |
| 28 | +/** | |
| 29 | + @abstract 发送验证码 | |
| 30 | + @param type 发送验证码类型(详见CodeType) | |
| 31 | + @param mobile 手机号 | |
| 32 | + @param success 成功回调 | |
| 33 | + @param failure 失败回调 | |
| 34 | + */ | |
| 35 | ++ (void)verificationCodeType:(CNLiveCodeType)type mobile:(NSString *)mobile success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure; | |
| 36 | + | |
| 37 | + | |
| 38 | +/** | |
| 39 | + @abstract 注册 | |
| 40 | + @param userName 邮箱或手机 | |
| 41 | + @param password 密码 | |
| 42 | + @param verificationCode 手机验证码(手机号注册时必填) | |
| 43 | + @param invitationCode 邀请码(非必填) | |
| 44 | + @param fromId 渠道ID(非必填) | |
| 45 | + @param success 成功回调 | |
| 46 | + @param failure 失败回调 | |
| 47 | + */ | |
| 48 | ++ (void)registerWithUserName:(NSString *)userName password:(NSString *)password verificationCode:(NSString *)verificationCode invitationCode:(NSString * _Nullable)invitationCode fromId:(NSString * _Nullable)fromId success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure; | |
| 49 | + | |
| 50 | + | |
| 51 | +/** | |
| 52 | + @abstract 快捷登录 | |
| 53 | + @param userName 手机号 | |
| 54 | + @param verificationCode 验证码 | |
| 55 | + @param fromId 渠道ID(非必填) | |
| 56 | + @param success 成功回调 | |
| 57 | + @param failure 失败回调 | |
| 58 | + */ | |
| 59 | ++ (void)shortcutLoginWithUserName:(NSString *)userName verificationCode:(NSString *)verificationCode fromId:(NSString * _Nullable)fromId success:(void (^)(id))success failure :(void (^)(NSDictionary *))failure; | |
| 60 | + | |
| 61 | + | |
| 62 | +/** | |
| 63 | + @abstract 登录 | |
| 64 | + @param userName 手机号或邮箱 | |
| 65 | + @param password 密码 | |
| 66 | + @param fromId 渠道ID(非必填) | |
| 67 | + @param success 成功回调 | |
| 68 | + @param failure 失败回调 | |
| 69 | + */ | |
| 70 | ++ (void)loginWithUserName:(NSString *)userName password:(NSString *)password fromId:(NSString * _Nullable)fromId success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure; | |
| 71 | + | |
| 72 | + | |
| 73 | +/** | |
| 74 | + @abstract 修改用户单项信息 | |
| 75 | + @param type 修改类型(name-昵称, sex-性别, tel-手机号, head-头像, introduction-简介) | |
| 76 | + @param uid 用户ID | |
| 77 | + @param info 对应的信息(注sex对应f/m/n) | |
| 78 | + @param success 成功回调 | |
| 79 | + @param failure 失败回调 | |
| 80 | + */ | |
| 81 | ++ (void)updateUserInfoType:(CNLiveUserInfoType)type uid:(NSString *)uid info:(NSString *)info success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure; | |
| 82 | + | |
| 83 | + | |
| 84 | +@end | |
| 85 | + | |
| 86 | +NS_ASSUME_NONNULL_END | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserRequest.m
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveUserRequest.m | |
| 3 | +// CNLiveServices_Example | |
| 4 | +// | |
| 5 | +// Created by CNLive-zxw on 2019/9/2. | |
| 6 | +// Copyright © 2019 153993236@qq.com. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#import "CNLiveUserRequest.h" | |
| 10 | +#import "CNLiveUserUrl.h" | |
| 11 | + | |
| 12 | +#define User_AppId [CNLiveUserRequest manager].appId?[CNLiveUserRequest manager].appId:@"" | |
| 13 | +#define User_AppKey [CNLiveUserRequest manager].appKey?[CNLiveUserRequest manager].appKey:@"" | |
| 14 | +#define User_AppSecret [CNLiveUserRequest manager].appSecret?[CNLiveUserRequest manager].appSecret:@"" | |
| 15 | +#define User_TestEnvironment [CNLiveUserRequest manager].isTestEnvironment | |
| 16 | + | |
| 17 | +@interface CNLiveUserRequest() | |
| 18 | + | |
| 19 | +@property (nonatomic, copy) NSString *appId; | |
| 20 | +@property (nonatomic, copy) NSString *appKey; | |
| 21 | +@property (nonatomic, copy) NSString *appSecret; | |
| 22 | +@property (nonatomic, assign) BOOL isTestEnvironment; | |
| 23 | + | |
| 24 | +@end | |
| 25 | + | |
| 26 | +@implementation CNLiveUserRequest | |
| 27 | +static CNLiveUserRequest *_instance = nil; | |
| 28 | + | |
| 29 | +/** | |
| 30 | + * @abstract 单例初始化 | |
| 31 | + */ | |
| 32 | ++ (instancetype)manager{ | |
| 33 | + static dispatch_once_t once; | |
| 34 | + dispatch_once(&once, ^{ | |
| 35 | + _instance = [[CNLiveUserRequest alloc]init]; | |
| 36 | + }); | |
| 37 | + return _instance; | |
| 38 | +} | |
| 39 | + | |
| 40 | ++ (id)allocWithZone:(struct _NSZone *)zone{ | |
| 41 | + static dispatch_once_t onceToken; | |
| 42 | + dispatch_once(&onceToken, ^{ | |
| 43 | + _instance = [super allocWithZone:zone]; | |
| 44 | + }); | |
| 45 | + return _instance; | |
| 46 | +} | |
| 47 | + | |
| 48 | +- (nonnull id)copyWithZone:(nullable NSZone *)zone { | |
| 49 | + return _instance; | |
| 50 | +} | |
| 51 | + | |
| 52 | +- (nonnull id)mutableCopyWithZone:(nullable NSZone *)zone { | |
| 53 | + return _instance; | |
| 54 | +} | |
| 55 | + | |
| 56 | +/** | |
| 57 | + @abstract 初始化 | |
| 58 | + @param appId 注册成功获得应用ID | |
| 59 | + @param appKey 注册成功获得应用key | |
| 60 | + @param appSecret 注册成功获得应用secret | |
| 61 | + @param isTestEnvironment 测试环境开关 | |
| 62 | + @warning 必传参数 | |
| 63 | + 必须在 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions; 方法中调用 | |
| 64 | + */ | |
| 65 | ++ (void)setAppId:(NSString *)appId appKey:(NSString *)appKey appSecret:(NSString *)appSecret isTestEnvironment:(BOOL)isTestEnvironment{ | |
| 66 | + CNLiveUserRequest *manager = [CNLiveUserRequest manager]; | |
| 67 | + manager.appId = appId; | |
| 68 | + manager.appKey = appKey; | |
| 69 | + manager.appSecret = appSecret; | |
| 70 | + manager.isTestEnvironment = isTestEnvironment; | |
| 71 | + | |
| 72 | +} | |
| 73 | + | |
| 74 | + | |
| 75 | +/** | |
| 76 | + @abstract 发送验证码 | |
| 77 | + @param type 发送验证码类型(详见CodeType) | |
| 78 | + @param mobile 手机号 | |
| 79 | + @param success 成功回调 | |
| 80 | + @param failure 失败回调 | |
| 81 | + */ | |
| 82 | ++ (void)verificationCodeType:(CNLiveCodeType)type mobile:(NSString *)mobile success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure{ | |
| 83 | + NSString *url = (User_TestEnvironment)?CNLive_User_Code_Test:CNLive_User_Code; | |
| 84 | + | |
| 85 | +} | |
| 86 | + | |
| 87 | + | |
| 88 | +/** | |
| 89 | + @abstract 注册 | |
| 90 | + @param userName 邮箱或手机 | |
| 91 | + @param password 密码 | |
| 92 | + @param verificationCode 手机验证码(手机号注册时必填) | |
| 93 | + @param invitationCode 邀请码(非必填) | |
| 94 | + @param fromId 渠道ID(非必填) | |
| 95 | + @param success 成功回调 | |
| 96 | + @param failure 失败回调 | |
| 97 | + */ | |
| 98 | ++ (void)registerWithUserName:(NSString *)userName password:(NSString *)password verificationCode:(NSString *)verificationCode invitationCode:(NSString * _Nullable)invitationCode fromId:(NSString * _Nullable)fromId success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure{ | |
| 99 | + NSString *url = (User_TestEnvironment)?CNLive_User_Register_Test:CNLive_User_Register; | |
| 100 | + | |
| 101 | +} | |
| 102 | + | |
| 103 | + | |
| 104 | +/** | |
| 105 | + @abstract 快捷登录 | |
| 106 | + @param userName 手机号 | |
| 107 | + @param verificationCode 验证码 | |
| 108 | + @param fromId 渠道ID(非必填) | |
| 109 | + @param success 成功回调 | |
| 110 | + @param failure 失败回调 | |
| 111 | + */ | |
| 112 | ++ (void)shortcutLoginWithUserName:(NSString *)userName verificationCode:(NSString *)verificationCode fromId:(NSString * _Nullable)fromId success:(void (^)(id))success failure :(void (^)(NSDictionary *))failure{ | |
| 113 | + NSString *url = (User_TestEnvironment)?CNLive_User_SLogin_Test:CNLive_User_SLogin; | |
| 114 | + | |
| 115 | +} | |
| 116 | + | |
| 117 | + | |
| 118 | +/** | |
| 119 | + @abstract 登录 | |
| 120 | + @param userName 手机号或邮箱 | |
| 121 | + @param password 密码 | |
| 122 | + @param fromId 渠道ID(非必填) | |
| 123 | + @param success 成功回调 | |
| 124 | + @param failure 失败回调 | |
| 125 | + */ | |
| 126 | ++ (void)loginWithUserName:(NSString *)userName password:(NSString *)password fromId:(NSString * _Nullable)fromId success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure{ | |
| 127 | + NSString *url = (User_TestEnvironment)?CNLive_User_Login_Test:CNLive_User_Login; | |
| 128 | + | |
| 129 | +} | |
| 130 | + | |
| 131 | + | |
| 132 | +/** | |
| 133 | + @abstract 修改用户单项信息 | |
| 134 | + @param type 修改类型(name-昵称, sex-性别, tel-手机号, head-头像, introduction-简介) | |
| 135 | + @param uid 用户ID | |
| 136 | + @param info 对应的信息(注sex对应f/m/n) | |
| 137 | + @param success 成功回调 | |
| 138 | + @param failure 失败回调 | |
| 139 | + */ | |
| 140 | ++ (void)updateUserInfoType:(CNLiveUserInfoType)type uid:(NSString *)uid info:(NSString *)info success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure { | |
| 141 | + NSString *url = (User_TestEnvironment)?CNLive_User_Update_Test:CNLive_User_Update; | |
| 142 | + | |
| 143 | +} | |
| 144 | + | |
| 145 | +@end | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserTypeDef.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveUserTypeDef.h | |
| 3 | +// CNLiveServices_Example | |
| 4 | +// | |
| 5 | +// Created by CNLive-zxw on 2019/8/8. | |
| 6 | +// Copyright © 2019 153993236@qq.com. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#ifndef CNLiveUserTypeDef_h | |
| 10 | +#define CNLiveUserTypeDef_h | |
| 11 | + | |
| 12 | +// 获取验证码 | |
| 13 | +typedef NS_ENUM(NSUInteger, CNLiveCodeType) { | |
| 14 | + CNLiveCodeTypeShortcutLogin = 0, //快捷登录 | |
| 15 | + CNLiveCodeTypeRegister, //注册 | |
| 16 | + CNLiveCodeTypeUpdateTel, //修改手机号 | |
| 17 | + CNLiveCodeTypeRetrievePassword //找回或修改密码 | |
| 18 | +}; | |
| 19 | + | |
| 20 | + | |
| 21 | +// 修改单项用户信息类型 | |
| 22 | +typedef NS_ENUM(NSUInteger, CNLiveUserInfoType) { | |
| 23 | + CNLiveUserInfoTypeTel = 0, //手机号 | |
| 24 | + CNLiveUserInfoTypeName, //昵称 | |
| 25 | + CNLiveUserInfoTypeHead, //头像 | |
| 26 | + CNLiveUserInfoTypeSex, //性别 | |
| 27 | + CNLiveUserInfoTypeIntroduction //简介 | |
| 28 | + | |
| 29 | +}; | |
| 30 | + | |
| 31 | +#endif /* CNLiveUserTypeDef_h */ | ... | ... |
Example/CNLiveServices/Login/Model/CNLiveUserUrl.h
0 → 100644
| 1 | +// | |
| 2 | +// CNLiveUserUrl.h | |
| 3 | +// CNLiveServices_Example | |
| 4 | +// | |
| 5 | +// Created by CNLive-zxw on 2019/9/2. | |
| 6 | +// Copyright © 2019 153993236@qq.com. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#ifndef CNLiveUserUrl_h | |
| 10 | +#define CNLiveUserUrl_h | |
| 11 | + | |
| 12 | +// 获取验证码 | |
| 13 | +#define CNLive_User_Code @"" | |
| 14 | +#define CNLive_User_Code_Test @"" | |
| 15 | + | |
| 16 | +// 登录 | |
| 17 | +#define CNLive_User_Register @"" | |
| 18 | +#define CNLive_User_Register_Test @"" | |
| 19 | + | |
| 20 | +// 快捷登录 | |
| 21 | +#define CNLive_User_SLogin @"" | |
| 22 | +#define CNLive_User_SLogin_Test @"" | |
| 23 | + | |
| 24 | +// 登录 | |
| 25 | +#define CNLive_User_Login @"" | |
| 26 | +#define CNLive_User_Login_Test @"" | |
| 27 | + | |
| 28 | +// 更新 | |
| 29 | +#define CNLive_User_Update @"" | |
| 30 | +#define CNLive_User_Update_Test @"" | |
| 31 | + | |
| 32 | + | |
| 33 | +#endif /* CNLiveUserUrl_h */ | ... | ... |
Example/CNLiveServices/UserAgreement/CNUserAgreementManager.m
| ... | ... | @@ -8,6 +8,8 @@ |
| 8 | 8 | |
| 9 | 9 | #import "CNUserAgreementManager.h" |
| 10 | 10 | #import "CNUserAgreementWebController.h" |
| 11 | +#import "CNLiveNetworking.h" | |
| 12 | +#import "CNLiveEnvironment.h" | |
| 11 | 13 | |
| 12 | 14 | @BeeHiveService(CNLiveUserAgreementServiceProtocol,CNUserAgreementManager) |
| 13 | 15 | @interface CNUserAgreementManager ()<CNLiveUserAgreementServiceProtocol> |
| ... | ... | @@ -86,172 +88,171 @@ static CNUserAgreementManager *_instance = nil; |
| 86 | 88 | } |
| 87 | 89 | |
| 88 | 90 | - (void)getAgreementH5WithType:(CNGetAgreementH5Type)type success:(SuccessBlock)success failure:(FailureBlock)failure { |
| 89 | - // [CNLiveNetworking setAllowRequestDefaultArgument:NO]; | |
| 90 | - // [CNLiveNetworking requestNetworkWithMethod:CNLiveRequestMethodGET URLString:CNGetAgreementH5Url Param:@{} CacheType:CNLiveNetworkCacheTypeNetworkOnly CompletionBlock:^(NSURLSessionTask *requestTask, id responseObject, NSError *error) { | |
| 91 | - // if (error) { | |
| 92 | - // if (failure) { | |
| 93 | - // failure(error); | |
| 94 | - // } | |
| 95 | - // } | |
| 96 | - // else{ | |
| 97 | - // if ([responseObject isKindOfClass:[NSArray class]]) { | |
| 98 | - // | |
| 99 | - // for (NSDictionary *dic in responseObject) { | |
| 100 | - // | |
| 101 | - // switch (type) { | |
| 102 | - // case CNAgreementUser: | |
| 103 | - // { | |
| 104 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"yhxy"]) { | |
| 105 | - // if (success) { | |
| 106 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 107 | - // return ; | |
| 108 | - // } | |
| 109 | - // } | |
| 110 | - // } | |
| 111 | - // break; | |
| 112 | - // case CNAgreementPrivacy: | |
| 113 | - // { | |
| 114 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"yszc"]) { | |
| 115 | - // if (success) { | |
| 116 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 117 | - // return ; | |
| 118 | - // } | |
| 119 | - // } | |
| 120 | - // } | |
| 121 | - // break; | |
| 122 | - // case CNAgreementHelp: | |
| 123 | - // { | |
| 124 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"bzfk"]) { | |
| 125 | - // if (success) { | |
| 126 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 127 | - // return ; | |
| 128 | - // } | |
| 129 | - // } | |
| 130 | - // } | |
| 131 | - // break; | |
| 132 | - // case CNAgreementUnderstand: | |
| 133 | - // { | |
| 134 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"ljwjj"]) { | |
| 135 | - // if (success) { | |
| 136 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 137 | - // return ; | |
| 138 | - // } | |
| 139 | - // } | |
| 140 | - // } | |
| 141 | - // break; | |
| 142 | - // case CNAgreementIntroduction: | |
| 143 | - // { | |
| 144 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"yyjj"]) { | |
| 145 | - // if (success) { | |
| 146 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 147 | - // return ; | |
| 148 | - // } | |
| 149 | - // } | |
| 150 | - // } | |
| 151 | - // break; | |
| 152 | - // case CNAgreementCopyright: | |
| 153 | - // { | |
| 154 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"bqxx"]) { | |
| 155 | - // if (success) { | |
| 156 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 157 | - // return ; | |
| 158 | - // } | |
| 159 | - // } | |
| 160 | - // } | |
| 161 | - // break; | |
| 162 | - // case CNAgreementPermission: | |
| 163 | - // { | |
| 164 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"rjxkxy"]) { | |
| 165 | - // if (success) { | |
| 166 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 167 | - // return ; | |
| 168 | - // } | |
| 169 | - // } | |
| 170 | - // } | |
| 171 | - // break; | |
| 172 | - // case CNAgreementIntegralRules: | |
| 173 | - // { | |
| 174 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"jfgz"]) { | |
| 175 | - // if (success) { | |
| 176 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 177 | - // return ; | |
| 178 | - // } | |
| 179 | - // } | |
| 180 | - // } | |
| 181 | - // break; | |
| 182 | - // case CNAgreementSigninRules: | |
| 183 | - // { | |
| 184 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"jfjlgz"]) { | |
| 185 | - // if (success) { | |
| 186 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 187 | - // return ; | |
| 188 | - // } | |
| 189 | - // } | |
| 190 | - // } | |
| 191 | - // break; | |
| 192 | - // case CNAgreementReviewApply: | |
| 193 | - // { | |
| 194 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"shsqxy"]) { | |
| 195 | - // if (success) { | |
| 196 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 197 | - // return ; | |
| 198 | - // } | |
| 199 | - // } | |
| 200 | - // } | |
| 201 | - // break; | |
| 202 | - // case CNAgreementCancellation: | |
| 203 | - // { | |
| 204 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"zxxz"]) { | |
| 205 | - // if (success) { | |
| 206 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 207 | - // return ; | |
| 208 | - // } | |
| 209 | - // } | |
| 210 | - // } | |
| 211 | - // break; | |
| 212 | - // case CNAgreementEmojiService: | |
| 213 | - // { | |
| 214 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"fwsm"]) { | |
| 215 | - // if (success) { | |
| 216 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 217 | - // return ; | |
| 218 | - // } | |
| 219 | - // } | |
| 220 | - // } | |
| 221 | - // break; | |
| 222 | - // case CNAgreementEmojiComplaints: | |
| 223 | - // { | |
| 224 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"tssm"]) { | |
| 225 | - // if (success) { | |
| 226 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 227 | - // return ; | |
| 228 | - // } | |
| 229 | - // } | |
| 230 | - // } | |
| 231 | - // break; | |
| 232 | - // case CNAgreementEnterpriseQualification: | |
| 233 | - // { | |
| 234 | - // if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"qyzz"]) { | |
| 235 | - // if (success) { | |
| 236 | - // success(dic[@"detailUrl"],dic[@"title"]); | |
| 237 | - // return ; | |
| 238 | - // } | |
| 239 | - // } | |
| 240 | - // } | |
| 241 | - // break; | |
| 242 | - // default: | |
| 243 | - // break; | |
| 244 | - // } | |
| 245 | - // | |
| 246 | - // } | |
| 247 | - // | |
| 248 | - // } | |
| 249 | - // if (failure) { | |
| 250 | - // failure(error); | |
| 251 | - // } | |
| 252 | - // } | |
| 253 | - // }]; | |
| 254 | - success(@"https://www.baidu.com", @"用户注册协议"); | |
| 91 | + [CNLiveNetworking setAllowRequestDefaultArgument:NO]; | |
| 92 | + [CNLiveNetworking requestNetworkWithMethod:CNLiveRequestMethodGET URLString:CNGetAgreementH5Url Param:@{} CacheType:CNLiveNetworkCacheTypeNetworkOnly CompletionBlock:^(NSURLSessionTask *requestTask, id responseObject, NSError *error) { | |
| 93 | + if (error) { | |
| 94 | + if (failure) { | |
| 95 | + failure(error); | |
| 96 | + } | |
| 97 | + } | |
| 98 | + else{ | |
| 99 | + if ([responseObject isKindOfClass:[NSArray class]]) { | |
| 100 | + | |
| 101 | + for (NSDictionary *dic in responseObject) { | |
| 102 | + | |
| 103 | + switch (type) { | |
| 104 | + case CNAgreementUser: | |
| 105 | + { | |
| 106 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"yhxy"]) { | |
| 107 | + if (success) { | |
| 108 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 109 | + return ; | |
| 110 | + } | |
| 111 | + } | |
| 112 | + } | |
| 113 | + break; | |
| 114 | + case CNAgreementPrivacy: | |
| 115 | + { | |
| 116 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"yszc"]) { | |
| 117 | + if (success) { | |
| 118 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 119 | + return ; | |
| 120 | + } | |
| 121 | + } | |
| 122 | + } | |
| 123 | + break; | |
| 124 | + case CNAgreementHelp: | |
| 125 | + { | |
| 126 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"bzfk"]) { | |
| 127 | + if (success) { | |
| 128 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 129 | + return ; | |
| 130 | + } | |
| 131 | + } | |
| 132 | + } | |
| 133 | + break; | |
| 134 | + case CNAgreementUnderstand: | |
| 135 | + { | |
| 136 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"ljwjj"]) { | |
| 137 | + if (success) { | |
| 138 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 139 | + return ; | |
| 140 | + } | |
| 141 | + } | |
| 142 | + } | |
| 143 | + break; | |
| 144 | + case CNAgreementIntroduction: | |
| 145 | + { | |
| 146 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"yyjj"]) { | |
| 147 | + if (success) { | |
| 148 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 149 | + return ; | |
| 150 | + } | |
| 151 | + } | |
| 152 | + } | |
| 153 | + break; | |
| 154 | + case CNAgreementCopyright: | |
| 155 | + { | |
| 156 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"bqxx"]) { | |
| 157 | + if (success) { | |
| 158 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 159 | + return ; | |
| 160 | + } | |
| 161 | + } | |
| 162 | + } | |
| 163 | + break; | |
| 164 | + case CNAgreementPermission: | |
| 165 | + { | |
| 166 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"rjxkxy"]) { | |
| 167 | + if (success) { | |
| 168 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 169 | + return ; | |
| 170 | + } | |
| 171 | + } | |
| 172 | + } | |
| 173 | + break; | |
| 174 | + case CNAgreementIntegralRules: | |
| 175 | + { | |
| 176 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"jfgz"]) { | |
| 177 | + if (success) { | |
| 178 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 179 | + return ; | |
| 180 | + } | |
| 181 | + } | |
| 182 | + } | |
| 183 | + break; | |
| 184 | + case CNAgreementSigninRules: | |
| 185 | + { | |
| 186 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"jfjlgz"]) { | |
| 187 | + if (success) { | |
| 188 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 189 | + return ; | |
| 190 | + } | |
| 191 | + } | |
| 192 | + } | |
| 193 | + break; | |
| 194 | + case CNAgreementReviewApply: | |
| 195 | + { | |
| 196 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"shsqxy"]) { | |
| 197 | + if (success) { | |
| 198 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 199 | + return ; | |
| 200 | + } | |
| 201 | + } | |
| 202 | + } | |
| 203 | + break; | |
| 204 | + case CNAgreementCancellation: | |
| 205 | + { | |
| 206 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"zxxz"]) { | |
| 207 | + if (success) { | |
| 208 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 209 | + return ; | |
| 210 | + } | |
| 211 | + } | |
| 212 | + } | |
| 213 | + break; | |
| 214 | + case CNAgreementEmojiService: | |
| 215 | + { | |
| 216 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"fwsm"]) { | |
| 217 | + if (success) { | |
| 218 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 219 | + return ; | |
| 220 | + } | |
| 221 | + } | |
| 222 | + } | |
| 223 | + break; | |
| 224 | + case CNAgreementEmojiComplaints: | |
| 225 | + { | |
| 226 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"tssm"]) { | |
| 227 | + if (success) { | |
| 228 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 229 | + return ; | |
| 230 | + } | |
| 231 | + } | |
| 232 | + } | |
| 233 | + break; | |
| 234 | + case CNAgreementEnterpriseQualification: | |
| 235 | + { | |
| 236 | + if ([[NSString stringWithFormat:@"%@",dic[@"type"]] isEqualToString:@"qyzz"]) { | |
| 237 | + if (success) { | |
| 238 | + success(dic[@"detailUrl"],dic[@"title"]); | |
| 239 | + return ; | |
| 240 | + } | |
| 241 | + } | |
| 242 | + } | |
| 243 | + break; | |
| 244 | + default: | |
| 245 | + break; | |
| 246 | + } | |
| 247 | + | |
| 248 | + } | |
| 249 | + | |
| 250 | + } | |
| 251 | + if (failure) { | |
| 252 | + failure(error); | |
| 253 | + } | |
| 254 | + } | |
| 255 | + }]; | |
| 255 | 256 | |
| 256 | 257 | } |
| 257 | 258 | ... | ... |
Example/CNLiveServices/UserAgreement/CNUserAgreementWebController.m
Example/Podfile