Commit b14c0f688efc1096be92a58751819a3414bfb3b8

Authored by zhangxiaowen
1 parent 9a2dc311

no message

CNLivePreloadResources.podspec
... ... @@ -41,4 +41,5 @@ TODO: Add long description of the pod here.
41 41 # s.public_header_files = 'Pod/Classes/**/*.h'
42 42 # s.frameworks = 'UIKit', 'MapKit'
43 43 # s.dependency 'AFNetworking', '~> 2.3'
  44 +
44 45 end
... ...
CNLivePreloadResources/Classes/CNLivePreloadManager.h
... ... @@ -12,6 +12,16 @@
12 12 NS_ASSUME_NONNULL_BEGIN
13 13  
14 14 @interface CNLivePreloadManager : NSObject
  15 +/**
  16 + * 预加载资源
  17 + *
  18 + * @param preloadId 加载标识
  19 + * @param type 资源类型
  20 + * @param imageNames 资源名字数组
  21 + *
  22 + * @return 模型
  23 + */
  24 ++ (CNLivePreloadModel *)preloadModelForPreloadId:(NSString *)preloadId type:(CNLiveResourceType)type imageNames:(NSArray<NSString *> *)imageNames;
15 25  
16 26 #pragma mark - 针对具体业务
17 27 /**
... ... @@ -25,7 +35,6 @@ NS_ASSUME_NONNULL_BEGIN
25 35 * 预加载
26 36 */
27 37 + (CNLivePreloadModel *)preloadModelForType:(CNLivePreloadType)type;
28   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForType:(CNLivePreloadType)type;
29 38 + (NSArray<UIImage *> *)preloadImagesForType:(CNLivePreloadType)type;
30 39  
31 40  
... ... @@ -33,7 +42,6 @@ NS_ASSUME_NONNULL_BEGIN
33 42 * 预加载刷新图片
34 43 */
35 44 + (CNLivePreloadModel *)preloadModelForRefreshImage;
36   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForRefreshImage;
37 45 + (NSArray<UIImage *> *)preloadImagesForRefreshImage;
38 46  
39 47  
... ... @@ -41,7 +49,6 @@ NS_ASSUME_NONNULL_BEGIN
41 49 * 预加载Gif表情封面
42 50 */
43 51 + (CNLivePreloadModel *)preloadModelForGifCover;
44   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForGifCover;
45 52 + (NSArray<UIImage *> *)preloadImagesForGifCover;
46 53  
47 54  
... ... @@ -49,7 +56,6 @@ NS_ASSUME_NONNULL_BEGIN
49 56 * 预加载Emotion表情
50 57 */
51 58 + (CNLivePreloadModel *)preloadModelForEmotion;
52   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForEmotion;
53 59 + (NSArray<UIImage *> *)preloadImagesForEmotion;
54 60  
55 61  
... ...
CNLivePreloadResources/Classes/CNLivePreloadManager.m
... ... @@ -58,30 +58,6 @@ static NSMutableDictionary *resources;
58 58 return nil;
59 59  
60 60 }
61   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForType:(CNLivePreloadType)type{
62   - switch (type) {
63   - case CNLivePreloadRefreshImage:// 刷新图片
64   - {
65   - [self preloadModelsForRefreshImage];
66   - }
67   - break;
68   -
69   - case CNLivePreloadGifCover:// Gif封面图片
70   - {
71   - [self preloadModelsForGifCover];
72   - }
73   - break;
74   -
75   - case CNLivePreloadEmotion:// Emotion表情
76   - {
77   - [self preloadModelsForEmotion];
78   - }
79   - break;
80   -
81   - }
82   - return nil;
83   -
84   -}
85 61 + (NSArray<UIImage *> *)preloadImagesForType:(CNLivePreloadType)type{
86 62 switch (type) {
87 63 case CNLivePreloadRefreshImage:// 刷新图片
... ... @@ -121,11 +97,6 @@ static NSMutableDictionary *resources;
121 97 return model;
122 98  
123 99 }
124   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForRefreshImage{
125   - CNLivePreloadModel *model = [CNLivePreloadManager preloadModelForRefreshImage];
126   - return model.models;
127   -
128   -}
129 100 + (NSArray<UIImage *> *)preloadImagesForRefreshImage{
130 101 CNLivePreloadModel *model = [CNLivePreloadManager preloadModelForRefreshImage];
131 102 return model.images;
... ... @@ -146,11 +117,6 @@ static NSMutableDictionary *resources;
146 117 return model;
147 118  
148 119 }
149   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForGifCover{
150   - CNLivePreloadModel *model = [CNLivePreloadManager preloadModelForGifCover];
151   - return model.models;
152   -
153   -}
154 120 + (NSArray<UIImage *> *)preloadImagesForGifCover{
155 121 CNLivePreloadModel *model = [CNLivePreloadManager preloadModelForGifCover];
156 122 return model.images;
... ... @@ -173,18 +139,12 @@ static NSMutableDictionary *resources;
173 139 return model;
174 140  
175 141 }
176   -+ (NSArray<CNLiveResourceModel *> *)preloadModelsForEmotion{
177   - CNLivePreloadModel *model = [CNLivePreloadManager preloadModelForEmotion];
178   - return model.models;
179   -
180   -}
181 142 + (NSArray<UIImage *> *)preloadImagesForEmotion{
182 143 CNLivePreloadModel *model = [CNLivePreloadManager preloadModelForEmotion];
183 144 return model.images;
184 145  
185 146 }
186 147  
187   -#pragma mark - 私有方法
188 148 /**
189 149 * 预加载资源
190 150 *
... ... @@ -235,6 +195,7 @@ static NSMutableDictionary *resources;
235 195 return model;
236 196 }
237 197  
  198 +#pragma mark - 私有方法
238 199 /**
239 200 * 在子线程预加载
240 201 *
... ...
CNLivePreloadResources/Classes/CNLivePreloadModel.m
... ... @@ -11,12 +11,10 @@
11 11 @implementation CNLivePreloadModel
12 12  
13 13  
14   -
15 14 @end
16 15  
17 16  
18 17 @implementation CNLiveResourceModel
19 18  
20 19  
21   -
22 20 @end
... ...
Example/CNLivePreloadResources/CNLiveAppDelegate.m
... ... @@ -14,8 +14,7 @@
14 14 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
15 15 {
16 16 // Override point for customization after application launch.
17   -// [CNLivePreloadManager preloadAllResources];
18   - [CNLivePreloadManager preloadModelForRefreshImage];
  17 + [CNLivePreloadManager preloadAllResources];
19 18 return YES;
20 19 }
21 20  
... ...
Example/CNLivePreloadResources/CNLiveViewController.m
... ... @@ -30,18 +30,13 @@
30 30  
31 31 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(6.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
32 32 NSArray *add1 = [CNLivePreloadManager preloadImagesForRefreshImage];
33   -// NSMutableArray *images = [[NSMutableArray alloc] init];
34   -// for(CNLivePreloadModel *model in add){
35   -// [images addObject:model.image];
36   -// }
37   -//
38 33 image1.animationImages = add1;//将序列帧数组赋给UIImageView的animationImages属性
39 34 image1.animationDuration = 1.0;//设置动画时间
40 35 image1.animationRepeatCount = 0;//设置动画次数 0 表示无限
41 36 [image1 startAnimating];//开始播放动
42 37  
43   -// NSArray *add2 = [CNLivePreloadManager preloadImagesForEmotion];
44   -// image2.image = add2[2];
  38 + NSArray *add2 = [CNLivePreloadManager preloadImagesForEmotion];
  39 + image2.image = add2[2];
45 40 });
46 41 }
47 42  
... ...