Commit 1a9d4271c2179d88b3db5b170f27bc6b1c5eb1da
1 parent
31b90639
no message
Showing
11 changed files
with
68 additions
and
25 deletions
CNLiveGifFace.podspec
| @@ -9,7 +9,7 @@ | @@ -9,7 +9,7 @@ | ||
| 9 | Pod::Spec.new do |s| | 9 | Pod::Spec.new do |s| |
| 10 | s.name = 'CNLiveGifFace' | 10 | s.name = 'CNLiveGifFace' |
| 11 | s.version = '0.0.1' | 11 | s.version = '0.0.1' |
| 12 | - s.summary = 'A short description of CNLiveGifFace.' | 12 | + s.summary = 'GIF表情.' |
| 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. |
| 15 | # * Think: What does it do? Why did you write it? What is the focus? | 15 | # * Think: What does it do? Why did you write it? What is the focus? |
| @@ -48,5 +48,8 @@ TODO: Add long description of the pod here. | @@ -48,5 +48,8 @@ TODO: Add long description of the pod here. | ||
| 48 | s.dependency 'CNLiveCustomUI' | 48 | s.dependency 'CNLiveCustomUI' |
| 49 | s.dependency 'WebViewJavascriptBridge' | 49 | s.dependency 'WebViewJavascriptBridge' |
| 50 | s.dependency 'SSZipArchive' | 50 | s.dependency 'SSZipArchive' |
| 51 | + s.dependency 'CNLiveCommonCategory' | ||
| 52 | + s.dependency 'CNLiveCommonClass' | ||
| 53 | + s.dependency 'IMBaseSDK' | ||
| 51 | 54 | ||
| 52 | end | 55 | end |
CNLiveGifFace/Classes/Controller/CNChatGifDetailsViewController.h
| @@ -8,6 +8,9 @@ | @@ -8,6 +8,9 @@ | ||
| 8 | 8 | ||
| 9 | #import "CNCommonViewController.h" | 9 | #import "CNCommonViewController.h" |
| 10 | #import "CNChatViewController.h" | 10 | #import "CNChatViewController.h" |
| 11 | +#import "TIMAdapter.h" | ||
| 12 | +#import "CommonLibrary.h" | ||
| 13 | + | ||
| 11 | NS_ASSUME_NONNULL_BEGIN | 14 | NS_ASSUME_NONNULL_BEGIN |
| 12 | 15 | ||
| 13 | @interface CNChatGifDetailsViewController : CNCommonViewController | 16 | @interface CNChatGifDetailsViewController : CNCommonViewController |
CNLiveGifFace/Classes/Controller/CNChatGifDetailsViewController.m
| @@ -15,6 +15,11 @@ | @@ -15,6 +15,11 @@ | ||
| 15 | #import "CNMessageForwardingController.h" | 15 | #import "CNMessageForwardingController.h" |
| 16 | #import "CNGifFaceModel.h" | 16 | #import "CNGifFaceModel.h" |
| 17 | 17 | ||
| 18 | +#import "CNLiveDefinesHeader.h" | ||
| 19 | +#import <QMUIKit/QMUIKit.h> | ||
| 20 | +#import <CNLiveRequestBastKit/CNLiveNetworking.h> | ||
| 21 | +#import <YYKit/YYKit.h> | ||
| 22 | + | ||
| 18 | @interface CNChatGifDetailsViewController ()<UIGestureRecognizerDelegate> | 23 | @interface CNChatGifDetailsViewController ()<UIGestureRecognizerDelegate> |
| 19 | @property (nonatomic, strong) YYAnimatedImageView *webImageView; | 24 | @property (nonatomic, strong) YYAnimatedImageView *webImageView; |
| 20 | @property (nonatomic, strong) UILabel *nameLabel; | 25 | @property (nonatomic, strong) UILabel *nameLabel; |
CNLiveGifFace/Classes/Controller/CNGifFaceListViewController.m
| @@ -14,10 +14,13 @@ | @@ -14,10 +14,13 @@ | ||
| 14 | #import "CNLiveDownLoadManager.h" | 14 | #import "CNLiveDownLoadManager.h" |
| 15 | #import "CNLiveArchiveManager.h" | 15 | #import "CNLiveArchiveManager.h" |
| 16 | #import <AFNetworking/AFNetworking.h> | 16 | #import <AFNetworking/AFNetworking.h> |
| 17 | -#import "CNUserAgreementRequst.h" | ||
| 18 | -#import "CNReportAndComplaintWebController.h" | 17 | +//#import "CNUserAgreementRequst.h" |
| 18 | +//#import "CNReportAndComplaintWebController.h" | ||
| 19 | #import "UIColor+CNLiveExtension.h" | 19 | #import "UIColor+CNLiveExtension.h" |
| 20 | -#import "CNNavigationController.h" | 20 | +//#import "CNNavigationController.h" |
| 21 | +#import <QMUIKit/QMUIKit.h> | ||
| 22 | +#import "CNUserInfoManager.h" | ||
| 23 | +#import "CNLiveDefinesHeader.h" | ||
| 21 | 24 | ||
| 22 | @interface CNGifFaceListViewController ()<UITableViewDelegate, UITableViewDataSource, CNGifFaceListTableViewCellDelegate>{ | 25 | @interface CNGifFaceListViewController ()<UITableViewDelegate, UITableViewDataSource, CNGifFaceListTableViewCellDelegate>{ |
| 23 | BOOL _isDownload; | 26 | BOOL _isDownload; |
CNLiveGifFace/Classes/Controller/CNMyGifFaceViewController.m
| @@ -10,7 +10,10 @@ | @@ -10,7 +10,10 @@ | ||
| 10 | #import "CNGifFaceListHeaderView.h" | 10 | #import "CNGifFaceListHeaderView.h" |
| 11 | #import "CNMyGifFaceTableViewCell.h" | 11 | #import "CNMyGifFaceTableViewCell.h" |
| 12 | #import "CNGifFaceModel.h" | 12 | #import "CNGifFaceModel.h" |
| 13 | - | 13 | +#import "Masonry.h" |
| 14 | +#import "MJExtension.h" | ||
| 15 | +#import "CNLiveDefinesHeader.h" | ||
| 16 | +#import "CNUserInfoManager.h" | ||
| 14 | 17 | ||
| 15 | @interface CNMyGifFaceViewController ()<UITableViewDelegate,UITableViewDataSource,CNMyGifFaceTableViewCellDelegate> | 18 | @interface CNMyGifFaceViewController ()<UITableViewDelegate,UITableViewDataSource,CNMyGifFaceTableViewCellDelegate> |
| 16 | @property (nonatomic, strong) UITableView *tableView; | 19 | @property (nonatomic, strong) UITableView *tableView; |
| @@ -145,7 +148,7 @@ | @@ -145,7 +148,7 @@ | ||
| 145 | _data = [[NSMutableArray alloc] init]; | 148 | _data = [[NSMutableArray alloc] init]; |
| 146 | NSFileManager *fileManager = [NSFileManager defaultManager]; | 149 | NSFileManager *fileManager = [NSFileManager defaultManager]; |
| 147 | NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; | 150 | NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; |
| 148 | - NSString *filePath = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/%@",[UserInformationModel manager].uid,@"GifFaceList.plist"]]; | 151 | + NSString *filePath = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/%@",CNUserShareModelUid,@"GifFaceList.plist"]]; |
| 149 | ///var/mobile/Containers/Data/Application/94E0C70B-9F4D-4716-8EAF-7BF0C53AEAEE/Documents/10514405/GifFace/GifFaceList.plist | 152 | ///var/mobile/Containers/Data/Application/94E0C70B-9F4D-4716-8EAF-7BF0C53AEAEE/Documents/10514405/GifFace/GifFaceList.plist |
| 150 | BOOL result = [fileManager fileExistsAtPath:filePath]; | 153 | BOOL result = [fileManager fileExistsAtPath:filePath]; |
| 151 | if(result){ | 154 | if(result){ |
CNLiveGifFace/Classes/Tools/CNGifManager.m
| @@ -7,6 +7,8 @@ | @@ -7,6 +7,8 @@ | ||
| 7 | // | 7 | // |
| 8 | 8 | ||
| 9 | #import "CNGifManager.h" | 9 | #import "CNGifManager.h" |
| 10 | +#import "CNUserInfoManager.h" | ||
| 11 | + | ||
| 10 | #define timeInterval @(600) | 12 | #define timeInterval @(600) |
| 11 | #define tolerance @(0.01) | 13 | #define tolerance @(0.01) |
| 12 | 14 | ||
| @@ -227,7 +229,7 @@ typedef NS_ENUM(NSInteger, GIFSize) { | @@ -227,7 +229,7 @@ typedef NS_ENUM(NSInteger, GIFSize) { | ||
| 227 | + (NSString *)makingGIFforTimePoints:(NSArray *)timePoints fromURL:(NSURL *)url fileProperties:(NSDictionary *)fileProperties frameProperties:(NSDictionary *)frameProperties frameCount:(int)frameCount gifSize:(GIFSize)gifSize needCompression:(BOOL)isNeedCompression compressionWidth:(float)compressionWidth compressionHeight:(float)compressionHeight{ | 229 | + (NSString *)makingGIFforTimePoints:(NSArray *)timePoints fromURL:(NSURL *)url fileProperties:(NSDictionary *)fileProperties frameProperties:(NSDictionary *)frameProperties frameCount:(int)frameCount gifSize:(GIFSize)gifSize needCompression:(BOOL)isNeedCompression compressionWidth:(float)compressionWidth compressionHeight:(float)compressionHeight{ |
| 228 | 230 | ||
| 229 | NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; | 231 | NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; |
| 230 | - NSString *filePath = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/DownLoad/Personal",[UserInformationModel manager].uid]]; | 232 | + NSString *filePath = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/DownLoad/Personal",[CNUserInfoManager manager].userInfoModel.uid]]; |
| 231 | 233 | ||
| 232 | NSFileManager *fileManager = [NSFileManager defaultManager]; | 234 | NSFileManager *fileManager = [NSFileManager defaultManager]; |
| 233 | BOOL result = [fileManager fileExistsAtPath:filePath]; | 235 | BOOL result = [fileManager fileExistsAtPath:filePath]; |
CNLiveGifFace/Classes/View/CNGifFaceListHeaderView.m
| @@ -8,6 +8,7 @@ | @@ -8,6 +8,7 @@ | ||
| 8 | 8 | ||
| 9 | #import "CNGifFaceListHeaderView.h" | 9 | #import "CNGifFaceListHeaderView.h" |
| 10 | #import "UIColor+CNLiveExtension.h" | 10 | #import "UIColor+CNLiveExtension.h" |
| 11 | +#import "CNLiveDefinesHeader.h" | ||
| 11 | 12 | ||
| 12 | @interface CNGifFaceListHeaderView() | 13 | @interface CNGifFaceListHeaderView() |
| 13 | /** 内部的label */ | 14 | /** 内部的label */ |
| @@ -31,12 +32,12 @@ static const NSInteger margin = 10; | @@ -31,12 +32,12 @@ static const NSInteger margin = 10; | ||
| 31 | [self.contentView addSubview:label]; | 32 | [self.contentView addSubview:label]; |
| 32 | self.label = label; | 33 | self.label = label; |
| 33 | 34 | ||
| 34 | - UIView *topLine = [[UIView alloc] initWithFrame:CGRectMake(0, 0, kMainScreenWidth, 0.5)]; | 35 | + UIView *topLine = [[UIView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 0.5)]; |
| 35 | topLine.backgroundColor = CNLiveColorWithHexString(@"EBEBEB"); | 36 | topLine.backgroundColor = CNLiveColorWithHexString(@"EBEBEB"); |
| 36 | [self.contentView addSubview:topLine]; | 37 | [self.contentView addSubview:topLine]; |
| 37 | self.topLine = topLine; | 38 | self.topLine = topLine; |
| 38 | 39 | ||
| 39 | - UIView *bottomLine = [[UIView alloc] initWithFrame:CGRectMake(margin, 45*RATIO-0.5, kMainScreenWidth-margin, 0.5)]; | 40 | + UIView *bottomLine = [[UIView alloc] initWithFrame:CGRectMake(margin, 45*RATIO-0.5, KScreenWidth-margin, 0.5)]; |
| 40 | bottomLine.backgroundColor = CNLiveColorWithHexString(@"EBEBEB"); | 41 | bottomLine.backgroundColor = CNLiveColorWithHexString(@"EBEBEB"); |
| 41 | [self.contentView addSubview:bottomLine]; | 42 | [self.contentView addSubview:bottomLine]; |
| 42 | self.bottomLine = bottomLine; | 43 | self.bottomLine = bottomLine; |
CNLiveGifFace/Classes/View/CNGifFaceListTableViewCell.m
| @@ -10,6 +10,11 @@ | @@ -10,6 +10,11 @@ | ||
| 10 | #import "CNGifFaceModel.h" | 10 | #import "CNGifFaceModel.h" |
| 11 | #import "UIColor+CNLiveExtension.h" | 11 | #import "UIColor+CNLiveExtension.h" |
| 12 | #import <AFNetworking/AFNetworking.h> | 12 | #import <AFNetworking/AFNetworking.h> |
| 13 | +#import "UIImageView+WebCache.h" | ||
| 14 | +#import "Masonry.h" | ||
| 15 | +#import "CNLiveDefinesHeader.h" | ||
| 16 | +#import <QMUIKit/QMUIKit.h> | ||
| 17 | +#import <CNLiveRequestBastKit/CNLiveNetworking.h> | ||
| 13 | 18 | ||
| 14 | @interface CNGifFaceListTableViewCell() | 19 | @interface CNGifFaceListTableViewCell() |
| 15 | @property (nonatomic, strong) UIImageView *leftImage; | 20 | @property (nonatomic, strong) UIImageView *leftImage; |
| @@ -144,15 +149,14 @@ static const NSInteger margin = 10; | @@ -144,15 +149,14 @@ static const NSInteger margin = 10; | ||
| 144 | } | 149 | } |
| 145 | #pragma mark - Action | 150 | #pragma mark - Action |
| 146 | - (void)clickAddBtn:(UIButton *)btn{ | 151 | - (void)clickAddBtn:(UIButton *)btn{ |
| 152 | + if(![CNLiveNetworking isNetworking]){ | ||
| 153 | + [QMUITips showWithText:@"无法连接网络" inView:[UIApplication sharedApplication].delegate.window hideAfterDelay:1]; | ||
| 154 | + return ; | ||
| 155 | + } | ||
| 156 | + | ||
| 147 | _addBtn.hidden = YES; | 157 | _addBtn.hidden = YES; |
| 148 | _processView.hidden = NO; | 158 | _processView.hidden = NO; |
| 149 | 159 | ||
| 150 | - AFNetworkReachabilityManager *manager = [AFNetworkReachabilityManager sharedManager]; | ||
| 151 | - if(manager.networkReachabilityStatus == AFNetworkReachabilityStatusNotReachable || manager.networkReachabilityStatus == AFNetworkReachabilityStatusUnknown){ | ||
| 152 | - [QMUITips showWithText:@"无法连接网络" inView:AppKeyWindow hideAfterDelay:1]; | ||
| 153 | - return; | ||
| 154 | - } | ||
| 155 | - | ||
| 156 | if (self.delegate && [self.delegate respondsToSelector:@selector(clickedAddBtn:)]) { | 160 | if (self.delegate && [self.delegate respondsToSelector:@selector(clickedAddBtn:)]) { |
| 157 | [self.delegate clickedAddBtn:self.model.downloadUrl];//滑动响应实现 | 161 | [self.delegate clickedAddBtn:self.model.downloadUrl];//滑动响应实现 |
| 158 | } | 162 | } |
CNLiveGifFace/Classes/View/CNMyGifFaceTableViewCell.m
| @@ -11,8 +11,13 @@ | @@ -11,8 +11,13 @@ | ||
| 11 | #import "CNGifFaceModel.h" | 11 | #import "CNGifFaceModel.h" |
| 12 | #import "CNLiveDownLoadManager.h" | 12 | #import "CNLiveDownLoadManager.h" |
| 13 | #import "CNLiveArchiveManager.h" | 13 | #import "CNLiveArchiveManager.h" |
| 14 | -//#import "UIColor+CNLiveExtension.h" | 14 | +#import "UIColor+CNLiveExtension.h" |
| 15 | #import "CNFaceThemeModel.h" | 15 | #import "CNFaceThemeModel.h" |
| 16 | +#import "Masonry.h" | ||
| 17 | +#import "MJExtension.h" | ||
| 18 | +#import "CNUserInfoManager.h" | ||
| 19 | +#import "CNLiveDefinesHeader.h" | ||
| 20 | +#import <QMUIKit/QMUIKit.h> | ||
| 16 | 21 | ||
| 17 | @interface CNMyGifFaceTableViewCell() | 22 | @interface CNMyGifFaceTableViewCell() |
| 18 | @property (nonatomic, strong) UIImageView *leftImage; | 23 | @property (nonatomic, strong) UIImageView *leftImage; |
| @@ -37,7 +42,7 @@ static const NSInteger margin = 10; | @@ -37,7 +42,7 @@ static const NSInteger margin = 10; | ||
| 37 | #pragma mark - Data | 42 | #pragma mark - Data |
| 38 | - (void)setGroupName:(NSString *)groupName{ | 43 | - (void)setGroupName:(NSString *)groupName{ |
| 39 | _groupName = groupName; | 44 | _groupName = groupName; |
| 40 | - NSString *path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/Download/%@",[UserInformationModel manager].uid,groupName]]; | 45 | + NSString *path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/Download/%@",CNUserShareModelUid,groupName]]; |
| 41 | 46 | ||
| 42 | //设置图片 | 47 | //设置图片 |
| 43 | NSString *image = [path stringByAppendingPathComponent:[NSString stringWithFormat:@"%@_left0",groupName]]; | 48 | NSString *image = [path stringByAppendingPathComponent:[NSString stringWithFormat:@"%@_left0",groupName]]; |
| @@ -112,11 +117,11 @@ static const NSInteger margin = 10; | @@ -112,11 +117,11 @@ static const NSInteger margin = 10; | ||
| 112 | 117 | ||
| 113 | #pragma mark - Action | 118 | #pragma mark - Action |
| 114 | - (void)clickRemoveBtn:(UIButton *)btn{ | 119 | - (void)clickRemoveBtn:(UIButton *)btn{ |
| 115 | - [QMUITips showLoading:@"移除中..." inView:AppKeyWindow]; | 120 | + [QMUITips showLoading:@"移除中..." inView:[UIApplication sharedApplication].delegate.window]; |
| 116 | 121 | ||
| 117 | //1先删除plist文件 | 122 | //1先删除plist文件 |
| 118 | NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; | 123 | NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; |
| 119 | - NSString *filePath1 = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/%@",[UserInformationModel manager].uid,@"GifFaceList.plist"]]; | 124 | + NSString *filePath1 = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/%@",CNUserShareModelUid,@"GifFaceList.plist"]]; |
| 120 | ///var/mobile/Containers/Data/Application/94E0C70B-9F4D-4716-8EAF-7BF0C53AEAEE/Documents/10514405/GifFace/GifFaceList.plist | 125 | ///var/mobile/Containers/Data/Application/94E0C70B-9F4D-4716-8EAF-7BF0C53AEAEE/Documents/10514405/GifFace/GifFaceList.plist |
| 121 | NSFileManager *fileManager = [NSFileManager defaultManager]; | 126 | NSFileManager *fileManager = [NSFileManager defaultManager]; |
| 122 | BOOL result1 = [fileManager fileExistsAtPath:filePath1]; | 127 | BOOL result1 = [fileManager fileExistsAtPath:filePath1]; |
| @@ -133,7 +138,7 @@ static const NSInteger margin = 10; | @@ -133,7 +138,7 @@ static const NSInteger margin = 10; | ||
| 133 | 138 | ||
| 134 | } | 139 | } |
| 135 | //2然后删除文件夹中的表情包 | 140 | //2然后删除文件夹中的表情包 |
| 136 | - NSString *filePath2 = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/Download/%@",[UserInformationModel manager].uid,_groupName]]; | 141 | + NSString *filePath2 = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/GifFace/Download/%@",CNUserShareModelUid,_groupName]]; |
| 137 | BOOL result2 = [fileManager fileExistsAtPath:filePath2]; | 142 | BOOL result2 = [fileManager fileExistsAtPath:filePath2]; |
| 138 | if(result2){ | 143 | if(result2){ |
| 139 | //读取已存在的表情包列表 | 144 | //读取已存在的表情包列表 |
| @@ -147,7 +152,7 @@ static const NSInteger margin = 10; | @@ -147,7 +152,7 @@ static const NSInteger margin = 10; | ||
| 147 | [self.delegate refreshGifFaceTableView:self]; | 152 | [self.delegate refreshGifFaceTableView:self]; |
| 148 | [[NSNotificationCenter defaultCenter] postNotificationName:@"RemoveGifFacePackageSuccess" object:nil userInfo:@{@"sectionId":_groupName}]; | 153 | [[NSNotificationCenter defaultCenter] postNotificationName:@"RemoveGifFacePackageSuccess" object:nil userInfo:@{@"sectionId":_groupName}]; |
| 149 | } | 154 | } |
| 150 | - [QMUITips hideAllTipsInView:AppKeyWindow]; | 155 | + [QMUITips hideAllTipsInView:[UIApplication sharedApplication].delegate.window]; |
| 151 | // QMUITips *tips = [QMUITips showSucceed:@"移除成功" inView:AppKeyWindow hideAfterDelay:1]; | 156 | // QMUITips *tips = [QMUITips showSucceed:@"移除成功" inView:AppKeyWindow hideAfterDelay:1]; |
| 152 | // tips.backgroundColor = [UIColor colorWithRed:0/255.0 green:0/255.0 blue:0/255.0 alpha:0.6]; | 157 | // tips.backgroundColor = [UIColor colorWithRed:0/255.0 green:0/255.0 blue:0/255.0 alpha:0.6]; |
| 153 | 158 |
Example/CNLiveGifFace.xcodeproj/project.pbxproj
| @@ -207,7 +207,7 @@ | @@ -207,7 +207,7 @@ | ||
| 207 | 6003F586195388D20070C39A /* Sources */, | 207 | 6003F586195388D20070C39A /* Sources */, |
| 208 | 6003F587195388D20070C39A /* Frameworks */, | 208 | 6003F587195388D20070C39A /* Frameworks */, |
| 209 | 6003F588195388D20070C39A /* Resources */, | 209 | 6003F588195388D20070C39A /* Resources */, |
| 210 | - ECAC1BD9552FAE4C176008DA /* [CP] Embed Pods Frameworks */, | 210 | + B29AB0376DAA7DACC0EC6B74 /* [CP] Embed Pods Frameworks */, |
| 211 | ); | 211 | ); |
| 212 | buildRules = ( | 212 | buildRules = ( |
| 213 | ); | 213 | ); |
| @@ -341,7 +341,7 @@ | @@ -341,7 +341,7 @@ | ||
| 341 | 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"; | 341 | 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"; |
| 342 | showEnvVarsInLog = 0; | 342 | showEnvVarsInLog = 0; |
| 343 | }; | 343 | }; |
| 344 | - ECAC1BD9552FAE4C176008DA /* [CP] Embed Pods Frameworks */ = { | 344 | + B29AB0376DAA7DACC0EC6B74 /* [CP] Embed Pods Frameworks */ = { |
| 345 | isa = PBXShellScriptBuildPhase; | 345 | isa = PBXShellScriptBuildPhase; |
| 346 | buildActionMask = 2147483647; | 346 | buildActionMask = 2147483647; |
| 347 | files = ( | 347 | files = ( |
| @@ -349,18 +349,22 @@ | @@ -349,18 +349,22 @@ | ||
| 349 | inputFileListPaths = ( | 349 | inputFileListPaths = ( |
| 350 | ); | 350 | ); |
| 351 | inputPaths = ( | 351 | inputPaths = ( |
| 352 | - "${SRCROOT}/Pods/Target Support Files/Pods-CNLiveGifFace_Example/Pods-CNLiveGifFace_Example-frameworks.sh", | 352 | + "${PODS_ROOT}/Target Support Files/Pods-CNLiveGifFace_Example/Pods-CNLiveGifFace_Example-frameworks.sh", |
| 353 | "${BUILT_PRODUCTS_DIR}/AFNetworking/AFNetworking.framework", | 353 | "${BUILT_PRODUCTS_DIR}/AFNetworking/AFNetworking.framework", |
| 354 | "${BUILT_PRODUCTS_DIR}/CNLiveBaseKit/CNLiveBaseKit.framework", | 354 | "${BUILT_PRODUCTS_DIR}/CNLiveBaseKit/CNLiveBaseKit.framework", |
| 355 | + "${BUILT_PRODUCTS_DIR}/CNLiveCommonCategory/CNLiveCommonCategory.framework", | ||
| 355 | "${BUILT_PRODUCTS_DIR}/CNLiveCommonClass/CNLiveCommonClass.framework", | 356 | "${BUILT_PRODUCTS_DIR}/CNLiveCommonClass/CNLiveCommonClass.framework", |
| 356 | "${BUILT_PRODUCTS_DIR}/CNLiveCustomUI/CNLiveCustomUI.framework", | 357 | "${BUILT_PRODUCTS_DIR}/CNLiveCustomUI/CNLiveCustomUI.framework", |
| 357 | "${BUILT_PRODUCTS_DIR}/CNLiveGifFace/CNLiveGifFace.framework", | 358 | "${BUILT_PRODUCTS_DIR}/CNLiveGifFace/CNLiveGifFace.framework", |
| 358 | "${BUILT_PRODUCTS_DIR}/CNLiveRequestBastKit/CNLiveRequestBastKit.framework", | 359 | "${BUILT_PRODUCTS_DIR}/CNLiveRequestBastKit/CNLiveRequestBastKit.framework", |
| 359 | "${BUILT_PRODUCTS_DIR}/CNLiveUserManagement/CNLiveUserManagement.framework", | 360 | "${BUILT_PRODUCTS_DIR}/CNLiveUserManagement/CNLiveUserManagement.framework", |
| 361 | + "${BUILT_PRODUCTS_DIR}/FLAnimatedImage/FLAnimatedImage.framework", | ||
| 362 | + "${BUILT_PRODUCTS_DIR}/IMBaseSDK/IMBaseSDK.framework", | ||
| 360 | "${BUILT_PRODUCTS_DIR}/MJExtension/MJExtension.framework", | 363 | "${BUILT_PRODUCTS_DIR}/MJExtension/MJExtension.framework", |
| 361 | "${BUILT_PRODUCTS_DIR}/MJRefresh/MJRefresh.framework", | 364 | "${BUILT_PRODUCTS_DIR}/MJRefresh/MJRefresh.framework", |
| 362 | "${BUILT_PRODUCTS_DIR}/Masonry/Masonry.framework", | 365 | "${BUILT_PRODUCTS_DIR}/Masonry/Masonry.framework", |
| 363 | "${BUILT_PRODUCTS_DIR}/QMUIKit/QMUIKit.framework", | 366 | "${BUILT_PRODUCTS_DIR}/QMUIKit/QMUIKit.framework", |
| 367 | + "${BUILT_PRODUCTS_DIR}/Realm/Realm.framework", | ||
| 364 | "${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework", | 368 | "${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework", |
| 365 | "${BUILT_PRODUCTS_DIR}/SSZipArchive/SSZipArchive.framework", | 369 | "${BUILT_PRODUCTS_DIR}/SSZipArchive/SSZipArchive.framework", |
| 366 | "${BUILT_PRODUCTS_DIR}/WebViewJavascriptBridge/WebViewJavascriptBridge.framework", | 370 | "${BUILT_PRODUCTS_DIR}/WebViewJavascriptBridge/WebViewJavascriptBridge.framework", |
| @@ -372,15 +376,19 @@ | @@ -372,15 +376,19 @@ | ||
| 372 | outputPaths = ( | 376 | outputPaths = ( |
| 373 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AFNetworking.framework", | 377 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AFNetworking.framework", |
| 374 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveBaseKit.framework", | 378 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveBaseKit.framework", |
| 379 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveCommonCategory.framework", | ||
| 375 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveCommonClass.framework", | 380 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveCommonClass.framework", |
| 376 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveCustomUI.framework", | 381 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveCustomUI.framework", |
| 377 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveGifFace.framework", | 382 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveGifFace.framework", |
| 378 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveRequestBastKit.framework", | 383 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveRequestBastKit.framework", |
| 379 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveUserManagement.framework", | 384 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CNLiveUserManagement.framework", |
| 385 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FLAnimatedImage.framework", | ||
| 386 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/IMBaseSDK.framework", | ||
| 380 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJExtension.framework", | 387 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJExtension.framework", |
| 381 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJRefresh.framework", | 388 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MJRefresh.framework", |
| 382 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Masonry.framework", | 389 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Masonry.framework", |
| 383 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/QMUIKit.framework", | 390 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/QMUIKit.framework", |
| 391 | + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Realm.framework", | ||
| 384 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework", | 392 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework", |
| 385 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SSZipArchive.framework", | 393 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SSZipArchive.framework", |
| 386 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/WebViewJavascriptBridge.framework", | 394 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/WebViewJavascriptBridge.framework", |
| @@ -388,7 +396,7 @@ | @@ -388,7 +396,7 @@ | ||
| 388 | ); | 396 | ); |
| 389 | runOnlyForDeploymentPostprocessing = 0; | 397 | runOnlyForDeploymentPostprocessing = 0; |
| 390 | shellPath = /bin/sh; | 398 | shellPath = /bin/sh; |
| 391 | - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-CNLiveGifFace_Example/Pods-CNLiveGifFace_Example-frameworks.sh\"\n"; | 399 | + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-CNLiveGifFace_Example/Pods-CNLiveGifFace_Example-frameworks.sh\"\n"; |
| 392 | showEnvVarsInLog = 0; | 400 | showEnvVarsInLog = 0; |
| 393 | }; | 401 | }; |
| 394 | /* End PBXShellScriptBuildPhase section */ | 402 | /* End PBXShellScriptBuildPhase section */ |
| @@ -528,6 +536,7 @@ | @@ -528,6 +536,7 @@ | ||
| 528 | baseConfigurationReference = 2051FF30CDCC583E98B8C708 /* Pods-CNLiveGifFace_Example.debug.xcconfig */; | 536 | baseConfigurationReference = 2051FF30CDCC583E98B8C708 /* Pods-CNLiveGifFace_Example.debug.xcconfig */; |
| 529 | buildSettings = { | 537 | buildSettings = { |
| 530 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | 538 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
| 539 | + CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = NO; | ||
| 531 | DEVELOPMENT_TEAM = 94X49GG3ZW; | 540 | DEVELOPMENT_TEAM = 94X49GG3ZW; |
| 532 | GCC_PRECOMPILE_PREFIX_HEADER = YES; | 541 | GCC_PRECOMPILE_PREFIX_HEADER = YES; |
| 533 | GCC_PREFIX_HEADER = "CNLiveGifFace/CNLiveGifFace-Prefix.pch"; | 542 | GCC_PREFIX_HEADER = "CNLiveGifFace/CNLiveGifFace-Prefix.pch"; |
| @@ -544,6 +553,7 @@ | @@ -544,6 +553,7 @@ | ||
| 544 | baseConfigurationReference = E069E0E0388F846BD9FDC4C8 /* Pods-CNLiveGifFace_Example.release.xcconfig */; | 553 | baseConfigurationReference = E069E0E0388F846BD9FDC4C8 /* Pods-CNLiveGifFace_Example.release.xcconfig */; |
| 545 | buildSettings = { | 554 | buildSettings = { |
| 546 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | 555 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
| 556 | + CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = NO; | ||
| 547 | DEVELOPMENT_TEAM = 94X49GG3ZW; | 557 | DEVELOPMENT_TEAM = 94X49GG3ZW; |
| 548 | GCC_PRECOMPILE_PREFIX_HEADER = YES; | 558 | GCC_PRECOMPILE_PREFIX_HEADER = YES; |
| 549 | GCC_PREFIX_HEADER = "CNLiveGifFace/CNLiveGifFace-Prefix.pch"; | 559 | GCC_PREFIX_HEADER = "CNLiveGifFace/CNLiveGifFace-Prefix.pch"; |
Example/Podfile
| @@ -13,3 +13,7 @@ target 'CNLiveGifFace_Example' do | @@ -13,3 +13,7 @@ target 'CNLiveGifFace_Example' do | ||
| 13 | 13 | ||
| 14 | end | 14 | end |
| 15 | end | 15 | end |
| 16 | +pre_install do |installer| | ||
| 17 | + # workaround for https://github.com/CocoaPods/CocoaPods/issues/3289 | ||
| 18 | + Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {} | ||
| 19 | +end |