Skip to content

Commit ade098a

Browse files
committed
Update to the adopt the latest 5.x branch code
1 parent 3bf1000 commit ade098a

File tree

7 files changed

+62
-43
lines changed

7 files changed

+62
-43
lines changed

Example/Podfile.lock

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
11
PODS:
2-
- SDWebImage/Core (4.3.3)
2+
- SDWebImage/Core (5.0.0-beta)
33
- SDWebImageYYPlugin (0.1.0):
4-
- SDWebImage/Core
4+
- SDWebImage/Core (>= 5.0.0-beta)
55
- SDWebImageYYPlugin/YYCache (= 0.1.0)
66
- SDWebImageYYPlugin/YYImage (= 0.1.0)
77
- SDWebImageYYPlugin/YYCache (0.1.0):
8-
- SDWebImage/Core
8+
- SDWebImage/Core (>= 5.0.0-beta)
99
- YYCache
1010
- SDWebImageYYPlugin/YYImage (0.1.0):
11-
- SDWebImage/Core
12-
- YYImage
11+
- SDWebImage/Core (>= 5.0.0-beta)
12+
- YYImage/Core
1313
- YYCache (1.0.4)
14-
- YYImage (1.0.4):
15-
- YYImage/Core (= 1.0.4)
1614
- YYImage/Core (1.0.4)
1715

1816
DEPENDENCIES:
@@ -28,12 +26,12 @@ EXTERNAL SOURCES:
2826

2927
CHECKOUT OPTIONS:
3028
SDWebImage:
31-
:commit: ebfe2cedc21adad88e41e7c2d2b8b10a5cf0ff2e
29+
:commit: fe2fede60f9c6efcadfac8b90e8cae579656fffb
3230
:git: [email protected]:rs/SDWebImage.git
3331

3432
SPEC CHECKSUMS:
35-
SDWebImage: c16d644f1f195cec9e630cbc25acaaabab25d1b0
36-
SDWebImageYYPlugin: 66a53161fd3dbec98f51f5c542b23600a1f31e9a
33+
SDWebImage: 55c787b164fabe07f2a4d5307f6e1be7960fb9be
34+
SDWebImageYYPlugin: 3941a3f01e054bf6c6c64b5e14fb3ec1822fa994
3735
YYCache: 8105b6638f5e849296c71f331ff83891a4942952
3836
YYImage: 1e1b62a9997399593e4b9c4ecfbbabbf1d3f3b54
3937

Example/SDWebImageYYPlugin/SDViewController.m

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,23 +8,34 @@
88

99
#import "SDViewController.h"
1010
#import <SDWebImageYYPlugin/SDWebImageYYPlugin.h>
11+
#import <YYImage/YYImage.h>
1112

1213
@interface SDViewController ()
1314

15+
@property (nonatomic, strong) YYAnimatedImageView *imageView;
16+
1417
@end
1518

1619
@implementation SDViewController
1720

1821
- (void)viewDidLoad
1922
{
2023
[super viewDidLoad];
21-
// Do any additional setup after loading the view, typically from a nib.
24+
[self.view addSubview:self.imageView];
25+
26+
NSURL *url = [NSURL URLWithString:@"http://apng.onevcat.com/assets/elephant.png"];
27+
[self.imageView sd_setImageWithURL:url completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
28+
NSLog(@"%@", error);
29+
}];
2230
}
2331

24-
- (void)didReceiveMemoryWarning
25-
{
26-
[super didReceiveMemoryWarning];
27-
// Dispose of any resources that can be recreated.
32+
- (YYAnimatedImageView *)imageView {
33+
if (!_imageView) {
34+
_imageView = [[YYAnimatedImageView alloc] initWithFrame:self.view.bounds];
35+
_imageView.contentMode = UIViewContentModeScaleAspectFit;
36+
_imageView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleBottomMargin;
37+
}
38+
return _imageView;
2839
}
2940

3041
@end

Example/SDWebImageYYPlugin/SDWebImageYYPlugin-Info.plist

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@
2424
<string>1.0</string>
2525
<key>LSRequiresIPhoneOS</key>
2626
<true/>
27+
<key>NSAppTransportSecurity</key>
28+
<dict>
29+
<key>NSAllowsArbitraryLoads</key>
30+
<true/>
31+
</dict>
2732
<key>UILaunchStoryboardName</key>
2833
<string>LaunchScreen</string>
2934
<key>UIMainStoryboardFile</key>

SDWebImageYYPlugin.podspec

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,28 +21,27 @@ Pod::Spec.new do |s|
2121
TODO: Add long description of the pod here.
2222
DESC
2323

24-
s.homepage = 'https://github.com/DreamPiggy/SDWebImageYYPlugin'
24+
s.homepage = 'https://github.com/SDWebImage/SDWebImageYYPlugin'
2525
# s.screenshots = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
2626
s.license = { :type => 'MIT', :file => 'LICENSE' }
2727
s.author = { 'DreamPiggy' => '[email protected]' }
28-
s.source = { :git => 'https://github.com/DreamPiggy/SDWebImageYYPlugin.git', :tag => s.version.to_s }
28+
s.source = { :git => 'https://github.com/SDWebImage/SDWebImageYYPlugin.git', :tag => s.version.to_s }
2929
# s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'
3030

3131
s.ios.deployment_target = '8.0'
32-
s.tvos.deployment_target = '9.0'
3332

3433
s.source_files = 'SDWebImageYYPlugin/Module/SDWebImageYYPlugin.h'
3534
s.module_map = 'SDWebImageYYPlugin/Module/SDWebImageYYPlugin.modulemap'
3635

37-
s.dependency 'SDWebImage/Core'
36+
s.dependency 'SDWebImage/Core', '>= 5.0.0-beta'
3837

3938
s.subspec 'YYCache' do |ss|
4039
ss.dependency 'YYCache'
4140
ss.source_files = 'SDWebImageYYPlugin/Classes/YYCache/**/*'
4241
end
4342

4443
s.subspec 'YYImage' do |ss|
45-
ss.dependency 'YYImage'
44+
ss.dependency 'YYImage/Core'
4645
ss.source_files = 'SDWebImageYYPlugin/Classes/YYImage/**/*'
4746
end
4847
end

SDWebImageYYPlugin/Classes/YYCache/YYCacheBridge/YYCache+SDAddtions.m

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -28,25 +28,38 @@
2828

2929
@implementation YYCache (SDAddtions)
3030

31-
- (id<SDWebImageOperation>)queryImageForKey:(NSString *)key options:(SDWebImageOptions)options context:(SDWebImageContext *)context completion:(SDImageCacheQueryCompletionBlock)completionBlock {
31+
- (id<SDWebImageOperation>)queryImageForKey:(NSString *)key options:(SDWebImageOptions)options context:(SDWebImageContext *)context completion:(SDImageCacheQueryCompletionBlock)doneBlock {
3232
if (!key) {
33-
if (completionBlock) {
34-
completionBlock(nil, nil, SDImageCacheTypeNone);
33+
if (doneBlock) {
34+
doneBlock(nil, nil, SDImageCacheTypeNone);
3535
}
3636
return nil;
3737
}
3838

39+
if ([context valueForKey:SDWebImageContextImageTransformer]) {
40+
// grab the transformed disk image if transformer provided
41+
id<SDImageTransformer> transformer = [context valueForKey:SDWebImageContextImageTransformer];
42+
NSString *transformerKey = [transformer transformerKey];
43+
key = SDTransformedKeyForKey(key, transformerKey);
44+
}
45+
3946
// First check the in-memory cache...
4047
UIImage *image = [self.memoryCache objectForKey:key];
41-
BOOL shouldQueryMemoryOnly = ([image isKindOfClass:[UIImage class]] && !(options & SDImageCacheQueryDataWhenInMemory));
48+
BOOL shouldQueryMemoryOnly = (image && !(options & SDImageCacheQueryMemoryData));
4249
if (shouldQueryMemoryOnly) {
43-
if (completionBlock) {
44-
completionBlock(image, nil, SDImageCacheTypeMemory);
50+
if (doneBlock) {
51+
doneBlock(image, nil, SDImageCacheTypeMemory);
4552
}
4653
return nil;
4754
}
4855

56+
// Second check the disk cache...
4957
NSOperation *operation = [NSOperation new];
58+
// Check whether we need to synchronously query disk
59+
// 1. in-memory cache hit & memoryDataSync
60+
// 2. in-memory cache miss & diskDataSync
61+
BOOL shouldQueryDiskSync = ((image && options & SDImageCacheQueryMemoryDataSync) ||
62+
(!image && options & SDImageCacheQueryDiskDataSync));
5063
void(^queryDiskBlock)(NSData *) = ^(NSData *diskData){
5164
if (operation.isCancelled) {
5265
// do not call the completion if cancelled
@@ -57,17 +70,10 @@ @implementation YYCache (SDAddtions)
5770
UIImage *diskImage;
5871
SDImageCacheType cacheType = SDImageCacheTypeDisk;
5972
if (image) {
60-
// the image is from in-memory cache
73+
// the image is from in-memory cache, but need image data
6174
diskImage = image;
6275
cacheType = SDImageCacheTypeMemory;
6376
} else if (diskData) {
64-
NSString *cacheKey = key;
65-
if ([context valueForKey:SDWebImageContextImageTransformer]) {
66-
// grab the transformed disk image if transformer provided
67-
id<SDImageTransformer> transformer = [context valueForKey:SDWebImageContextImageTransformer];
68-
NSString *transformerKey = [transformer transformerKey];
69-
cacheKey = SDTransformedKeyForKey(key, transformerKey);
70-
}
7177
// decode image data only if in-memory cache missed
7278
diskImage = SDImageCacheDecodeImageData(diskData, key, options, context);
7379
if (diskImage) {
@@ -76,19 +82,19 @@ @implementation YYCache (SDAddtions)
7682
}
7783
}
7884

79-
if (completionBlock) {
80-
if (options & SDImageCacheQueryDiskSync) {
81-
completionBlock(diskImage, diskData, cacheType);
85+
if (doneBlock) {
86+
if (shouldQueryDiskSync) {
87+
doneBlock(diskImage, diskData, cacheType);
8288
} else {
8389
dispatch_async(dispatch_get_main_queue(), ^{
84-
completionBlock(diskImage, diskData, cacheType);
90+
doneBlock(diskImage, diskData, cacheType);
8591
});
8692
}
8793
}
8894
}
8995
};
9096

91-
if (options & SDImageCacheQueryDiskSync) {
97+
if (shouldQueryDiskSync) {
9298
NSData *diskData = [self.diskCache dataForKey:key];
9399
queryDiskBlock(diskData);
94100
} else {

SDWebImageYYPlugin/Classes/YYImage/YYImageBridge/YYAnimatedImageView+WebCache.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@
114114
- (void)sd_setImageWithURL:(nullable NSURL *)url
115115
placeholderImage:(nullable UIImage *)placeholder
116116
options:(SDWebImageOptions)options
117-
progress:(nullable SDWebImageDownloaderProgressBlock)progressBlock
117+
progress:(nullable SDImageLoaderProgressBlock)progressBlock
118118
completed:(nullable SDExternalCompletionBlock)completedBlock;
119119

120120
/**
@@ -138,7 +138,7 @@
138138
placeholderImage:(nullable UIImage *)placeholder
139139
options:(SDWebImageOptions)options
140140
context:(nullable SDWebImageContext *)context
141-
progress:(nullable SDWebImageDownloaderProgressBlock)progressBlock
141+
progress:(nullable SDImageLoaderProgressBlock)progressBlock
142142
completed:(nullable SDExternalCompletionBlock)completedBlock;
143143

144144
@end

SDWebImageYYPlugin/Classes/YYImage/YYImageBridge/YYAnimatedImageView+WebCache.m

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,15 @@ - (void)sd_setImageWithURL:(nullable NSURL *)url placeholderImage:(nullable UIIm
3535
[self sd_setImageWithURL:url placeholderImage:placeholder options:options progress:nil completed:completedBlock];
3636
}
3737

38-
- (void)sd_setImageWithURL:(nullable NSURL *)url placeholderImage:(nullable UIImage *)placeholder options:(SDWebImageOptions)options progress:(nullable SDWebImageDownloaderProgressBlock)progressBlock completed:(nullable SDExternalCompletionBlock)completedBlock {
38+
- (void)sd_setImageWithURL:(nullable NSURL *)url placeholderImage:(nullable UIImage *)placeholder options:(SDWebImageOptions)options progress:(nullable SDImageLoaderProgressBlock)progressBlock completed:(nullable SDExternalCompletionBlock)completedBlock {
3939
[self sd_setImageWithURL:url placeholderImage:placeholder options:options context:nil progress:progressBlock completed:completedBlock];
4040
}
4141

4242
- (void)sd_setImageWithURL:(nullable NSURL *)url
4343
placeholderImage:(nullable UIImage *)placeholder
4444
options:(SDWebImageOptions)options
4545
context:(nullable SDWebImageContext *)context
46-
progress:(nullable SDWebImageDownloaderProgressBlock)progressBlock
46+
progress:(nullable SDImageLoaderProgressBlock)progressBlock
4747
completed:(nullable SDExternalCompletionBlock)completedBlock {
4848
Class animatedImageClass = [YYImage class];
4949
SDWebImageMutableContext *mutableContext;

0 commit comments

Comments
 (0)