Commit f9ede31b4042a3c34b32cf9a789a2330ddd5c8f7
1 parent
f6d00428
首页导航返回闪动,错误页按钮无法点击
Showing
10 changed files
with
265 additions
and
23 deletions
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 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git' | @@ -6,6 +6,7 @@ source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git' | ||
| 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 |