Commit f9ede31b4042a3c34b32cf9a789a2330ddd5c8f7

Authored by yanglingyu
1 parent f6d00428

首页导航返回闪动,错误页按钮无法点击

CNLiveCServiceModule.podspec
@@ -8,7 +8,7 @@ @@ -8,7 +8,7 @@
8 8
9 Pod::Spec.new do |s| 9 Pod::Spec.new do |s|
10 s.name = 'CNLiveCServiceModule' 10 s.name = 'CNLiveCServiceModule'
11 - s.version = '0.0.35' 11 + s.version = '0.0.36'
12 s.summary = '我的服务内容' 12 s.summary = '我的服务内容'
13 13
14 # This description is used to generate tags and improve search results. 14 # This description is used to generate tags and improve search results.
CNLiveCServiceModule/Classes/ViewController/CNLiveAllServiceVC.m
@@ -40,11 +40,13 @@ static NSString *HistoryFootID = @"UICollectionFooterView"; @@ -40,11 +40,13 @@ static NSString *HistoryFootID = @"UICollectionFooterView";
40 self.dataSource = @[]; 40 self.dataSource = @[];
41 [self.listCollectionView reloadData]; 41 [self.listCollectionView reloadData];
42 } 42 }
  43 + self.listCollectionView.hidden = NO;
43 if (![CNLiveNetworking isNetworking]) { 44 if (![CNLiveNetworking isNetworking]) {
44 self.listCollectionView.mj_footer.hidden = YES; 45 self.listCollectionView.mj_footer.hidden = YES;
45 if (self.dataSource.count>0) { 46 if (self.dataSource.count>0) {
46 return; 47 return;
47 } 48 }
  49 + self.listCollectionView.hidden = YES;
48 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noNet"] text:@"网络开小差了,刷新试试" detailText:nil buttonTitle:@" 刷新 " buttonAction:@selector(requestService)]; 50 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noNet"] text:@"网络开小差了,刷新试试" detailText:nil buttonTitle:@" 刷新 " buttonAction:@selector(requestService)];
49 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop); 51 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop);
50 [self setCNAPIErrorEmptyView]; 52 [self setCNAPIErrorEmptyView];
@@ -77,6 +79,7 @@ static NSString *HistoryFootID = @"UICollectionFooterView"; @@ -77,6 +79,7 @@ static NSString *HistoryFootID = @"UICollectionFooterView";
77 } 79 }
78 [self.listCollectionView.mj_footer endRefreshing]; 80 [self.listCollectionView.mj_footer endRefreshing];
79 self.listCollectionView.mj_footer.hidden = YES; 81 self.listCollectionView.mj_footer.hidden = YES;
  82 + self.listCollectionView.hidden = YES;
80 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_failure"] text:@"加载失败,请点击重试" detailText:nil buttonTitle:@" 重试 " buttonAction:@selector(requestService)]; 83 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_failure"] text:@"加载失败,请点击重试" detailText:nil buttonTitle:@" 重试 " buttonAction:@selector(requestService)];
81 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop); 84 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop);
82 [self setCNAPIErrorEmptyView]; 85 [self setCNAPIErrorEmptyView];
@@ -113,14 +116,9 @@ static NSString *HistoryFootID = @"UICollectionFooterView"; @@ -113,14 +116,9 @@ static NSString *HistoryFootID = @"UICollectionFooterView";
113 make.bottom.equalTo(self.mas_bottomLayoutGuide); 116 make.bottom.equalTo(self.mas_bottomLayoutGuide);
114 }]; 117 }];
115 } 118 }
116 -- (void)viewWillAppear:(BOOL)animated{  
117 - [super viewWillAppear:animated];  
118 - self.navigationController.navigationBarHidden = YES;  
119 -}  
120 -- (void)viewWillDisappear:(BOOL)animated 119 +- (BOOL)preferredNavigationBarHidden
121 { 120 {
122 - [super viewWillDisappear:animated];  
123 - self.navigationController.navigationBarHidden = NO; 121 + return YES;
124 } 122 }
125 #pragma mark - UICollectionViewDelegate 123 #pragma mark - UICollectionViewDelegate
126 - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{ 124 - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
CNLiveCServiceModule/Classes/ViewController/CNLiveMyServicesVC.m
@@ -31,11 +31,13 @@ static NSString *HotListCellID = @"HotListCellID"; @@ -31,11 +31,13 @@ static NSString *HotListCellID = @"HotListCellID";
31 self.dataSource = @[]; 31 self.dataSource = @[];
32 [self.listCollectionView reloadData]; 32 [self.listCollectionView reloadData];
33 } 33 }
  34 + self.listCollectionView.hidden = NO;
34 if (![CNLiveNetworking isNetworking]) { 35 if (![CNLiveNetworking isNetworking]) {
35 self.listCollectionView.mj_footer.hidden = YES; 36 self.listCollectionView.mj_footer.hidden = YES;
36 if (self.dataSource.count > 0) { 37 if (self.dataSource.count > 0) {
37 return; 38 return;
38 } 39 }
  40 + self.listCollectionView.hidden = YES;
39 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noNet"] text:@"网络开小差了,刷新试试" detailText:nil buttonTitle:@" 刷新 " buttonAction:@selector(myServiceData)]; 41 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noNet"] text:@"网络开小差了,刷新试试" detailText:nil buttonTitle:@" 刷新 " buttonAction:@selector(myServiceData)];
40 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop); 42 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop);
41 [self setCNAPIErrorEmptyView]; 43 [self setCNAPIErrorEmptyView];
@@ -51,6 +53,7 @@ static NSString *HotListCellID = @"HotListCellID"; @@ -51,6 +53,7 @@ static NSString *HotListCellID = @"HotListCellID";
51 if (self.dataSource.count > 0) { 53 if (self.dataSource.count > 0) {
52 return; 54 return;
53 } 55 }
  56 + self.listCollectionView.hidden = YES;
54 self.listCollectionView.mj_footer.hidden = YES; 57 self.listCollectionView.mj_footer.hidden = YES;
55 self.navigationBar.right.hidden = YES; 58 self.navigationBar.right.hidden = YES;
56 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noMsg"] text:@"暂无内容" detailText:nil buttonTitle:NULL buttonAction:NULL]; 59 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noMsg"] text:@"暂无内容" detailText:nil buttonTitle:NULL buttonAction:NULL];
@@ -76,6 +79,7 @@ static NSString *HotListCellID = @"HotListCellID"; @@ -76,6 +79,7 @@ static NSString *HotListCellID = @"HotListCellID";
76 [QMUITips hideAllTipsInView:self.view]; 79 [QMUITips hideAllTipsInView:self.view];
77 [self.listCollectionView.mj_footer endRefreshing]; 80 [self.listCollectionView.mj_footer endRefreshing];
78 self.listCollectionView.mj_footer.hidden = YES; 81 self.listCollectionView.mj_footer.hidden = YES;
  82 + self.listCollectionView.hidden = YES;
79 strongself 83 strongself
80 self.navigationBar.right.hidden = YES; 84 self.navigationBar.right.hidden = YES;
81 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_failure"] text:@"加载失败,请点击重试" detailText:nil buttonTitle:@" 重试 " buttonAction:@selector(myServiceData)]; 85 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_failure"] text:@"加载失败,请点击重试" detailText:nil buttonTitle:@" 重试 " buttonAction:@selector(myServiceData)];
@@ -105,14 +109,9 @@ static NSString *HotListCellID = @"HotListCellID"; @@ -105,14 +109,9 @@ static NSString *HotListCellID = @"HotListCellID";
105 make.bottom.equalTo(self.mas_bottomLayoutGuide); 109 make.bottom.equalTo(self.mas_bottomLayoutGuide);
106 }]; 110 }];
107 } 111 }
108 -- (void)viewWillAppear:(BOOL)animated {  
109 - [super viewWillAppear:animated];  
110 - self.navigationController.navigationBarHidden = YES;  
111 -}  
112 -- (void)viewWillDisappear:(BOOL)animated 112 +- (BOOL)preferredNavigationBarHidden
113 { 113 {
114 - [super viewWillDisappear:animated];  
115 - self.navigationController.navigationBarHidden = NO; 114 + return YES;
116 } 115 }
117 #pragma mark - UICollectionViewDelegate 116 #pragma mark - UICollectionViewDelegate
118 - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{ 117 - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
CNLiveCServiceModule/Classes/ViewController/CNLiveServiceSearchVC.m
@@ -157,16 +157,18 @@ static NSString *HistoryFootID = @"HistoryFootID"; @@ -157,16 +157,18 @@ static NSString *HistoryFootID = @"HistoryFootID";
157 - (void)viewWillAppear:(BOOL)animated 157 - (void)viewWillAppear:(BOOL)animated
158 { 158 {
159 [super viewWillAppear:animated]; 159 [super viewWillAppear:animated];
160 - self.navigationController.navigationBarHidden = YES;  
161 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(resignActive) name:UIApplicationDidEnterBackgroundNotification object:nil]; 160 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(resignActive) name:UIApplicationDidEnterBackgroundNotification object:nil];
162 } 161 }
163 - (void)viewWillDisappear:(BOOL)animated 162 - (void)viewWillDisappear:(BOOL)animated
164 { 163 {
165 [super viewWillDisappear:animated]; 164 [super viewWillDisappear:animated];
166 - self.navigationController.navigationBarHidden = NO;  
167 [[NSNotificationCenter defaultCenter] removeObserver:self]; 165 [[NSNotificationCenter defaultCenter] removeObserver:self];
168 [CNLiveServiceHistorySearch saveHistorySearch:self.histories.mutableCopy]; 166 [CNLiveServiceHistorySearch saveHistorySearch:self.histories.mutableCopy];
169 } 167 }
  168 +- (BOOL)preferredNavigationBarHidden
  169 +{
  170 + return YES;
  171 +}
170 #pragma mark - Notification 172 #pragma mark - Notification
171 - (void)resignActive{ 173 - (void)resignActive{
172 [CNLiveServiceHistorySearch saveHistorySearch:self.histories.mutableCopy]; 174 [CNLiveServiceHistorySearch saveHistorySearch:self.histories.mutableCopy];
CNLiveCServiceModule/Classes/ViewController/CNLiveServiceVC.m
@@ -43,11 +43,13 @@ static NSString *CNGoodsOrVideoheaderID = @"CNLiveGoodsOrVideoHeaderView"; @@ -43,11 +43,13 @@ static NSString *CNGoodsOrVideoheaderID = @"CNLiveGoodsOrVideoHeaderView";
43 @implementation CNLiveServiceVC 43 @implementation CNLiveServiceVC
44 - (void)requestService{ 44 - (void)requestService{
45 self.isError = NO; 45 self.isError = NO;
  46 + self.listCollectionView.hidden = NO;
46 if (![CNLiveNetworking isNetworking]) { 47 if (![CNLiveNetworking isNetworking]) {
47 [_listCollectionView.mj_header endRefreshing]; 48 [_listCollectionView.mj_header endRefreshing];
48 if (self.dataSource.count>0 && self.pageListSource.count>0) { 49 if (self.dataSource.count>0 && self.pageListSource.count>0) {
49 return; 50 return;
50 } 51 }
  52 + self.listCollectionView.hidden = YES;
51 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noNet"] text:@"网络开小差了,刷新试试" detailText:nil buttonTitle:@" 刷新 " buttonAction:@selector(requestService)]; 53 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_noNet"] text:@"网络开小差了,刷新试试" detailText:nil buttonTitle:@" 刷新 " buttonAction:@selector(requestService)];
52 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop); 54 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop);
53 [self setCNAPIErrorEmptyView]; 55 [self setCNAPIErrorEmptyView];
@@ -87,6 +89,7 @@ static NSString *CNGoodsOrVideoheaderID = @"CNLiveGoodsOrVideoHeaderView"; @@ -87,6 +89,7 @@ static NSString *CNGoodsOrVideoheaderID = @"CNLiveGoodsOrVideoHeaderView";
87 if (self.dataSource.count>0||self.pageListSource.count>0) { 89 if (self.dataSource.count>0||self.pageListSource.count>0) {
88 return; 90 return;
89 } 91 }
  92 + self.listCollectionView.hidden = YES;
90 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_failure"] text:@"加载失败,请点击重试" detailText:nil buttonTitle:@" 重试 " buttonAction:@selector(requestService)]; 93 [self showEmptyViewWithImage:[UIImage loadCServiceBundle:@"service_failure"] text:@"加载失败,请点击重试" detailText:nil buttonTitle:@" 重试 " buttonAction:@selector(requestService)];
91 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop); 94 self.emptyView.frame = CGRectMake(0, NavigationContentTop, SCREEN_WIDTH, SCREEN_HEIGHT-NavigationContentTop);
92 [self setCNAPIErrorEmptyView]; 95 [self setCNAPIErrorEmptyView];
@@ -112,18 +115,15 @@ static NSString *CNGoodsOrVideoheaderID = @"CNLiveGoodsOrVideoHeaderView"; @@ -112,18 +115,15 @@ static NSString *CNGoodsOrVideoheaderID = @"CNLiveGoodsOrVideoHeaderView";
112 - (void)viewWillAppear:(BOOL)animated 115 - (void)viewWillAppear:(BOOL)animated
113 { 116 {
114 [super viewWillAppear:animated]; 117 [super viewWillAppear:animated];
115 - self.navigationController.navigationBarHidden = YES;  
116 -  
117 if (self.oldFontSize != [CNFontAndRatioTool getFontSizeCoefficient]) { 118 if (self.oldFontSize != [CNFontAndRatioTool getFontSizeCoefficient]) {
118 self.oldFontSize = [CNFontAndRatioTool getFontSizeCoefficient]; 119 self.oldFontSize = [CNFontAndRatioTool getFontSizeCoefficient];
119 [self requestService]; 120 [self requestService];
120 } 121 }
121 } 122 }
122 123
123 -- (void)viewWillDisappear:(BOOL)animated 124 +- (BOOL)preferredNavigationBarHidden
124 { 125 {
125 - [super viewWillDisappear:animated];  
126 - self.navigationController.navigationBarHidden = NO; 126 + return YES;
127 } 127 }
128 - (void)viewDidLayoutSubviews 128 - (void)viewDidLayoutSubviews
129 { 129 {
Example/CNLiveCServiceModule.xcodeproj/project.pbxproj
@@ -7,6 +7,9 @@ @@ -7,6 +7,9 @@
7 objects = { 7 objects = {
8 8
9 /* Begin PBXBuildFile section */ 9 /* Begin PBXBuildFile section */
  10 + 08E1066E27910A12006DB3F7 /* CNLiveServiceManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 08E1066827910A12006DB3F7 /* CNLiveServiceManager.m */; };
  11 + 08E1066F27910A12006DB3F7 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 08E1066A27910A12006DB3F7 /* LaunchScreen.storyboard */; };
  12 + 08E1067027910A12006DB3F7 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 08E1066C27910A12006DB3F7 /* Main.storyboard */; };
10 08FF465A2758CD4B001A767D /* CNLiveCServiceModuleImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = 08FF46582758CD4A001A767D /* CNLiveCServiceModuleImpl.m */; }; 13 08FF465A2758CD4B001A767D /* CNLiveCServiceModuleImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = 08FF46582758CD4A001A767D /* CNLiveCServiceModuleImpl.m */; };
11 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 14 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; };
12 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58F195388D20070C39A /* CoreGraphics.framework */; }; 15 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58F195388D20070C39A /* CoreGraphics.framework */; };
@@ -38,6 +41,10 @@ @@ -38,6 +41,10 @@
38 /* End PBXContainerItemProxy section */ 41 /* End PBXContainerItemProxy section */
39 42
40 /* Begin PBXFileReference section */ 43 /* Begin PBXFileReference section */
  44 + 08E1066727910A12006DB3F7 /* CNLiveServiceManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNLiveServiceManager.h; sourceTree = "<group>"; };
  45 + 08E1066827910A12006DB3F7 /* CNLiveServiceManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CNLiveServiceManager.m; sourceTree = "<group>"; };
  46 + 08E1066B27910A12006DB3F7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = LaunchScreen.storyboard; sourceTree = "<group>"; };
  47 + 08E1066D27910A12006DB3F7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Main.storyboard; sourceTree = "<group>"; };
41 08FF46582758CD4A001A767D /* CNLiveCServiceModuleImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CNLiveCServiceModuleImpl.m; sourceTree = "<group>"; }; 48 08FF46582758CD4A001A767D /* CNLiveCServiceModuleImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CNLiveCServiceModuleImpl.m; sourceTree = "<group>"; };
42 08FF46592758CD4B001A767D /* CNLiveCServiceModuleImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNLiveCServiceModuleImpl.h; sourceTree = "<group>"; }; 49 08FF46592758CD4B001A767D /* CNLiveCServiceModuleImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNLiveCServiceModuleImpl.h; sourceTree = "<group>"; };
43 24FCDF117E18830B2795CC8A /* Pods_CNLiveCServiceModule_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_CNLiveCServiceModule_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 50 24FCDF117E18830B2795CC8A /* Pods_CNLiveCServiceModule_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_CNLiveCServiceModule_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -98,9 +105,21 @@ @@ -98,9 +105,21 @@
98 /* End PBXFrameworksBuildPhase section */ 105 /* End PBXFrameworksBuildPhase section */
99 106
100 /* Begin PBXGroup section */ 107 /* Begin PBXGroup section */
  108 + 08E1066927910A12006DB3F7 /* Base.lproj */ = {
  109 + isa = PBXGroup;
  110 + children = (
  111 + 08E1066A27910A12006DB3F7 /* LaunchScreen.storyboard */,
  112 + 08E1066C27910A12006DB3F7 /* Main.storyboard */,
  113 + );
  114 + path = Base.lproj;
  115 + sourceTree = "<group>";
  116 + };
101 08FF464727586356001A767D /* CNLIveCServiceModule */ = { 117 08FF464727586356001A767D /* CNLIveCServiceModule */ = {
102 isa = PBXGroup; 118 isa = PBXGroup;
103 children = ( 119 children = (
  120 + 08E1066927910A12006DB3F7 /* Base.lproj */,
  121 + 08E1066727910A12006DB3F7 /* CNLiveServiceManager.h */,
  122 + 08E1066827910A12006DB3F7 /* CNLiveServiceManager.m */,
104 08FF46592758CD4B001A767D /* CNLiveCServiceModuleImpl.h */, 123 08FF46592758CD4B001A767D /* CNLiveCServiceModuleImpl.h */,
105 08FF46582758CD4A001A767D /* CNLiveCServiceModuleImpl.m */, 124 08FF46582758CD4A001A767D /* CNLiveCServiceModuleImpl.m */,
106 ); 125 );
@@ -221,6 +240,7 @@ @@ -221,6 +240,7 @@
221 6003F587195388D20070C39A /* Frameworks */, 240 6003F587195388D20070C39A /* Frameworks */,
222 6003F588195388D20070C39A /* Resources */, 241 6003F588195388D20070C39A /* Resources */,
223 388A34DFF0F9E22583B1B874 /* [CP] Embed Pods Frameworks */, 242 388A34DFF0F9E22583B1B874 /* [CP] Embed Pods Frameworks */,
  243 + C1C41FFB61C3A8767649C16C /* [CP] Copy Pods Resources */,
224 ); 244 );
225 buildRules = ( 245 buildRules = (
226 ); 246 );
@@ -297,6 +317,8 @@ @@ -297,6 +317,8 @@
297 873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */, 317 873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */,
298 71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */, 318 71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */,
299 6003F5A9195388D20070C39A /* Images.xcassets in Resources */, 319 6003F5A9195388D20070C39A /* Images.xcassets in Resources */,
  320 + 08E1067027910A12006DB3F7 /* Main.storyboard in Resources */,
  321 + 08E1066F27910A12006DB3F7 /* LaunchScreen.storyboard in Resources */,
300 6003F598195388D20070C39A /* InfoPlist.strings in Resources */, 322 6003F598195388D20070C39A /* InfoPlist.strings in Resources */,
301 ); 323 );
302 runOnlyForDeploymentPostprocessing = 0; 324 runOnlyForDeploymentPostprocessing = 0;
@@ -354,13 +376,29 @@ @@ -354,13 +376,29 @@
354 "${BUILT_PRODUCTS_DIR}/CNLiveEnvironment/CNLiveEnvironment.framework", 376 "${BUILT_PRODUCTS_DIR}/CNLiveEnvironment/CNLiveEnvironment.framework",
355 "${BUILT_PRODUCTS_DIR}/CNLiveNewTripartiteManagement/CNLiveNewTripartiteManagement.framework", 377 "${BUILT_PRODUCTS_DIR}/CNLiveNewTripartiteManagement/CNLiveNewTripartiteManagement.framework",
356 "${BUILT_PRODUCTS_DIR}/CNLiveRequestBastKit/CNLiveRequestBastKit.framework", 378 "${BUILT_PRODUCTS_DIR}/CNLiveRequestBastKit/CNLiveRequestBastKit.framework",
  379 + "${PODS_ROOT}/CNLiveSDK/CNLiveSDK/Classes/CNLivePaySDK.framework",
357 "${BUILT_PRODUCTS_DIR}/CNLiveUserManagement/CNLiveUserManagement.framework", 380 "${BUILT_PRODUCTS_DIR}/CNLiveUserManagement/CNLiveUserManagement.framework",
  381 + "${PODS_ROOT}/DSARModule/DSARModule/Frameworks/DSARModule.framework",
  382 + "${BUILT_PRODUCTS_DIR}/DSBaseModule/DSBaseModule.framework",
  383 + "${BUILT_PRODUCTS_DIR}/DSGTMBase64/DSGTMBase64.framework",
  384 + "${BUILT_PRODUCTS_DIR}/DSToolsModule/DSToolsModule.framework",
  385 + "${BUILT_PRODUCTS_DIR}/DZNEmptyDataSet/DZNEmptyDataSet.framework",
  386 + "${BUILT_PRODUCTS_DIR}/HappyDNS/HappyDNS.framework",
  387 + "${BUILT_PRODUCTS_DIR}/IQKeyboardManager/IQKeyboardManager.framework",
  388 + "${BUILT_PRODUCTS_DIR}/MBProgressHUD/MBProgressHUD.framework",
358 "${BUILT_PRODUCTS_DIR}/MJExtension/MJExtension.framework", 389 "${BUILT_PRODUCTS_DIR}/MJExtension/MJExtension.framework",
359 "${BUILT_PRODUCTS_DIR}/MJRefresh/MJRefresh.framework", 390 "${BUILT_PRODUCTS_DIR}/MJRefresh/MJRefresh.framework",
360 "${BUILT_PRODUCTS_DIR}/Masonry/Masonry.framework", 391 "${BUILT_PRODUCTS_DIR}/Masonry/Masonry.framework",
  392 + "${PODS_ROOT}/PLPlayerKit/Pod/Library/PLPlayerKit.framework",
361 "${BUILT_PRODUCTS_DIR}/QMUIKit/QMUIKit.framework", 393 "${BUILT_PRODUCTS_DIR}/QMUIKit/QMUIKit.framework",
  394 + "${BUILT_PRODUCTS_DIR}/Qiniu/Qiniu.framework",
  395 + "${BUILT_PRODUCTS_DIR}/SAMKeychain/SAMKeychain.framework",
  396 + "${BUILT_PRODUCTS_DIR}/SDAutoLayout/SDAutoLayout.framework",
362 "${BUILT_PRODUCTS_DIR}/SDCycleScrollView/SDCycleScrollView.framework", 397 "${BUILT_PRODUCTS_DIR}/SDCycleScrollView/SDCycleScrollView.framework",
363 "${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework", 398 "${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework",
  399 + "${BUILT_PRODUCTS_DIR}/TZImagePickerController/TZImagePickerController.framework",
  400 + "${BUILT_PRODUCTS_DIR}/WebViewJavascriptBridge/WebViewJavascriptBridge.framework",
  401 + "${BUILT_PRODUCTS_DIR}/YBImageBrowser/YBImageBrowser.framework",
364 "${BUILT_PRODUCTS_DIR}/YYAsyncLayer/YYAsyncLayer.framework", 402 "${BUILT_PRODUCTS_DIR}/YYAsyncLayer/YYAsyncLayer.framework",
365 "${BUILT_PRODUCTS_DIR}/YYCache/YYCache.framework", 403 "${BUILT_PRODUCTS_DIR}/YYCache/YYCache.framework",
366 "${BUILT_PRODUCTS_DIR}/YYCategories/YYCategories.framework", 404 "${BUILT_PRODUCTS_DIR}/YYCategories/YYCategories.framework",
@@ -386,13 +424,29 @@ @@ -386,13 +424,29 @@
386 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveEnvironment.framework", 424 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveEnvironment.framework",
387 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveNewTripartiteManagement.framework", 425 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveNewTripartiteManagement.framework",
388 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveRequestBastKit.framework", 426 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveRequestBastKit.framework",
  427 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLivePaySDK.framework",
389 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveUserManagement.framework", 428 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveUserManagement.framework",
  429 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DSARModule.framework",
  430 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DSBaseModule.framework",
  431 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DSGTMBase64.framework",
  432 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DSToolsModule.framework",
  433 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DZNEmptyDataSet.framework",
  434 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/HappyDNS.framework",
  435 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/IQKeyboardManager.framework",
  436 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MBProgressHUD.framework",
390 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJExtension.framework", 437 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJExtension.framework",
391 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJRefresh.framework", 438 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJRefresh.framework",
392 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Masonry.framework", 439 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Masonry.framework",
  440 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/PLPlayerKit.framework",
393 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/QMUIKit.framework", 441 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/QMUIKit.framework",
  442 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Qiniu.framework",
  443 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SAMKeychain.framework",
  444 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDAutoLayout.framework",
394 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDCycleScrollView.framework", 445 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDCycleScrollView.framework",
395 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework", 446 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework",
  447 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/TZImagePickerController.framework",
  448 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/WebViewJavascriptBridge.framework",
  449 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YBImageBrowser.framework",
396 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YYAsyncLayer.framework", 450 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YYAsyncLayer.framework",
397 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YYCache.framework", 451 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YYCache.framework",
398 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YYCategories.framework", 452 "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/YYCategories.framework",
@@ -430,6 +484,66 @@ @@ -430,6 +484,66 @@
430 shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; 484 shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
431 showEnvVarsInLog = 0; 485 showEnvVarsInLog = 0;
432 }; 486 };
  487 + C1C41FFB61C3A8767649C16C /* [CP] Copy Pods Resources */ = {
  488 + isa = PBXShellScriptBuildPhase;
  489 + buildActionMask = 2147483647;
  490 + files = (
  491 + );
  492 + inputPaths = (
  493 + "${PODS_ROOT}/Target Support Files/Pods-CNLiveCServiceModule_Example/Pods-CNLiveCServiceModule_Example-resources.sh",
  494 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSAddressModule.bundle",
  495 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSARModule.bundle",
  496 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSCouponModule.bundle",
  497 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSCultureModule.bundle",
  498 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSDarenModule.bundle",
  499 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSDefaultModule.bundle",
  500 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSExpressModule.bundle",
  501 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSGiftModule.bundle",
  502 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSHappinessModule.bundle",
  503 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSLifeServiceModule.bundle",
  504 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSOldHappinessModule.bundle",
  505 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSOptimizationModule.bundle",
  506 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSPayModule.bundle",
  507 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSPlayerModule.bundle",
  508 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSQrCodeModule.bundle",
  509 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSRefreshModule.bundle",
  510 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSRepastModule.bundle",
  511 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSServiceModule.bundle",
  512 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSShopCartModule.bundle",
  513 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSShopModule.bundle",
  514 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSVideoCModule.bundle",
  515 + "${PODS_ROOT}/DSCnliveShopSDK/DSCnliveShopSDK/Assets/DSWebViewModule.bundle",
  516 + );
  517 + name = "[CP] Copy Pods Resources";
  518 + outputPaths = (
  519 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSAddressModule.bundle",
  520 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSARModule.bundle",
  521 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSCouponModule.bundle",
  522 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSCultureModule.bundle",
  523 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSDarenModule.bundle",
  524 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSDefaultModule.bundle",
  525 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSExpressModule.bundle",
  526 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSGiftModule.bundle",
  527 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSHappinessModule.bundle",
  528 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSLifeServiceModule.bundle",
  529 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSOldHappinessModule.bundle",
  530 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSOptimizationModule.bundle",
  531 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSPayModule.bundle",
  532 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSPlayerModule.bundle",
  533 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSQrCodeModule.bundle",
  534 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSRefreshModule.bundle",
  535 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSRepastModule.bundle",
  536 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSServiceModule.bundle",
  537 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSShopCartModule.bundle",
  538 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSShopModule.bundle",
  539 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSVideoCModule.bundle",
  540 + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DSWebViewModule.bundle",
  541 + );
  542 + runOnlyForDeploymentPostprocessing = 0;
  543 + shellPath = /bin/sh;
  544 + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-CNLiveCServiceModule_Example/Pods-CNLiveCServiceModule_Example-resources.sh\"\n";
  545 + showEnvVarsInLog = 0;
  546 + };
433 /* End PBXShellScriptBuildPhase section */ 547 /* End PBXShellScriptBuildPhase section */
434 548
435 /* Begin PBXSourcesBuildPhase section */ 549 /* Begin PBXSourcesBuildPhase section */
@@ -439,6 +553,7 @@ @@ -439,6 +553,7 @@
439 files = ( 553 files = (
440 6003F59E195388D20070C39A /* CNLIVEAppDelegate.m in Sources */, 554 6003F59E195388D20070C39A /* CNLIVEAppDelegate.m in Sources */,
441 6003F5A7195388D20070C39A /* CNLIVEViewController.m in Sources */, 555 6003F5A7195388D20070C39A /* CNLIVEViewController.m in Sources */,
  556 + 08E1066E27910A12006DB3F7 /* CNLiveServiceManager.m in Sources */,
442 08FF465A2758CD4B001A767D /* CNLiveCServiceModuleImpl.m in Sources */, 557 08FF465A2758CD4B001A767D /* CNLiveCServiceModuleImpl.m in Sources */,
443 6003F59A195388D20070C39A /* main.m in Sources */, 558 6003F59A195388D20070C39A /* main.m in Sources */,
444 ); 559 );
@@ -463,6 +578,22 @@ @@ -463,6 +578,22 @@
463 /* End PBXTargetDependency section */ 578 /* End PBXTargetDependency section */
464 579
465 /* Begin PBXVariantGroup section */ 580 /* Begin PBXVariantGroup section */
  581 + 08E1066A27910A12006DB3F7 /* LaunchScreen.storyboard */ = {
  582 + isa = PBXVariantGroup;
  583 + children = (
  584 + 08E1066B27910A12006DB3F7 /* Base */,
  585 + );
  586 + name = LaunchScreen.storyboard;
  587 + sourceTree = "<group>";
  588 + };
  589 + 08E1066C27910A12006DB3F7 /* Main.storyboard */ = {
  590 + isa = PBXVariantGroup;
  591 + children = (
  592 + 08E1066D27910A12006DB3F7 /* Base */,
  593 + );
  594 + name = Main.storyboard;
  595 + sourceTree = "<group>";
  596 + };
466 6003F596195388D20070C39A /* InfoPlist.strings */ = { 597 6003F596195388D20070C39A /* InfoPlist.strings */ = {
467 isa = PBXVariantGroup; 598 isa = PBXVariantGroup;
468 children = ( 599 children = (
Example/CNLiveCServiceModule/CNLiveCServiceModuleImpl.m
@@ -7,9 +7,29 @@ @@ -7,9 +7,29 @@
7 // 7 //
8 8
9 #import "CNLiveCServiceModuleImpl.h" 9 #import "CNLiveCServiceModuleImpl.h"
  10 +#import "CNLiveServiceManager.h"
10 11
11 @implementation CNLiveCServiceModuleImpl 12 @implementation CNLiveCServiceModuleImpl
12 - (void)jumpControllerType:(CNCServiceJumpType)type param:(NSDictionary *_Nullable)param controller:(UIViewController *)controller{ 13 - (void)jumpControllerType:(CNCServiceJumpType)type param:(NSDictionary *_Nullable)param controller:(UIViewController *)controller{
13 - 14 + switch (type) {
  15 + case CNCServiceJumpTypeService:{
  16 + [CNLiveServiceManager jumpController:param[@"serviceId"] type:param[@"type"] to:param[@"to"] shopType:param[@"shopType"] controller:controller];
  17 + }
  18 + break;
  19 +
  20 + case CNCServiceJumpTypeWebVC:{
  21 +// [CNLiveSkipActionManager checkWithFunctionForShareURL:param[@"webUrl"]];
  22 + }
  23 + break;
  24 + case CNCServiceJumpTypeGetPage:{
  25 + //通用跳转
  26 +// [CNUniversalSkipHandler skipToVCByModel:[CNAmuseContentModel mj_objectWithKeyValues:param] channelName:@""];
  27 + }
  28 + default:
  29 + {
  30 +
  31 + }
  32 + break;
  33 + }
14 } 34 }
15 @end 35 @end
Example/CNLiveCServiceModule/CNLiveServiceManager.h 0 → 100644
  1 +//
  2 +// CNLiveServiceManager.h
  3 +// CNLiveNetAdd
  4 +//
  5 +// Created by CNLive-zxw on 2020/8/28.
  6 +// Copyright © 2020 cnlive. All rights reserved.
  7 +//
  8 +
  9 +#import <Foundation/Foundation.h>
  10 +
  11 +NS_ASSUME_NONNULL_BEGIN
  12 +
  13 +@interface CNLiveServiceManager : NSObject
  14 +
  15 +/**
  16 + * 服务号跳转
  17 + *
  18 + * @param servingId 服务号id
  19 + * @param type type
  20 + * @param to to
  21 + * @param shopType shopType
  22 + */
  23 ++ (void)jumpController:(NSString *)servingId type:(NSString *)type to:(NSString *)to shopType:(NSString *)shopType controller:(UIViewController *)controller;
  24 +
  25 +@end
  26 +
  27 +NS_ASSUME_NONNULL_END
Example/CNLiveCServiceModule/CNLiveServiceManager.m 0 → 100644
  1 +//
  2 +// CNLiveServiceManager.m
  3 +// CNLiveNetAdd
  4 +//
  5 +// Created by CNLive-zxw on 2020/8/28.
  6 +// Copyright © 2020 cnlive. All rights reserved.
  7 +//
  8 +
  9 +#import "CNLiveServiceManager.h"
  10 +#import <DSCnliveShopSDK/DSCnliveShopSDKProtocolUCM.h>
  11 +#import <DSCnliveShopSDK/DSCnliveShopSDKSkip.h>
  12 +#import <DSCnliveShopSDK/DSCnliveShopSDKManager.h>
  13 +
  14 +@implementation CNLiveServiceManager
  15 ++ (void)jumpController:(NSString *)servingId type:(NSString *)type to:(NSString *)to shopType:(NSString *)shopType controller:(UIViewController *)controller {
  16 + [DSCnliveShopSDKProtocolUCM uMengCheckCallBackType:DSUMengCheckTypeActionMethod subType:DSUMengCheckSLTypeServiceHPClickItem];
  17 +
  18 + if ([type isEqualToString:@"100"]) {//领头雁
  19 + [controller.navigationController.navigationBar setHidden:YES];
  20 + [controller.tabBarController.tabBar setHidden:YES];
  21 +// if (!CNLiveStringIsEmpty(to)) {
  22 +// [BHConfig set:@"url" value:to];
  23 +// }
  24 +
  25 + CATransition *transition = [CATransition animation];
  26 + transition.duration = 0.3f;
  27 + transition.type = kCATransitionPush;
  28 + transition.subtype = kCATransitionFromTop;
  29 + transition.timingFunction = [CAMediaTimingFunction functionWithName: kCAMediaTimingFunctionEaseOut];
  30 +
  31 +// CNLiveLTYTabBarController *vc = [[CNLiveLTYTabBarController alloc]init];
  32 +// vc.hidesBottomBarWhenPushed = YES;
  33 +// [controller.navigationController pushViewController:vc animated:NO];
  34 +// [controller.navigationController.view.layer addAnimation:transition forKey:kCATransition];
  35 +
  36 + return;
  37 + }
  38 + if ([type isEqualToString:@"21"]||[type isEqualToString:@"50"]) {
  39 + [[DSCnliveShopSDKManager sharedManager].skip skipType:type to:servingId shopType:to currentVC:controller];
  40 + return;
  41 + }
  42 + if ([type isEqualToString:@"103"]) {
  43 + NSError *error;
  44 + NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:[to dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingAllowFragments error:&error];
  45 +// if (error||![dic isKindOfClass:[NSDictionary class]]) {
  46 +// [QMUITips showInfo:@"参数错误" inView:AppKeyWindow hideAfterDelay:0.3];
  47 +// return;
  48 +// }
  49 +// [CNLiveShareImageManager pushWeChatMiniProgremWithMiniAppId:dic[@"id"] Path:dic[@"path"] mType:WXMiniProgramTypeRelease extMsg:nil extDic:nil];
  50 + return;
  51 + }
  52 + if ([type isEqualToString:@"104"]) {
  53 + NSError *error;
  54 + NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:[to dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingAllowFragments error:&error];
  55 + NSString *spURL = @"cnlive://swan/";
  56 + spURL = [spURL stringByAppendingString:dic[@"id"]];
  57 +// [CNLiveBBASMModuleService openBBASMModule:spURL];
  58 + return;
  59 + }
  60 + [[DSCnliveShopSDKManager sharedManager].skip skipType:type to:to shopType:shopType currentVC:controller];
  61 +
  62 +}
  63 +
  64 +@end
Example/Podfile
@@ -6,6 +6,7 @@ source &#39;https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git&#39; @@ -6,6 +6,7 @@ source &#39;https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git&#39;
6 source 'http://bj.gitlab.cnlive.com/DSIOSTeam/DSSpecRepos.git' 6 source 'http://bj.gitlab.cnlive.com/DSIOSTeam/DSSpecRepos.git'
7 target 'CNLiveCServiceModule_Example' do 7 target 'CNLiveCServiceModule_Example' do
8 pod 'CNLiveCServiceModule', :path => '../' 8 pod 'CNLiveCServiceModule', :path => '../'
  9 + pod 'DSCnliveShopSDK'
9 10
10 target 'CNLiveCServiceModule_Tests' do 11 target 'CNLiveCServiceModule_Tests' do
11 inherit! :search_paths 12 inherit! :search_paths