Authored by Olivier Poitrey

Rework static library settings and documentation and add an example project

Inspired by http://www.blog.montgomerie.net/easy-xcode-static-library-subprojects-and-submodules
  1 +// !$*UTF8*$!
  2 +{
  3 + archiveVersion = 1;
  4 + classes = {
  5 + };
  6 + objectVersion = 46;
  7 + objects = {
  8 +
  9 +/* Begin PBXBuildFile section */
  10 + 5376129A155AB74D005750A4 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53761299155AB74D005750A4 /* UIKit.framework */; };
  11 + 5376129C155AB74D005750A4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5376129B155AB74D005750A4 /* Foundation.framework */; };
  12 + 5376129E155AB74D005750A4 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5376129D155AB74D005750A4 /* CoreGraphics.framework */; };
  13 + 537612A6155AB74D005750A4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 537612A5155AB74D005750A4 /* main.m */; };
  14 + 537612AA155AB74D005750A4 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 537612A9155AB74D005750A4 /* AppDelegate.m */; };
  15 + 537612AD155AB74D005750A4 /* MasterViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 537612AC155AB74D005750A4 /* MasterViewController.m */; };
  16 + 537612B0155AB74D005750A4 /* DetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 537612AF155AB74D005750A4 /* DetailViewController.m */; };
  17 + 537612B3155AB74D005750A4 /* MasterViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 537612B1155AB74D005750A4 /* MasterViewController.xib */; };
  18 + 537612B6155AB74D005750A4 /* DetailViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 537612B4155AB74D005750A4 /* DetailViewController.xib */; };
  19 + 537612E7155ABA44005750A4 /* ImageIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 537612E6155ABA44005750A4 /* ImageIO.framework */; };
  20 + 53761328155AD31B005750A4 /* MapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 537612E3155ABA3C005750A4 /* MapKit.framework */; };
  21 + 53A2B4FC155B096D00B12423 /* libSDWebImage ARC.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 53A2B4F9155B095800B12423 /* libSDWebImage ARC.a */; };
  22 + 53A2B50D155B155A00B12423 /* placeholder.png in Resources */ = {isa = PBXBuildFile; fileRef = 53A2B50B155B155A00B12423 /* placeholder.png */; };
  23 + 53A2B50E155B155A00B12423 /* placeholder@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 53A2B50C155B155A00B12423 /* placeholder@2x.png */; };
  24 +/* End PBXBuildFile section */
  25 +
  26 +/* Begin PBXContainerItemProxy section */
  27 + 53A2B4F6155B095800B12423 /* PBXContainerItemProxy */ = {
  28 + isa = PBXContainerItemProxy;
  29 + containerPortal = 53A2B4EE155B095800B12423 /* SDWebImage.xcodeproj */;
  30 + proxyType = 2;
  31 + remoteGlobalIDString = 53922D6F148C55820056699D;
  32 + remoteInfo = SDWebImage;
  33 + };
  34 + 53A2B4F8155B095800B12423 /* PBXContainerItemProxy */ = {
  35 + isa = PBXContainerItemProxy;
  36 + containerPortal = 53A2B4EE155B095800B12423 /* SDWebImage.xcodeproj */;
  37 + proxyType = 2;
  38 + remoteGlobalIDString = 53761325155AD0D5005750A4;
  39 + remoteInfo = "SDWebImage ARC";
  40 + };
  41 + 53A2B4FA155B096700B12423 /* PBXContainerItemProxy */ = {
  42 + isa = PBXContainerItemProxy;
  43 + containerPortal = 53A2B4EE155B095800B12423 /* SDWebImage.xcodeproj */;
  44 + proxyType = 1;
  45 + remoteGlobalIDString = 53761307155AD0D5005750A4;
  46 + remoteInfo = "SDWebImage ARC";
  47 + };
  48 +/* End PBXContainerItemProxy section */
  49 +
  50 +/* Begin PBXFileReference section */
  51 + 53761295155AB74D005750A4 /* SDWebImage Demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SDWebImage Demo.app"; sourceTree = BUILT_PRODUCTS_DIR; };
  52 + 53761299155AB74D005750A4 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
  53 + 5376129B155AB74D005750A4 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
  54 + 5376129D155AB74D005750A4 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
  55 + 537612A1155AB74D005750A4 /* SDWebImage Demo-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "SDWebImage Demo-Info.plist"; sourceTree = "<group>"; };
  56 + 537612A5155AB74D005750A4 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
  57 + 537612A7155AB74D005750A4 /* SDWebImage Demo-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "SDWebImage Demo-Prefix.pch"; sourceTree = "<group>"; };
  58 + 537612A8155AB74D005750A4 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
  59 + 537612A9155AB74D005750A4 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
  60 + 537612AB155AB74D005750A4 /* MasterViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MasterViewController.h; sourceTree = "<group>"; };
  61 + 537612AC155AB74D005750A4 /* MasterViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MasterViewController.m; sourceTree = "<group>"; };
  62 + 537612AE155AB74D005750A4 /* DetailViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DetailViewController.h; sourceTree = "<group>"; };
  63 + 537612AF155AB74D005750A4 /* DetailViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DetailViewController.m; sourceTree = "<group>"; };
  64 + 537612B2155AB74D005750A4 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MasterViewController.xib; sourceTree = "<group>"; };
  65 + 537612B5155AB74D005750A4 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/DetailViewController.xib; sourceTree = "<group>"; };
  66 + 537612CD155AB8F4005750A4 /* libSDWebImage.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libSDWebImage.a; path = "../build/Release-iphoneos/libSDWebImage.a"; sourceTree = "<group>"; };
  67 + 537612E3155ABA3C005750A4 /* MapKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MapKit.framework; path = System/Library/Frameworks/MapKit.framework; sourceTree = SDKROOT; };
  68 + 537612E6155ABA44005750A4 /* ImageIO.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ImageIO.framework; path = System/Library/Frameworks/ImageIO.framework; sourceTree = SDKROOT; };
  69 + 53761326155AD28E005750A4 /* libSDWebImage ARC.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libSDWebImage ARC.a"; path = "../build/Release-iphoneos/libSDWebImage ARC.a"; sourceTree = "<group>"; };
  70 + 53A2B4EE155B095800B12423 /* SDWebImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDWebImage.xcodeproj; path = ../SDWebImage.xcodeproj; sourceTree = "<group>"; };
  71 + 53A2B50B155B155A00B12423 /* placeholder.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = placeholder.png; sourceTree = "<group>"; };
  72 + 53A2B50C155B155A00B12423 /* placeholder@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "placeholder@2x.png"; sourceTree = "<group>"; };
  73 +/* End PBXFileReference section */
  74 +
  75 +/* Begin PBXFrameworksBuildPhase section */
  76 + 53761292155AB74D005750A4 /* Frameworks */ = {
  77 + isa = PBXFrameworksBuildPhase;
  78 + buildActionMask = 2147483647;
  79 + files = (
  80 + 53A2B4FC155B096D00B12423 /* libSDWebImage ARC.a in Frameworks */,
  81 + 53761328155AD31B005750A4 /* MapKit.framework in Frameworks */,
  82 + 537612E7155ABA44005750A4 /* ImageIO.framework in Frameworks */,
  83 + 5376129A155AB74D005750A4 /* UIKit.framework in Frameworks */,
  84 + 5376129C155AB74D005750A4 /* Foundation.framework in Frameworks */,
  85 + 5376129E155AB74D005750A4 /* CoreGraphics.framework in Frameworks */,
  86 + );
  87 + runOnlyForDeploymentPostprocessing = 0;
  88 + };
  89 +/* End PBXFrameworksBuildPhase section */
  90 +
  91 +/* Begin PBXGroup section */
  92 + 5376128A155AB74D005750A4 = {
  93 + isa = PBXGroup;
  94 + children = (
  95 + 53A2B4EE155B095800B12423 /* SDWebImage.xcodeproj */,
  96 + 5376129F155AB74D005750A4 /* SDWebImage Demo */,
  97 + 53761298155AB74D005750A4 /* Frameworks */,
  98 + 53761296155AB74D005750A4 /* Products */,
  99 + );
  100 + sourceTree = "<group>";
  101 + };
  102 + 53761296155AB74D005750A4 /* Products */ = {
  103 + isa = PBXGroup;
  104 + children = (
  105 + 53761295155AB74D005750A4 /* SDWebImage Demo.app */,
  106 + );
  107 + name = Products;
  108 + sourceTree = "<group>";
  109 + };
  110 + 53761298155AB74D005750A4 /* Frameworks */ = {
  111 + isa = PBXGroup;
  112 + children = (
  113 + 537612E6155ABA44005750A4 /* ImageIO.framework */,
  114 + 537612E3155ABA3C005750A4 /* MapKit.framework */,
  115 + 537612CD155AB8F4005750A4 /* libSDWebImage.a */,
  116 + 53761326155AD28E005750A4 /* libSDWebImage ARC.a */,
  117 + 53761299155AB74D005750A4 /* UIKit.framework */,
  118 + 5376129B155AB74D005750A4 /* Foundation.framework */,
  119 + 5376129D155AB74D005750A4 /* CoreGraphics.framework */,
  120 + );
  121 + name = Frameworks;
  122 + sourceTree = "<group>";
  123 + };
  124 + 5376129F155AB74D005750A4 /* SDWebImage Demo */ = {
  125 + isa = PBXGroup;
  126 + children = (
  127 + 537612A8155AB74D005750A4 /* AppDelegate.h */,
  128 + 537612A9155AB74D005750A4 /* AppDelegate.m */,
  129 + 537612AB155AB74D005750A4 /* MasterViewController.h */,
  130 + 537612AC155AB74D005750A4 /* MasterViewController.m */,
  131 + 537612AE155AB74D005750A4 /* DetailViewController.h */,
  132 + 537612AF155AB74D005750A4 /* DetailViewController.m */,
  133 + 537612B1155AB74D005750A4 /* MasterViewController.xib */,
  134 + 537612B4155AB74D005750A4 /* DetailViewController.xib */,
  135 + 537612A0155AB74D005750A4 /* Supporting Files */,
  136 + );
  137 + path = "SDWebImage Demo";
  138 + sourceTree = "<group>";
  139 + };
  140 + 537612A0155AB74D005750A4 /* Supporting Files */ = {
  141 + isa = PBXGroup;
  142 + children = (
  143 + 537612A1155AB74D005750A4 /* SDWebImage Demo-Info.plist */,
  144 + 537612A5155AB74D005750A4 /* main.m */,
  145 + 537612A7155AB74D005750A4 /* SDWebImage Demo-Prefix.pch */,
  146 + 53A2B50B155B155A00B12423 /* placeholder.png */,
  147 + 53A2B50C155B155A00B12423 /* placeholder@2x.png */,
  148 + );
  149 + name = "Supporting Files";
  150 + sourceTree = "<group>";
  151 + };
  152 + 53A2B4EF155B095800B12423 /* Products */ = {
  153 + isa = PBXGroup;
  154 + children = (
  155 + 53A2B4F7155B095800B12423 /* libSDWebImage.a */,
  156 + 53A2B4F9155B095800B12423 /* libSDWebImage ARC.a */,
  157 + );
  158 + name = Products;
  159 + sourceTree = "<group>";
  160 + };
  161 +/* End PBXGroup section */
  162 +
  163 +/* Begin PBXNativeTarget section */
  164 + 53761294155AB74D005750A4 /* SDWebImage Demo */ = {
  165 + isa = PBXNativeTarget;
  166 + buildConfigurationList = 537612B9155AB74D005750A4 /* Build configuration list for PBXNativeTarget "SDWebImage Demo" */;
  167 + buildPhases = (
  168 + 53761291155AB74D005750A4 /* Sources */,
  169 + 53761292155AB74D005750A4 /* Frameworks */,
  170 + 53761293155AB74D005750A4 /* Resources */,
  171 + );
  172 + buildRules = (
  173 + );
  174 + dependencies = (
  175 + 53A2B4FB155B096700B12423 /* PBXTargetDependency */,
  176 + );
  177 + name = "SDWebImage Demo";
  178 + productName = "SDWebImage Demo";
  179 + productReference = 53761295155AB74D005750A4 /* SDWebImage Demo.app */;
  180 + productType = "com.apple.product-type.application";
  181 + };
  182 +/* End PBXNativeTarget section */
  183 +
  184 +/* Begin PBXProject section */
  185 + 5376128C155AB74D005750A4 /* Project object */ = {
  186 + isa = PBXProject;
  187 + attributes = {
  188 + LastUpgradeCheck = 0430;
  189 + ORGANIZATIONNAME = Dailymotion;
  190 + };
  191 + buildConfigurationList = 5376128F155AB74D005750A4 /* Build configuration list for PBXProject "SDWebImage Demo" */;
  192 + compatibilityVersion = "Xcode 3.2";
  193 + developmentRegion = English;
  194 + hasScannedForEncodings = 0;
  195 + knownRegions = (
  196 + en,
  197 + );
  198 + mainGroup = 5376128A155AB74D005750A4;
  199 + productRefGroup = 53761296155AB74D005750A4 /* Products */;
  200 + projectDirPath = "";
  201 + projectReferences = (
  202 + {
  203 + ProductGroup = 53A2B4EF155B095800B12423 /* Products */;
  204 + ProjectRef = 53A2B4EE155B095800B12423 /* SDWebImage.xcodeproj */;
  205 + },
  206 + );
  207 + projectRoot = "";
  208 + targets = (
  209 + 53761294155AB74D005750A4 /* SDWebImage Demo */,
  210 + );
  211 + };
  212 +/* End PBXProject section */
  213 +
  214 +/* Begin PBXReferenceProxy section */
  215 + 53A2B4F7155B095800B12423 /* libSDWebImage.a */ = {
  216 + isa = PBXReferenceProxy;
  217 + fileType = archive.ar;
  218 + path = libSDWebImage.a;
  219 + remoteRef = 53A2B4F6155B095800B12423 /* PBXContainerItemProxy */;
  220 + sourceTree = BUILT_PRODUCTS_DIR;
  221 + };
  222 + 53A2B4F9155B095800B12423 /* libSDWebImage ARC.a */ = {
  223 + isa = PBXReferenceProxy;
  224 + fileType = archive.ar;
  225 + path = "libSDWebImage ARC.a";
  226 + remoteRef = 53A2B4F8155B095800B12423 /* PBXContainerItemProxy */;
  227 + sourceTree = BUILT_PRODUCTS_DIR;
  228 + };
  229 +/* End PBXReferenceProxy section */
  230 +
  231 +/* Begin PBXResourcesBuildPhase section */
  232 + 53761293155AB74D005750A4 /* Resources */ = {
  233 + isa = PBXResourcesBuildPhase;
  234 + buildActionMask = 2147483647;
  235 + files = (
  236 + 537612B3155AB74D005750A4 /* MasterViewController.xib in Resources */,
  237 + 537612B6155AB74D005750A4 /* DetailViewController.xib in Resources */,
  238 + 53A2B50D155B155A00B12423 /* placeholder.png in Resources */,
  239 + 53A2B50E155B155A00B12423 /* placeholder@2x.png in Resources */,
  240 + );
  241 + runOnlyForDeploymentPostprocessing = 0;
  242 + };
  243 +/* End PBXResourcesBuildPhase section */
  244 +
  245 +/* Begin PBXSourcesBuildPhase section */
  246 + 53761291155AB74D005750A4 /* Sources */ = {
  247 + isa = PBXSourcesBuildPhase;
  248 + buildActionMask = 2147483647;
  249 + files = (
  250 + 537612A6155AB74D005750A4 /* main.m in Sources */,
  251 + 537612AA155AB74D005750A4 /* AppDelegate.m in Sources */,
  252 + 537612AD155AB74D005750A4 /* MasterViewController.m in Sources */,
  253 + 537612B0155AB74D005750A4 /* DetailViewController.m in Sources */,
  254 + );
  255 + runOnlyForDeploymentPostprocessing = 0;
  256 + };
  257 +/* End PBXSourcesBuildPhase section */
  258 +
  259 +/* Begin PBXTargetDependency section */
  260 + 53A2B4FB155B096700B12423 /* PBXTargetDependency */ = {
  261 + isa = PBXTargetDependency;
  262 + name = "SDWebImage ARC";
  263 + targetProxy = 53A2B4FA155B096700B12423 /* PBXContainerItemProxy */;
  264 + };
  265 +/* End PBXTargetDependency section */
  266 +
  267 +/* Begin PBXVariantGroup section */
  268 + 537612B1155AB74D005750A4 /* MasterViewController.xib */ = {
  269 + isa = PBXVariantGroup;
  270 + children = (
  271 + 537612B2155AB74D005750A4 /* en */,
  272 + );
  273 + name = MasterViewController.xib;
  274 + sourceTree = "<group>";
  275 + };
  276 + 537612B4155AB74D005750A4 /* DetailViewController.xib */ = {
  277 + isa = PBXVariantGroup;
  278 + children = (
  279 + 537612B5155AB74D005750A4 /* en */,
  280 + );
  281 + name = DetailViewController.xib;
  282 + sourceTree = "<group>";
  283 + };
  284 +/* End PBXVariantGroup section */
  285 +
  286 +/* Begin XCBuildConfiguration section */
  287 + 537612B7155AB74D005750A4 /* Debug */ = {
  288 + isa = XCBuildConfiguration;
  289 + buildSettings = {
  290 + ALWAYS_SEARCH_USER_PATHS = NO;
  291 + ARCHS = "$(ARCHS_STANDARD_32_BIT)";
  292 + CLANG_ENABLE_OBJC_ARC = YES;
  293 + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
  294 + COPY_PHASE_STRIP = NO;
  295 + GCC_C_LANGUAGE_STANDARD = "compiler-default";
  296 + GCC_DYNAMIC_NO_PIC = NO;
  297 + GCC_OPTIMIZATION_LEVEL = 0;
  298 + GCC_PREPROCESSOR_DEFINITIONS = (
  299 + "DEBUG=1",
  300 + "$(inherited)",
  301 + );
  302 + GCC_SYMBOLS_PRIVATE_EXTERN = NO;
  303 + GCC_VERSION = "";
  304 + GCC_WARN_ABOUT_RETURN_TYPE = YES;
  305 + GCC_WARN_UNINITIALIZED_AUTOS = YES;
  306 + GCC_WARN_UNUSED_VARIABLE = YES;
  307 + IPHONEOS_DEPLOYMENT_TARGET = 4.0;
  308 + SDKROOT = iphoneos;
  309 + };
  310 + name = Debug;
  311 + };
  312 + 537612B8155AB74D005750A4 /* Release */ = {
  313 + isa = XCBuildConfiguration;
  314 + buildSettings = {
  315 + ALWAYS_SEARCH_USER_PATHS = NO;
  316 + ARCHS = "$(ARCHS_STANDARD_32_BIT)";
  317 + CLANG_ENABLE_OBJC_ARC = YES;
  318 + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
  319 + COPY_PHASE_STRIP = YES;
  320 + GCC_C_LANGUAGE_STANDARD = "compiler-default";
  321 + GCC_VERSION = "";
  322 + GCC_WARN_ABOUT_RETURN_TYPE = YES;
  323 + GCC_WARN_UNINITIALIZED_AUTOS = YES;
  324 + GCC_WARN_UNUSED_VARIABLE = YES;
  325 + IPHONEOS_DEPLOYMENT_TARGET = 4.0;
  326 + OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
  327 + SDKROOT = iphoneos;
  328 + VALIDATE_PRODUCT = YES;
  329 + };
  330 + name = Release;
  331 + };
  332 + 537612BA155AB74D005750A4 /* Debug */ = {
  333 + isa = XCBuildConfiguration;
  334 + buildSettings = {
  335 + GCC_PRECOMPILE_PREFIX_HEADER = YES;
  336 + GCC_PREFIX_HEADER = "SDWebImage Demo/SDWebImage Demo-Prefix.pch";
  337 + GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
  338 + INFOPLIST_FILE = "SDWebImage Demo/SDWebImage Demo-Info.plist";
  339 + OTHER_CFLAGS = "";
  340 + OTHER_LDFLAGS = "-ObjC";
  341 + PRODUCT_NAME = "$(TARGET_NAME)";
  342 + USER_HEADER_SEARCH_PATHS = "”$(TARGET_BUILD_DIR)/usr/local/lib/include” ”$(OBJROOT)/UninstalledProducts/include”";
  343 + WRAPPER_EXTENSION = app;
  344 + };
  345 + name = Debug;
  346 + };
  347 + 537612BB155AB74D005750A4 /* Release */ = {
  348 + isa = XCBuildConfiguration;
  349 + buildSettings = {
  350 + GCC_PRECOMPILE_PREFIX_HEADER = YES;
  351 + GCC_PREFIX_HEADER = "SDWebImage Demo/SDWebImage Demo-Prefix.pch";
  352 + GCC_PREPROCESSOR_DEFINITIONS = "";
  353 + INFOPLIST_FILE = "SDWebImage Demo/SDWebImage Demo-Info.plist";
  354 + OTHER_LDFLAGS = "-ObjC";
  355 + PRODUCT_NAME = "$(TARGET_NAME)";
  356 + USER_HEADER_SEARCH_PATHS = "”$(TARGET_BUILD_DIR)/usr/local/lib/include” ”$(OBJROOT)/UninstalledProducts/include”";
  357 + WRAPPER_EXTENSION = app;
  358 + };
  359 + name = Release;
  360 + };
  361 +/* End XCBuildConfiguration section */
  362 +
  363 +/* Begin XCConfigurationList section */
  364 + 5376128F155AB74D005750A4 /* Build configuration list for PBXProject "SDWebImage Demo" */ = {
  365 + isa = XCConfigurationList;
  366 + buildConfigurations = (
  367 + 537612B7155AB74D005750A4 /* Debug */,
  368 + 537612B8155AB74D005750A4 /* Release */,
  369 + );
  370 + defaultConfigurationIsVisible = 0;
  371 + defaultConfigurationName = Release;
  372 + };
  373 + 537612B9155AB74D005750A4 /* Build configuration list for PBXNativeTarget "SDWebImage Demo" */ = {
  374 + isa = XCConfigurationList;
  375 + buildConfigurations = (
  376 + 537612BA155AB74D005750A4 /* Debug */,
  377 + 537612BB155AB74D005750A4 /* Release */,
  378 + );
  379 + defaultConfigurationIsVisible = 0;
  380 + defaultConfigurationName = Release;
  381 + };
  382 +/* End XCConfigurationList section */
  383 + };
  384 + rootObject = 5376128C155AB74D005750A4 /* Project object */;
  385 +}
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<Workspace
  3 + version = "1.0">
  4 + <FileRef
  5 + location = "self:SDWebImage Demo.xcodeproj">
  6 + </FileRef>
  7 +</Workspace>
  1 +//
  2 +// AppDelegate.h
  3 +// SDWebImage Demo
  4 +//
  5 +// Created by Olivier Poitrey on 09/05/12.
  6 +// Copyright (c) 2012 Dailymotion. All rights reserved.
  7 +//
  8 +
  9 +#import <UIKit/UIKit.h>
  10 +
  11 +@interface AppDelegate : UIResponder <UIApplicationDelegate>
  12 +
  13 +@property (strong, nonatomic) UIWindow *window;
  14 +
  15 +@property (strong, nonatomic) UINavigationController *navigationController;
  16 +
  17 +@end
  1 +//
  2 +// AppDelegate.m
  3 +// SDWebImage Demo
  4 +//
  5 +// Created by Olivier Poitrey on 09/05/12.
  6 +// Copyright (c) 2012 Dailymotion. All rights reserved.
  7 +//
  8 +
  9 +#import "AppDelegate.h"
  10 +
  11 +#import "MasterViewController.h"
  12 +
  13 +@implementation AppDelegate
  14 +
  15 +@synthesize window = _window;
  16 +@synthesize navigationController = _navigationController;
  17 +
  18 +- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
  19 +{
  20 + self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
  21 + // Override point for customization after application launch.
  22 +
  23 + MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
  24 + self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
  25 + self.window.rootViewController = self.navigationController;
  26 + [self.window makeKeyAndVisible];
  27 + return YES;
  28 +}
  29 +
  30 +- (void)applicationWillResignActive:(UIApplication *)application
  31 +{
  32 + // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
  33 + // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
  34 +}
  35 +
  36 +- (void)applicationDidEnterBackground:(UIApplication *)application
  37 +{
  38 + // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
  39 + // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
  40 +}
  41 +
  42 +- (void)applicationWillEnterForeground:(UIApplication *)application
  43 +{
  44 + // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
  45 +}
  46 +
  47 +- (void)applicationDidBecomeActive:(UIApplication *)application
  48 +{
  49 + // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
  50 +}
  51 +
  52 +- (void)applicationWillTerminate:(UIApplication *)application
  53 +{
  54 + // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
  55 +}
  56 +
  57 +@end
  1 +//
  2 +// DetailViewController.h
  3 +// SDWebImage Demo
  4 +//
  5 +// Created by Olivier Poitrey on 09/05/12.
  6 +// Copyright (c) 2012 Dailymotion. All rights reserved.
  7 +//
  8 +
  9 +#import <UIKit/UIKit.h>
  10 +
  11 +@interface DetailViewController : UIViewController
  12 +
  13 +@property (strong, nonatomic) NSURL *imageURL;
  14 +
  15 +@property (strong, nonatomic) IBOutlet UIImageView *imageView;
  16 +
  17 +@end
  1 +//
  2 +// DetailViewController.m
  3 +// SDWebImage Demo
  4 +//
  5 +// Created by Olivier Poitrey on 09/05/12.
  6 +// Copyright (c) 2012 Dailymotion. All rights reserved.
  7 +//
  8 +
  9 +#import "DetailViewController.h"
  10 +#import <SDWebImage/UIImageView+WebCache.h>
  11 +
  12 +@interface DetailViewController ()
  13 +- (void)configureView;
  14 +@end
  15 +
  16 +@implementation DetailViewController
  17 +
  18 +@synthesize imageURL = _imageURL;
  19 +@synthesize imageView = _imageView;
  20 +
  21 +#pragma mark - Managing the detail item
  22 +
  23 +- (void)setImageURL:(NSURL *)imageURL
  24 +{
  25 + if (_imageURL != imageURL)
  26 + {
  27 + _imageURL = imageURL;
  28 + [self configureView];
  29 + }
  30 +}
  31 +
  32 +- (void)configureView
  33 +{
  34 + if (self.imageURL)
  35 + {
  36 + [self.imageView setImageWithURL:self.imageURL placeholderImage:nil options:SDWebImageProgressiveDownload];
  37 + }
  38 +}
  39 +
  40 +- (void)viewDidLoad
  41 +{
  42 + [super viewDidLoad];
  43 + [self configureView];
  44 +}
  45 +
  46 +- (void)viewDidUnload
  47 +{
  48 + [super viewDidUnload];
  49 + self.imageView = nil;
  50 +}
  51 +
  52 +- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
  53 +{
  54 + return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
  55 +}
  56 +
  57 +@end
  1 +//
  2 +// MasterViewController.h
  3 +// SDWebImage Demo
  4 +//
  5 +// Created by Olivier Poitrey on 09/05/12.
  6 +// Copyright (c) 2012 Dailymotion. All rights reserved.
  7 +//
  8 +
  9 +#import <UIKit/UIKit.h>
  10 +
  11 +@class DetailViewController;
  12 +
  13 +@interface MasterViewController : UITableViewController
  14 +
  15 +@property (strong, nonatomic) DetailViewController *detailViewController;
  16 +
  17 +@end
  1 +//
  2 +// MasterViewController.m
  3 +// SDWebImage Demo
  4 +//
  5 +// Created by Olivier Poitrey on 09/05/12.
  6 +// Copyright (c) 2012 Dailymotion. All rights reserved.
  7 +//
  8 +
  9 +#import "MasterViewController.h"
  10 +#import <SDWebImage/UIImageView+WebCache.h>
  11 +#import "DetailViewController.h"
  12 +
  13 +@interface MasterViewController () {
  14 + NSMutableArray *_objects;
  15 +}
  16 +@end
  17 +
  18 +@implementation MasterViewController
  19 +
  20 +@synthesize detailViewController = _detailViewController;
  21 +
  22 +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
  23 +{
  24 + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  25 + if (self)
  26 + {
  27 + self.title = @"SDWebImage";
  28 + _objects = [NSArray arrayWithObjects:
  29 + @"http://static2.dmcdn.net/static/video/451/838/44838154:jpeg_preview_small.jpg?20120509163826",
  30 + @"http://static2.dmcdn.net/static/video/656/177/44771656:jpeg_preview_small.jpg?20120509154705",
  31 + @"http://static2.dmcdn.net/static/video/629/228/44822926:jpeg_preview_small.jpg?20120509181018",
  32 + @"http://static2.dmcdn.net/static/video/116/367/44763611:jpeg_preview_small.jpg?20120509101749",
  33 + @"http://static2.dmcdn.net/static/video/340/086/44680043:jpeg_preview_small.jpg?20120509180118",
  34 + @"http://static2.dmcdn.net/static/video/666/645/43546666:jpeg_preview_small.jpg?20120412153140",
  35 + @"http://static2.dmcdn.net/static/video/771/577/44775177:jpeg_preview_small.jpg?20120509183230",
  36 + @"http://static2.dmcdn.net/static/video/810/508/44805018:jpeg_preview_small.jpg?20120508125339",
  37 + @"http://static2.dmcdn.net/static/video/152/008/44800251:jpeg_preview_small.jpg?20120508103336",
  38 + @"http://static2.dmcdn.net/static/video/694/741/35147496:jpeg_preview_small.jpg?20120508111445",
  39 + @"http://static2.dmcdn.net/static/video/988/667/44766889:jpeg_preview_small.jpg?20120508130425",
  40 + @"http://static2.dmcdn.net/static/video/282/467/44764282:jpeg_preview_small.jpg?20120507130637",
  41 + @"http://static2.dmcdn.net/static/video/754/657/44756457:jpeg_preview_small.jpg?20120507093012",
  42 + @"http://static2.dmcdn.net/static/video/831/107/44701138:jpeg_preview_small.jpg?20120506133917",
  43 + @"http://static2.dmcdn.net/static/video/411/057/44750114:jpeg_preview_small.jpg?20120507014914",
  44 + @"http://static2.dmcdn.net/static/video/894/547/44745498:jpeg_preview_small.jpg?20120509183004",
  45 + @"http://static2.dmcdn.net/static/video/082/947/44749280:jpeg_preview_small.jpg?20120507015022",
  46 + @"http://static2.dmcdn.net/static/video/833/347/44743338:jpeg_preview_small.jpg?20120509183004",
  47 + @"http://static2.dmcdn.net/static/video/683/666/44666386:jpeg_preview_small.jpg?20120505111208",
  48 + @"http://static2.dmcdn.net/static/video/595/946/44649595:jpeg_preview_small.jpg?20120507194104",
  49 + @"http://static2.dmcdn.net/static/video/984/935/44539489:jpeg_preview_small.jpg?20120501184650",
  50 + @"http://static2.dmcdn.net/static/video/440/416/44614044:jpeg_preview_small.jpg?20120505174152",
  51 + @"http://static2.dmcdn.net/static/video/561/977/20779165:jpeg_preview_small.jpg?20120423161805",
  52 + @"http://static2.dmcdn.net/static/video/104/546/44645401:jpeg_preview_small.jpg?20120507185246",
  53 + @"http://static2.dmcdn.net/static/video/671/636/44636176:jpeg_preview_small.jpg?20120504021339",
  54 + @"http://static2.dmcdn.net/static/video/142/746/44647241:jpeg_preview_small.jpg?20120504104451",
  55 + @"http://static2.dmcdn.net/static/video/776/860/44068677:jpeg_preview_small.jpg?20120507185251",
  56 + @"http://static2.dmcdn.net/static/video/026/626/44626620:jpeg_preview_small.jpg?20120503203036",
  57 + @"http://static2.dmcdn.net/static/video/364/663/39366463:jpeg_preview_small.jpg?20120509163505",
  58 + @"http://static2.dmcdn.net/static/video/392/895/44598293:jpeg_preview_small.jpg?20120503165252",
  59 + @"http://static2.dmcdn.net/static/video/620/865/44568026:jpeg_preview_small.jpg?20120507185121",
  60 + @"http://static2.dmcdn.net/static/video/031/395/44593130:jpeg_preview_small.jpg?20120507185139",
  61 + @"http://static2.dmcdn.net/static/video/676/495/44594676:jpeg_preview_small.jpg?20120503121341",
  62 + @"http://static2.dmcdn.net/static/video/025/195/44591520:jpeg_preview_small.jpg?20120503132132",
  63 + @"http://static2.dmcdn.net/static/video/993/665/44566399:jpeg_preview_small.jpg?20120503182623",
  64 + @"http://static2.dmcdn.net/static/video/137/635/44536731:jpeg_preview_small.jpg?20120501165940",
  65 + @"http://static2.dmcdn.net/static/video/611/794/44497116:jpeg_preview_small.jpg?20120507184954",
  66 + @"http://static2.dmcdn.net/static/video/732/790/44097237:jpeg_preview_small.jpg?20120430162348",
  67 + @"http://static2.dmcdn.net/static/video/064/991/44199460:jpeg_preview_small.jpg?20120430101250",
  68 + @"http://static2.dmcdn.net/static/video/404/094/44490404:jpeg_preview_small.jpg?20120507184948",
  69 + @"http://static2.dmcdn.net/static/video/413/120/44021314:jpeg_preview_small.jpg?20120507180850",
  70 + @"http://static2.dmcdn.net/static/video/200/584/44485002:jpeg_preview_small.jpg?20120507184941",
  71 + @"http://static2.dmcdn.net/static/video/551/318/42813155:jpeg_preview_small.jpg?20120412153202",
  72 + @"http://static2.dmcdn.net/static/video/524/750/44057425:jpeg_preview_small.jpg?20120501220912",
  73 + @"http://static2.dmcdn.net/static/video/124/843/44348421:jpeg_preview_small.jpg?20120507184551",
  74 + @"http://static2.dmcdn.net/static/video/496/394/42493694:jpeg_preview_small.jpg?20120430105337",
  75 + @"http://static2.dmcdn.net/static/video/548/883/44388845:jpeg_preview_small.jpg?20120428212713",
  76 + @"http://static2.dmcdn.net/static/video/282/533/44335282:jpeg_preview_small.jpg?20120427102844",
  77 + @"http://static2.dmcdn.net/static/video/257/132/44231752:jpeg_preview_small.jpg?20120428212609",
  78 + @"http://static2.dmcdn.net/static/video/480/193/44391084:jpeg_preview_small.jpg?20120501143214",
  79 + @"http://static2.dmcdn.net/static/video/903/432/44234309:jpeg_preview_small.jpg?20120427200002",
  80 + @"http://static2.dmcdn.net/static/video/646/573/44375646:jpeg_preview_small.jpg?20120507184652",
  81 + @"http://static2.dmcdn.net/static/video/709/573/44375907:jpeg_preview_small.jpg?20120507184652",
  82 + @"http://static2.dmcdn.net/static/video/885/633/44336588:jpeg_preview_small.jpg?20120507184540",
  83 + @"http://static2.dmcdn.net/static/video/732/523/44325237:jpeg_preview_small.jpg?20120426110308",
  84 + @"http://static2.dmcdn.net/static/video/935/132/44231539:jpeg_preview_small.jpg?20120426115744",
  85 + @"http://static2.dmcdn.net/static/video/941/129/43921149:jpeg_preview_small.jpg?20120426094640",
  86 + @"http://static2.dmcdn.net/static/video/775/942/44249577:jpeg_preview_small.jpg?20120425011228",
  87 + @"http://static2.dmcdn.net/static/video/868/332/44233868:jpeg_preview_small.jpg?20120429152901",
  88 + @"http://static2.dmcdn.net/static/video/959/732/44237959:jpeg_preview_small.jpg?20120425133534",
  89 + @"http://static2.dmcdn.net/static/video/383/402/44204383:jpeg_preview_small.jpg?20120424185842",
  90 + @"http://static2.dmcdn.net/static/video/971/932/44239179:jpeg_preview_small.jpg?20120424154419",
  91 + @"http://static2.dmcdn.net/static/video/096/991/44199690:jpeg_preview_small.jpg?20120423162001",
  92 + @"http://static2.dmcdn.net/static/video/661/450/44054166:jpeg_preview_small.jpg?20120507180921",
  93 + @"http://static2.dmcdn.net/static/video/419/322/44223914:jpeg_preview_small.jpg?20120424112858",
  94 + @"http://static2.dmcdn.net/static/video/673/391/44193376:jpeg_preview_small.jpg?20120507181450",
  95 + @"http://static2.dmcdn.net/static/video/907/781/44187709:jpeg_preview_small.jpg?20120423103507",
  96 + @"http://static2.dmcdn.net/static/video/446/571/44175644:jpeg_preview_small.jpg?20120423033122",
  97 + @"http://static2.dmcdn.net/static/video/146/671/44176641:jpeg_preview_small.jpg?20120428235503",
  98 + @"http://static2.dmcdn.net/static/video/463/571/44175364:jpeg_preview_small.jpg?20120428235503",
  99 + @"http://static2.dmcdn.net/static/video/442/471/44174244:jpeg_preview_small.jpg?20120428235502",
  100 + @"http://static2.dmcdn.net/static/video/523/471/44174325:jpeg_preview_small.jpg?20120422205107",
  101 + @"http://static2.dmcdn.net/static/video/977/159/43951779:jpeg_preview_small.jpg?20120420182100",
  102 + @"http://static2.dmcdn.net/static/video/875/880/40088578:jpeg_preview_small.jpg?20120501131026",
  103 + @"http://static2.dmcdn.net/static/video/434/992/38299434:jpeg_preview_small.jpg?20120503193356",
  104 + @"http://static2.dmcdn.net/static/video/448/798/42897844:jpeg_preview_small.jpg?20120418155203",
  105 + @"http://static2.dmcdn.net/static/video/374/690/44096473:jpeg_preview_small.jpg?20120507181124",
  106 + @"http://static2.dmcdn.net/static/video/284/313/43313482:jpeg_preview_small.jpg?20120420184511",
  107 + @"http://static2.dmcdn.net/static/video/682/060/44060286:jpeg_preview_small.jpg?20120421122436",
  108 + @"http://static2.dmcdn.net/static/video/701/750/44057107:jpeg_preview_small.jpg?20120420112918",
  109 + @"http://static2.dmcdn.net/static/video/790/850/44058097:jpeg_preview_small.jpg?20120424114522",
  110 + @"http://static2.dmcdn.net/static/video/153/617/43716351:jpeg_preview_small.jpg?20120419190650",
  111 + @"http://static2.dmcdn.net/static/video/394/633/37336493:jpeg_preview_small.jpg?20111109151109",
  112 + @"http://static2.dmcdn.net/static/video/893/330/44033398:jpeg_preview_small.jpg?20120419123322",
  113 + @"http://static2.dmcdn.net/static/video/395/046/42640593:jpeg_preview_small.jpg?20120418103546",
  114 + @"http://static2.dmcdn.net/static/video/913/040/44040319:jpeg_preview_small.jpg?20120419164908",
  115 + @"http://static2.dmcdn.net/static/video/090/020/44020090:jpeg_preview_small.jpg?20120418185934",
  116 + @"http://static2.dmcdn.net/static/video/349/299/43992943:jpeg_preview_small.jpg?20120418112749",
  117 + @"http://static2.dmcdn.net/static/video/530/189/43981035:jpeg_preview_small.jpg?20120419013834",
  118 + @"http://static2.dmcdn.net/static/video/763/469/43964367:jpeg_preview_small.jpg?20120425111931",
  119 + @"http://static2.dmcdn.net/static/video/961/455/43554169:jpeg_preview_small.jpg?20120418110127",
  120 + @"http://static2.dmcdn.net/static/video/666/889/43988666:jpeg_preview_small.jpg?20120507180735",
  121 + @"http://static2.dmcdn.net/static/video/160/459/43954061:jpeg_preview_small.jpg?20120501202847",
  122 + @"http://static2.dmcdn.net/static/video/352/069/43960253:jpeg_preview_small.jpg?20120503175747",
  123 + @"http://static2.dmcdn.net/static/video/096/502/43205690:jpeg_preview_small.jpg?20120417142655",
  124 + @"http://static2.dmcdn.net/static/video/257/119/43911752:jpeg_preview_small.jpg?20120416101238",
  125 + @"http://static2.dmcdn.net/static/video/874/098/43890478:jpeg_preview_small.jpg?20120415193608",
  126 + @"http://static2.dmcdn.net/static/video/406/148/43841604:jpeg_preview_small.jpg?20120416123145",
  127 + @"http://static2.dmcdn.net/static/video/463/885/43588364:jpeg_preview_small.jpg?20120409130206",
  128 + @"http://static2.dmcdn.net/static/video/176/845/38548671:jpeg_preview_small.jpg?20120414200742",
  129 + nil];
  130 + }
  131 + return self;
  132 +}
  133 +
  134 +- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
  135 +{
  136 + return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
  137 +}
  138 +
  139 +#pragma mark - Table View
  140 +
  141 +- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
  142 +{
  143 + return 1;
  144 +}
  145 +
  146 +- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
  147 +{
  148 + return _objects.count;
  149 +}
  150 +
  151 +- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
  152 +{
  153 + static NSString *CellIdentifier = @"Cell";
  154 +
  155 + UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
  156 + if (cell == nil)
  157 + {
  158 + cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
  159 + }
  160 +
  161 + cell.textLabel.text = [NSString stringWithFormat:@"Image #%d", indexPath.row];
  162 + [cell.imageView setImageWithURL:[NSURL URLWithString:[_objects objectAtIndex:indexPath.row]]
  163 + placeholderImage:[UIImage imageNamed:@"placeholder"]];
  164 + return cell;
  165 +}
  166 +
  167 +- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
  168 +{
  169 + if (!self.detailViewController)
  170 + {
  171 + self.detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
  172 + }
  173 + NSString *largeImageURL = [[_objects objectAtIndex:indexPath.row] stringByReplacingOccurrencesOfString:@"small" withString:@"source"];
  174 + self.detailViewController.imageURL = [NSURL URLWithString:largeImageURL];
  175 + [self.navigationController pushViewController:self.detailViewController animated:YES];
  176 +}
  177 +
  178 +@end
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3 +<plist version="1.0">
  4 +<dict>
  5 + <key>CFBundleDevelopmentRegion</key>
  6 + <string>en</string>
  7 + <key>CFBundleDisplayName</key>
  8 + <string>${PRODUCT_NAME}</string>
  9 + <key>CFBundleExecutable</key>
  10 + <string>${EXECUTABLE_NAME}</string>
  11 + <key>CFBundleIdentifier</key>
  12 + <string>com.dailymotion.${PRODUCT_NAME:rfc1034identifier}</string>
  13 + <key>CFBundleInfoDictionaryVersion</key>
  14 + <string>6.0</string>
  15 + <key>CFBundleName</key>
  16 + <string>${PRODUCT_NAME}</string>
  17 + <key>CFBundlePackageType</key>
  18 + <string>APPL</string>
  19 + <key>CFBundleShortVersionString</key>
  20 + <string>1.0</string>
  21 + <key>CFBundleSignature</key>
  22 + <string>????</string>
  23 + <key>CFBundleVersion</key>
  24 + <string>1.0</string>
  25 + <key>LSRequiresIPhoneOS</key>
  26 + <true/>
  27 + <key>UIRequiredDeviceCapabilities</key>
  28 + <array>
  29 + <string>armv7</string>
  30 + </array>
  31 + <key>UISupportedInterfaceOrientations</key>
  32 + <array>
  33 + <string>UIInterfaceOrientationPortrait</string>
  34 + <string>UIInterfaceOrientationLandscapeLeft</string>
  35 + <string>UIInterfaceOrientationLandscapeRight</string>
  36 + </array>
  37 +</dict>
  38 +</plist>
  1 +//
  2 +// Prefix header for all source files of the 'SDWebImage Demo' target in the 'SDWebImage Demo' project
  3 +//
  4 +
  5 +#import <Availability.h>
  6 +
  7 +#ifndef __IPHONE_4_0
  8 +#warning "This project uses features only available in iOS SDK 4.0 and later."
  9 +#endif
  10 +
  11 +#ifdef __OBJC__
  12 + #import <UIKit/UIKit.h>
  13 + #import <Foundation/Foundation.h>
  14 +#endif
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="8.00">
  3 + <data>
  4 + <int key="IBDocument.SystemTarget">1296</int>
  5 + <string key="IBDocument.SystemVersion">11D50b</string>
  6 + <string key="IBDocument.InterfaceBuilderVersion">2182</string>
  7 + <string key="IBDocument.AppKitVersion">1138.32</string>
  8 + <string key="IBDocument.HIToolboxVersion">568.00</string>
  9 + <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
  10 + <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  11 + <string key="NS.object.0">1181</string>
  12 + </object>
  13 + <array key="IBDocument.IntegratedClassDependencies">
  14 + <string>IBProxyObject</string>
  15 + <string>IBUIView</string>
  16 + <string>IBUIImageView</string>
  17 + </array>
  18 + <array key="IBDocument.PluginDependencies">
  19 + <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  20 + </array>
  21 + <object class="NSMutableDictionary" key="IBDocument.Metadata">
  22 + <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
  23 + <integer value="1" key="NS.object.0"/>
  24 + </object>
  25 + <array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
  26 + <object class="IBProxyObject" id="372490531">
  27 + <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
  28 + <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
  29 + </object>
  30 + <object class="IBProxyObject" id="975951072">
  31 + <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
  32 + <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
  33 + </object>
  34 + <object class="IBUIView" id="191373211">
  35 + <reference key="NSNextResponder"/>
  36 + <int key="NSvFlags">274</int>
  37 + <array class="NSMutableArray" key="NSSubviews">
  38 + <object class="IBUIImageView" id="268130440">
  39 + <reference key="NSNextResponder" ref="191373211"/>
  40 + <int key="NSvFlags">274</int>
  41 + <string key="NSFrameSize">{320, 460}</string>
  42 + <reference key="NSSuperview" ref="191373211"/>
  43 + <reference key="NSWindow"/>
  44 + <string key="NSReuseIdentifierKey">_NS:9</string>
  45 + <int key="IBUIContentMode">1</int>
  46 + <bool key="IBUIUserInteractionEnabled">NO</bool>
  47 + <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
  48 + </object>
  49 + </array>
  50 + <string key="NSFrame">{{0, 20}, {320, 460}}</string>
  51 + <reference key="NSSuperview"/>
  52 + <reference key="NSWindow"/>
  53 + <object class="NSColor" key="IBUIBackgroundColor">
  54 + <int key="NSColorSpace">3</int>
  55 + <bytes key="NSWhite">MQA</bytes>
  56 + <object class="NSColorSpace" key="NSCustomColorSpace">
  57 + <int key="NSID">2</int>
  58 + </object>
  59 + </object>
  60 + <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
  61 + <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
  62 + </object>
  63 + </array>
  64 + <object class="IBObjectContainer" key="IBDocument.Objects">
  65 + <array class="NSMutableArray" key="connectionRecords">
  66 + <object class="IBConnectionRecord">
  67 + <object class="IBCocoaTouchOutletConnection" key="connection">
  68 + <string key="label">view</string>
  69 + <reference key="source" ref="372490531"/>
  70 + <reference key="destination" ref="191373211"/>
  71 + </object>
  72 + <int key="connectionID">3</int>
  73 + </object>
  74 + <object class="IBConnectionRecord">
  75 + <object class="IBCocoaTouchOutletConnection" key="connection">
  76 + <string key="label">imageView</string>
  77 + <reference key="source" ref="372490531"/>
  78 + <reference key="destination" ref="268130440"/>
  79 + </object>
  80 + <int key="connectionID">8</int>
  81 + </object>
  82 + </array>
  83 + <object class="IBMutableOrderedSet" key="objectRecords">
  84 + <array key="orderedObjects">
  85 + <object class="IBObjectRecord">
  86 + <int key="objectID">0</int>
  87 + <array key="object" id="0"/>
  88 + <reference key="children" ref="1000"/>
  89 + <nil key="parent"/>
  90 + </object>
  91 + <object class="IBObjectRecord">
  92 + <int key="objectID">1</int>
  93 + <reference key="object" ref="191373211"/>
  94 + <array class="NSMutableArray" key="children">
  95 + <reference ref="268130440"/>
  96 + </array>
  97 + <reference key="parent" ref="0"/>
  98 + </object>
  99 + <object class="IBObjectRecord">
  100 + <int key="objectID">-1</int>
  101 + <reference key="object" ref="372490531"/>
  102 + <reference key="parent" ref="0"/>
  103 + <string key="objectName">File's Owner</string>
  104 + </object>
  105 + <object class="IBObjectRecord">
  106 + <int key="objectID">-2</int>
  107 + <reference key="object" ref="975951072"/>
  108 + <reference key="parent" ref="0"/>
  109 + </object>
  110 + <object class="IBObjectRecord">
  111 + <int key="objectID">7</int>
  112 + <reference key="object" ref="268130440"/>
  113 + <reference key="parent" ref="191373211"/>
  114 + </object>
  115 + </array>
  116 + </object>
  117 + <dictionary class="NSMutableDictionary" key="flattenedProperties">
  118 + <string key="-1.CustomClassName">DetailViewController</string>
  119 + <string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  120 + <string key="-2.CustomClassName">UIResponder</string>
  121 + <string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  122 + <string key="1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  123 + <string key="7.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  124 + </dictionary>
  125 + <dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
  126 + <nil key="activeLocalization"/>
  127 + <dictionary class="NSMutableDictionary" key="localizations"/>
  128 + <nil key="sourceID"/>
  129 + <int key="maxID">8</int>
  130 + </object>
  131 + <object class="IBClassDescriber" key="IBDocument.Classes">
  132 + <array class="NSMutableArray" key="referencedPartialClassDescriptions">
  133 + <object class="IBPartialClassDescription">
  134 + <string key="className">DetailViewController</string>
  135 + <string key="superclassName">UIViewController</string>
  136 + <object class="NSMutableDictionary" key="outlets">
  137 + <string key="NS.key.0">imageView</string>
  138 + <string key="NS.object.0">UIImageView</string>
  139 + </object>
  140 + <object class="NSMutableDictionary" key="toOneOutletInfosByName">
  141 + <string key="NS.key.0">imageView</string>
  142 + <object class="IBToOneOutletInfo" key="NS.object.0">
  143 + <string key="name">imageView</string>
  144 + <string key="candidateClassName">UIImageView</string>
  145 + </object>
  146 + </object>
  147 + <object class="IBClassDescriptionSource" key="sourceIdentifier">
  148 + <string key="majorKey">IBProjectSource</string>
  149 + <string key="minorKey">./Classes/DetailViewController.h</string>
  150 + </object>
  151 + </object>
  152 + </array>
  153 + </object>
  154 + <int key="IBDocument.localizationMode">0</int>
  155 + <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
  156 + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
  157 + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
  158 + <real value="1296" key="NS.object.0"/>
  159 + </object>
  160 + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
  161 + <int key="IBDocument.defaultPropertyAccessControl">3</int>
  162 + <string key="IBCocoaTouchPluginVersion">1181</string>
  163 + </data>
  164 +</archive>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="8.00">
  3 + <data>
  4 + <int key="IBDocument.SystemTarget">1280</int>
  5 + <string key="IBDocument.SystemVersion">11C25</string>
  6 + <string key="IBDocument.InterfaceBuilderVersion">1919</string>
  7 + <string key="IBDocument.AppKitVersion">1138.11</string>
  8 + <string key="IBDocument.HIToolboxVersion">566.00</string>
  9 + <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
  10 + <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  11 + <string key="NS.object.0">916</string>
  12 + </object>
  13 + <array key="IBDocument.IntegratedClassDependencies">
  14 + <string>IBProxyObject</string>
  15 + <string>IBUITableView</string>
  16 + </array>
  17 + <array key="IBDocument.PluginDependencies">
  18 + <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  19 + </array>
  20 + <object class="NSMutableDictionary" key="IBDocument.Metadata">
  21 + <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
  22 + <integer value="1" key="NS.object.0"/>
  23 + </object>
  24 + <array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
  25 + <object class="IBProxyObject" id="841351856">
  26 + <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
  27 + <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
  28 + </object>
  29 + <object class="IBProxyObject" id="371349661">
  30 + <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
  31 + <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
  32 + </object>
  33 + <object class="IBUITableView" id="709618507">
  34 + <reference key="NSNextResponder"/>
  35 + <int key="NSvFlags">274</int>
  36 + <string key="NSFrame">{{0, 20}, {320, 460}}</string>
  37 + <reference key="NSSuperview"/>
  38 + <reference key="NSWindow"/>
  39 + <object class="NSColor" key="IBUIBackgroundColor">
  40 + <int key="NSColorSpace">3</int>
  41 + <bytes key="NSWhite">MQA</bytes>
  42 + </object>
  43 + <bool key="IBUIClipsSubviews">YES</bool>
  44 + <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
  45 + <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
  46 + <bool key="IBUIAlwaysBounceVertical">YES</bool>
  47 + <int key="IBUISeparatorStyle">1</int>
  48 + <int key="IBUISectionIndexMinimumDisplayRowCount">0</int>
  49 + <bool key="IBUIShowsSelectionImmediatelyOnTouchBegin">YES</bool>
  50 + <float key="IBUIRowHeight">44</float>
  51 + <float key="IBUISectionHeaderHeight">22</float>
  52 + <float key="IBUISectionFooterHeight">22</float>
  53 + </object>
  54 + </array>
  55 + <object class="IBObjectContainer" key="IBDocument.Objects">
  56 + <array class="NSMutableArray" key="connectionRecords">
  57 + <object class="IBConnectionRecord">
  58 + <object class="IBCocoaTouchOutletConnection" key="connection">
  59 + <string key="label">view</string>
  60 + <reference key="source" ref="841351856"/>
  61 + <reference key="destination" ref="709618507"/>
  62 + </object>
  63 + <int key="connectionID">3</int>
  64 + </object>
  65 + <object class="IBConnectionRecord">
  66 + <object class="IBCocoaTouchOutletConnection" key="connection">
  67 + <string key="label">dataSource</string>
  68 + <reference key="source" ref="709618507"/>
  69 + <reference key="destination" ref="841351856"/>
  70 + </object>
  71 + <int key="connectionID">4</int>
  72 + </object>
  73 + <object class="IBConnectionRecord">
  74 + <object class="IBCocoaTouchOutletConnection" key="connection">
  75 + <string key="label">delegate</string>
  76 + <reference key="source" ref="709618507"/>
  77 + <reference key="destination" ref="841351856"/>
  78 + </object>
  79 + <int key="connectionID">5</int>
  80 + </object>
  81 + </array>
  82 + <object class="IBMutableOrderedSet" key="objectRecords">
  83 + <array key="orderedObjects">
  84 + <object class="IBObjectRecord">
  85 + <int key="objectID">0</int>
  86 + <array key="object" id="0"/>
  87 + <reference key="children" ref="1000"/>
  88 + <nil key="parent"/>
  89 + </object>
  90 + <object class="IBObjectRecord">
  91 + <int key="objectID">-1</int>
  92 + <reference key="object" ref="841351856"/>
  93 + <reference key="parent" ref="0"/>
  94 + <string key="objectName">File's Owner</string>
  95 + </object>
  96 + <object class="IBObjectRecord">
  97 + <int key="objectID">-2</int>
  98 + <reference key="object" ref="371349661"/>
  99 + <reference key="parent" ref="0"/>
  100 + </object>
  101 + <object class="IBObjectRecord">
  102 + <int key="objectID">2</int>
  103 + <reference key="object" ref="709618507"/>
  104 + <reference key="parent" ref="0"/>
  105 + </object>
  106 + </array>
  107 + </object>
  108 + <dictionary class="NSMutableDictionary" key="flattenedProperties">
  109 + <string key="-1.CustomClassName">MasterViewController</string>
  110 + <string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  111 + <string key="-2.CustomClassName">UIResponder</string>
  112 + <string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  113 + <string key="2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
  114 + </dictionary>
  115 + <dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
  116 + <nil key="activeLocalization"/>
  117 + <dictionary class="NSMutableDictionary" key="localizations"/>
  118 + <nil key="sourceID"/>
  119 + <int key="maxID">5</int>
  120 + </object>
  121 + <object class="IBClassDescriber" key="IBDocument.Classes">
  122 + <array class="NSMutableArray" key="referencedPartialClassDescriptions">
  123 + <object class="IBPartialClassDescription">
  124 + <string key="className">MasterViewController</string>
  125 + <string key="superclassName">UITableViewController</string>
  126 + <object class="IBClassDescriptionSource" key="sourceIdentifier">
  127 + <string key="majorKey">IBProjectSource</string>
  128 + <string key="minorKey">./Classes/MasterViewController.h</string>
  129 + </object>
  130 + </object>
  131 + </array>
  132 + </object>
  133 + <int key="IBDocument.localizationMode">0</int>
  134 + <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
  135 + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
  136 + <int key="IBDocument.defaultPropertyAccessControl">3</int>
  137 + <string key="IBCocoaTouchPluginVersion">916</string>
  138 + </data>
  139 +</archive>
  1 +//
  2 +// main.m
  3 +// SDWebImage Demo
  4 +//
  5 +// Created by Olivier Poitrey on 09/05/12.
  6 +// Copyright (c) 2012 Dailymotion. All rights reserved.
  7 +//
  8 +
  9 +#import <UIKit/UIKit.h>
  10 +
  11 +#import "AppDelegate.h"
  12 +
  13 +int main(int argc, char *argv[])
  14 +{
  15 + @autoreleasepool {
  16 + return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
  17 + }
  18 +}
@@ -65,7 +65,7 @@ method from the tableView:cellForRowAtIndexPath: UITableViewDataSource method. E @@ -65,7 +65,7 @@ method from the tableView:cellForRowAtIndexPath: UITableViewDataSource method. E
65 handled for you, from async downloads to caching management. 65 handled for you, from async downloads to caching management.
66 66
67 ```objective-c 67 ```objective-c
68 -#import "UIImageView+WebCache.h" 68 +#import <SDWebImage/UIImageView+WebCache.h>
69 69
70 ... 70 ...
71 71
@@ -234,43 +234,70 @@ Installation @@ -234,43 +234,70 @@ Installation
234 234
235 You can chose to copy all the files in your project or to import the it as a static library. 235 You can chose to copy all the files in your project or to import the it as a static library.
236 236
237 -The following instructions are adapted from the excellent "Using Open Source Static Libraries in Xcode 4"  
238 -[tutorial][] from Jonah Williams. 237 +### Add the SDWebImage project to your project
239 238
240 -### Add the SDWebImage project to your workspace 239 +Right-click on the project navigator and select "Add Files to "Your Project":
241 240
242 -Make sure your project is in a workspace. If it's not, click File -> Save As Workspace first. 241 +![Add Library Project](http://dl.dropbox.com/u/123346/SDWebImage/01_add_library_project.jpg)
243 242
244 -Right-click on the project navigator and select "Add Files to "Your Project" and select SDWebImage.xcodeproj.  
245 -You may want to include the SDWebImage directory in your workspace repository before adding it to your project. 243 +In the dialog, select SDWebImage.xcodeproj:
246 244
247 -![Add SDWebImage](http://blog.carbonfive.com/wp-content/uploads/2011/04/adding_an_existing_project.png?w=300) 245 +![Add Library Project Dialog](http://dl.dropbox.com/u/123346/SDWebImage/02_add_library_project_dialog.jpg)
248 246
249 -You should end up with your project and SDWebimage project at the same level in the workspace. 247 +After you’ve added the subproject, it’ll appear below the main project in Xcode’s Navigator tree:
250 248
251 -### Build libSDWebImage.a File 249 +![Library Added](http://dl.dropbox.com/u/123346/SDWebImage/03_library_added.jpg)
252 250
253 -Set your build target to iOS Device, then click Build. Make sure the libSDWebImage.a file inside SDWebImage -> Products is not red. 251 +You may want to add the SDWebImage directory in your project source tree as a submodule before adding it to your project.
254 252
255 -### Add build target dependency 253 +### Add build target dependencies
256 254
257 -Select your project's build target and add the 'libSDWebImage.a' library to the "Link Binary With Libraries" inside the "Build Phases" tab. 255 +In you application project app’s target settings, find the "Build Phases" section and open the "Target Dependencies" block:
258 256
259 -![Add target dependency](http://blog.carbonfive.com/wp-content/uploads/2011/04/linkable_libraries.png?w=214) 257 +![Add Target Dependencies](http://dl.dropbox.com/u/123346/SDWebImage/04_add_target_dependencies.jpg)
260 258
261 -You may also need to add MapKit.framework here too as 'MKAnnotationView_WebCache.h' depends on it. 259 +Click the "+" button and select "SDWebImage ARC" (you may choose the non ARC target if you want to support iOS <3):
  260 +
  261 +![Add Target Dependencies Dialog](http://dl.dropbox.com/u/123346/SDWebImage/05_add_target_dependencies_dialog.jpg)
  262 +
  263 +Open the "Link Binary With Libraries" block:
  264 +
  265 +![Add Library Link](http://dl.dropbox.com/u/123346/SDWebImage/06_add_library_link.jpg)
  266 +
  267 +Click the "+" button and select "libSDWebImageARC.a" library (use non ARC version if you chose non ARC version in the previous step):
  268 +
  269 +![Add Library Link Dialog](http://dl.dropbox.com/u/123346/SDWebImage/07_add_library_link_dialog.jpg)
  270 +
  271 +Click the "+" button again and select "MapKit.framework", this is used by MKAnnotationView+WebCache category:
  272 +
  273 +![Add ImageIO Framework](http://dl.dropbox.com/u/123346/SDWebImage/08_add_imageio_framework.jpg)
  274 +
  275 +Click the "+" button again and select the "ImageIO.framework", this is needed by the progressive download feature:
  276 +
  277 +![Add MapKit Framework](http://dl.dropbox.com/u/123346/SDWebImage/09_add_mapkit_framework.jpg)
262 278
263 ### Add headers 279 ### Add headers
264 280
265 -Open the "Build Settingsæ tab and locate the "User Header Search Paths" setting. Set this to  
266 -"$(BUILT_PRODUCTS_DIR)/../../Headers" and check the "Recursive" check box. 281 +Open the "Build Settings" tab, locate the "Other Linker Flags" setting and add the "-ObjC" flag:
267 282
268 -![Header Search Paths](http://blog.carbonfive.com/wp-content/uploads/2011/04/header_search_path_value.png?w=300) 283 +![Other Linker Flags](http://dl.dropbox.com/u/123346/SDWebImage/10_other_linker_flags.jpg)
269 284
270 -Add the "-ObjC" flag to the "Other Linker Flags" build setting. 285 +Locate "User Header Search Paths" and add two settings: ”$(TARGET_BUILD_DIR)/usr/local/lib/include” and ”$(OBJROOT)/UninstalledProducts/include”. Make sure to include the quotes here:
  286 +
  287 +![User Header Search Paths](http://dl.dropbox.com/u/123346/SDWebImage/11_user_header_search_paths.jpg)
  288 +
  289 +### Import headers in your source files
  290 +
  291 +In the source files where you need to use the library, use ``#import <SDWebImage/HeaderFileName.h>``:
  292 +
  293 +```objective-c
  294 +#import <SDWebImage/UIImageView+WebCache.h>
  295 +```
271 296
272 ### Build Project 297 ### Build Project
273 -At this point your workspace should build without error. If you are having problem, post to the Issue and the community can help you solve it. 298 +
  299 +At this point your workspace should build without error. If you are having problem, post to the Issue and the
  300 +community can help you solve it.
274 301
275 ### Fixing indexing 302 ### Fixing indexing
276 303
@@ -278,7 +305,6 @@ If you have problem with auto-completion of SDWebImage methods, you may have to @@ -278,7 +305,6 @@ If you have problem with auto-completion of SDWebImage methods, you may have to
278 your project. 305 your project.
279 306
280 307
281 -  
282 Future Enhancements 308 Future Enhancements
283 ------------------- 309 -------------------
284 310
@@ -9,6 +9,29 @@ @@ -9,6 +9,29 @@
9 /* Begin PBXBuildFile section */ 9 /* Begin PBXBuildFile section */
10 535699B615113E7300A4C397 /* MKAnnotationView+WebCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 535699B415113E7300A4C397 /* MKAnnotationView+WebCache.h */; settings = {ATTRIBUTES = (Public, ); }; }; 10 535699B615113E7300A4C397 /* MKAnnotationView+WebCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 535699B415113E7300A4C397 /* MKAnnotationView+WebCache.h */; settings = {ATTRIBUTES = (Public, ); }; };
11 535699B715113E7300A4C397 /* MKAnnotationView+WebCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 535699B515113E7300A4C397 /* MKAnnotationView+WebCache.m */; }; 11 535699B715113E7300A4C397 /* MKAnnotationView+WebCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 535699B515113E7300A4C397 /* MKAnnotationView+WebCache.m */; };
  12 + 53761309155AD0D5005750A4 /* SDImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D86148C56230056699D /* SDImageCache.m */; };
  13 + 5376130A155AD0D5005750A4 /* SDWebImageDecoder.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D8A148C56230056699D /* SDWebImageDecoder.m */; };
  14 + 5376130B155AD0D5005750A4 /* SDWebImageDownloader.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D8C148C56230056699D /* SDWebImageDownloader.m */; };
  15 + 5376130C155AD0D5005750A4 /* SDWebImageManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D8F148C56230056699D /* SDWebImageManager.m */; };
  16 + 5376130D155AD0D5005750A4 /* SDWebImagePrefetcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D92148C56230056699D /* SDWebImagePrefetcher.m */; };
  17 + 5376130E155AD0D5005750A4 /* UIButton+WebCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D94148C56230056699D /* UIButton+WebCache.m */; };
  18 + 5376130F155AD0D5005750A4 /* UIImageView+WebCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D96148C56230056699D /* UIImageView+WebCache.m */; };
  19 + 53761310155AD0D5005750A4 /* MKAnnotationView+WebCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 535699B515113E7300A4C397 /* MKAnnotationView+WebCache.m */; };
  20 + 53761312155AD0D5005750A4 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53FB894814D35E9E0020B787 /* UIKit.framework */; };
  21 + 53761313155AD0D5005750A4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53922D72148C55820056699D /* Foundation.framework */; };
  22 + 53761314155AD0D5005750A4 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53FB893F14D35D1A0020B787 /* CoreGraphics.framework */; };
  23 + 53761316155AD0D5005750A4 /* SDImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D85148C56230056699D /* SDImageCache.h */; settings = {ATTRIBUTES = (Public, ); }; };
  24 + 53761317155AD0D5005750A4 /* SDImageCacheDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D87148C56230056699D /* SDImageCacheDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
  25 + 53761318155AD0D5005750A4 /* SDWebImageCompat.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D88148C56230056699D /* SDWebImageCompat.h */; settings = {ATTRIBUTES = (Public, ); }; };
  26 + 53761319155AD0D5005750A4 /* SDWebImageDecoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D89148C56230056699D /* SDWebImageDecoder.h */; settings = {ATTRIBUTES = (Public, ); }; };
  27 + 5376131A155AD0D5005750A4 /* SDWebImageDownloader.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D8B148C56230056699D /* SDWebImageDownloader.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28 + 5376131B155AD0D5005750A4 /* SDWebImageDownloaderDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D8D148C56230056699D /* SDWebImageDownloaderDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
  29 + 5376131C155AD0D5005750A4 /* SDWebImageManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D8E148C56230056699D /* SDWebImageManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
  30 + 5376131D155AD0D5005750A4 /* SDWebImageManagerDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D90148C56230056699D /* SDWebImageManagerDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
  31 + 5376131E155AD0D5005750A4 /* SDWebImagePrefetcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D91148C56230056699D /* SDWebImagePrefetcher.h */; settings = {ATTRIBUTES = (Public, ); }; };
  32 + 5376131F155AD0D5005750A4 /* UIButton+WebCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D93148C56230056699D /* UIButton+WebCache.h */; settings = {ATTRIBUTES = (Public, ); }; };
  33 + 53761320155AD0D5005750A4 /* UIImageView+WebCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D95148C56230056699D /* UIImageView+WebCache.h */; settings = {ATTRIBUTES = (Public, ); }; };
  34 + 53761321155AD0D5005750A4 /* MKAnnotationView+WebCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 535699B415113E7300A4C397 /* MKAnnotationView+WebCache.h */; settings = {ATTRIBUTES = (Public, ); }; };
12 53922D73148C55820056699D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53922D72148C55820056699D /* Foundation.framework */; }; 35 53922D73148C55820056699D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53922D72148C55820056699D /* Foundation.framework */; };
13 53922D97148C56230056699D /* SDImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D85148C56230056699D /* SDImageCache.h */; settings = {ATTRIBUTES = (Public, ); }; }; 36 53922D97148C56230056699D /* SDImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 53922D85148C56230056699D /* SDImageCache.h */; settings = {ATTRIBUTES = (Public, ); }; };
14 53922D98148C56230056699D /* SDImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D86148C56230056699D /* SDImageCache.m */; }; 37 53922D98148C56230056699D /* SDImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 53922D86148C56230056699D /* SDImageCache.m */; };
@@ -35,6 +58,7 @@ @@ -35,6 +58,7 @@
35 /* Begin PBXFileReference section */ 58 /* Begin PBXFileReference section */
36 535699B415113E7300A4C397 /* MKAnnotationView+WebCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "MKAnnotationView+WebCache.h"; path = "SDWebImage/MKAnnotationView+WebCache.h"; sourceTree = SOURCE_ROOT; }; 59 535699B415113E7300A4C397 /* MKAnnotationView+WebCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "MKAnnotationView+WebCache.h"; path = "SDWebImage/MKAnnotationView+WebCache.h"; sourceTree = SOURCE_ROOT; };
37 535699B515113E7300A4C397 /* MKAnnotationView+WebCache.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "MKAnnotationView+WebCache.m"; path = "SDWebImage/MKAnnotationView+WebCache.m"; sourceTree = SOURCE_ROOT; }; 60 535699B515113E7300A4C397 /* MKAnnotationView+WebCache.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "MKAnnotationView+WebCache.m"; path = "SDWebImage/MKAnnotationView+WebCache.m"; sourceTree = SOURCE_ROOT; };
  61 + 53761325155AD0D5005750A4 /* libSDWebImageARC.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDWebImageARC.a; sourceTree = BUILT_PRODUCTS_DIR; };
38 53922D6F148C55820056699D /* libSDWebImage.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDWebImage.a; sourceTree = BUILT_PRODUCTS_DIR; }; 62 53922D6F148C55820056699D /* libSDWebImage.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDWebImage.a; sourceTree = BUILT_PRODUCTS_DIR; };
39 53922D72148C55820056699D /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 63 53922D72148C55820056699D /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
40 53922D85148C56230056699D /* SDImageCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDImageCache.h; path = SDWebImage/SDImageCache.h; sourceTree = SOURCE_ROOT; }; 64 53922D85148C56230056699D /* SDImageCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDImageCache.h; path = SDWebImage/SDImageCache.h; sourceTree = SOURCE_ROOT; };
@@ -60,6 +84,16 @@ @@ -60,6 +84,16 @@
60 /* End PBXFileReference section */ 84 /* End PBXFileReference section */
61 85
62 /* Begin PBXFrameworksBuildPhase section */ 86 /* Begin PBXFrameworksBuildPhase section */
  87 + 53761311155AD0D5005750A4 /* Frameworks */ = {
  88 + isa = PBXFrameworksBuildPhase;
  89 + buildActionMask = 2147483647;
  90 + files = (
  91 + 53761312155AD0D5005750A4 /* UIKit.framework in Frameworks */,
  92 + 53761313155AD0D5005750A4 /* Foundation.framework in Frameworks */,
  93 + 53761314155AD0D5005750A4 /* CoreGraphics.framework in Frameworks */,
  94 + );
  95 + runOnlyForDeploymentPostprocessing = 0;
  96 + };
63 53922D6C148C55810056699D /* Frameworks */ = { 97 53922D6C148C55810056699D /* Frameworks */ = {
64 isa = PBXFrameworksBuildPhase; 98 isa = PBXFrameworksBuildPhase;
65 buildActionMask = 2147483647; 99 buildActionMask = 2147483647;
@@ -86,6 +120,7 @@ @@ -86,6 +120,7 @@
86 isa = PBXGroup; 120 isa = PBXGroup;
87 children = ( 121 children = (
88 53922D6F148C55820056699D /* libSDWebImage.a */, 122 53922D6F148C55820056699D /* libSDWebImage.a */,
  123 + 53761325155AD0D5005750A4 /* libSDWebImageARC.a */,
89 ); 124 );
90 name = Products; 125 name = Products;
91 sourceTree = "<group>"; 126 sourceTree = "<group>";
@@ -162,6 +197,25 @@ @@ -162,6 +197,25 @@
162 /* End PBXGroup section */ 197 /* End PBXGroup section */
163 198
164 /* Begin PBXHeadersBuildPhase section */ 199 /* Begin PBXHeadersBuildPhase section */
  200 + 53761315155AD0D5005750A4 /* Headers */ = {
  201 + isa = PBXHeadersBuildPhase;
  202 + buildActionMask = 2147483647;
  203 + files = (
  204 + 53761316155AD0D5005750A4 /* SDImageCache.h in Headers */,
  205 + 53761317155AD0D5005750A4 /* SDImageCacheDelegate.h in Headers */,
  206 + 53761318155AD0D5005750A4 /* SDWebImageCompat.h in Headers */,
  207 + 53761319155AD0D5005750A4 /* SDWebImageDecoder.h in Headers */,
  208 + 5376131A155AD0D5005750A4 /* SDWebImageDownloader.h in Headers */,
  209 + 5376131B155AD0D5005750A4 /* SDWebImageDownloaderDelegate.h in Headers */,
  210 + 5376131C155AD0D5005750A4 /* SDWebImageManager.h in Headers */,
  211 + 5376131D155AD0D5005750A4 /* SDWebImageManagerDelegate.h in Headers */,
  212 + 5376131E155AD0D5005750A4 /* SDWebImagePrefetcher.h in Headers */,
  213 + 5376131F155AD0D5005750A4 /* UIButton+WebCache.h in Headers */,
  214 + 53761320155AD0D5005750A4 /* UIImageView+WebCache.h in Headers */,
  215 + 53761321155AD0D5005750A4 /* MKAnnotationView+WebCache.h in Headers */,
  216 + );
  217 + runOnlyForDeploymentPostprocessing = 0;
  218 + };
165 53922D6D148C55810056699D /* Headers */ = { 219 53922D6D148C55810056699D /* Headers */ = {
166 isa = PBXHeadersBuildPhase; 220 isa = PBXHeadersBuildPhase;
167 buildActionMask = 2147483647; 221 buildActionMask = 2147483647;
@@ -184,6 +238,23 @@ @@ -184,6 +238,23 @@
184 /* End PBXHeadersBuildPhase section */ 238 /* End PBXHeadersBuildPhase section */
185 239
186 /* Begin PBXNativeTarget section */ 240 /* Begin PBXNativeTarget section */
  241 + 53761307155AD0D5005750A4 /* SDWebImage ARC */ = {
  242 + isa = PBXNativeTarget;
  243 + buildConfigurationList = 53761322155AD0D5005750A4 /* Build configuration list for PBXNativeTarget "SDWebImage ARC" */;
  244 + buildPhases = (
  245 + 53761308155AD0D5005750A4 /* Sources */,
  246 + 53761311155AD0D5005750A4 /* Frameworks */,
  247 + 53761315155AD0D5005750A4 /* Headers */,
  248 + );
  249 + buildRules = (
  250 + );
  251 + dependencies = (
  252 + );
  253 + name = "SDWebImage ARC";
  254 + productName = SDWebImage;
  255 + productReference = 53761325155AD0D5005750A4 /* libSDWebImageARC.a */;
  256 + productType = "com.apple.product-type.library.static";
  257 + };
187 53922D6E148C55810056699D /* SDWebImage */ = { 258 53922D6E148C55810056699D /* SDWebImage */ = {
188 isa = PBXNativeTarget; 259 isa = PBXNativeTarget;
189 buildConfigurationList = 53922D7C148C55820056699D /* Build configuration list for PBXNativeTarget "SDWebImage" */; 260 buildConfigurationList = 53922D7C148C55820056699D /* Build configuration list for PBXNativeTarget "SDWebImage" */;
@@ -223,11 +294,27 @@ @@ -223,11 +294,27 @@
223 projectRoot = ""; 294 projectRoot = "";
224 targets = ( 295 targets = (
225 53922D6E148C55810056699D /* SDWebImage */, 296 53922D6E148C55810056699D /* SDWebImage */,
  297 + 53761307155AD0D5005750A4 /* SDWebImage ARC */,
226 ); 298 );
227 }; 299 };
228 /* End PBXProject section */ 300 /* End PBXProject section */
229 301
230 /* Begin PBXSourcesBuildPhase section */ 302 /* Begin PBXSourcesBuildPhase section */
  303 + 53761308155AD0D5005750A4 /* Sources */ = {
  304 + isa = PBXSourcesBuildPhase;
  305 + buildActionMask = 2147483647;
  306 + files = (
  307 + 53761309155AD0D5005750A4 /* SDImageCache.m in Sources */,
  308 + 5376130A155AD0D5005750A4 /* SDWebImageDecoder.m in Sources */,
  309 + 5376130B155AD0D5005750A4 /* SDWebImageDownloader.m in Sources */,
  310 + 5376130C155AD0D5005750A4 /* SDWebImageManager.m in Sources */,
  311 + 5376130D155AD0D5005750A4 /* SDWebImagePrefetcher.m in Sources */,
  312 + 5376130E155AD0D5005750A4 /* UIButton+WebCache.m in Sources */,
  313 + 5376130F155AD0D5005750A4 /* UIImageView+WebCache.m in Sources */,
  314 + 53761310155AD0D5005750A4 /* MKAnnotationView+WebCache.m in Sources */,
  315 + );
  316 + runOnlyForDeploymentPostprocessing = 0;
  317 + };
231 53922D6B148C55810056699D /* Sources */ = { 318 53922D6B148C55810056699D /* Sources */ = {
232 isa = PBXSourcesBuildPhase; 319 isa = PBXSourcesBuildPhase;
233 buildActionMask = 2147483647; 320 buildActionMask = 2147483647;
@@ -246,13 +333,44 @@ @@ -246,13 +333,44 @@
246 /* End PBXSourcesBuildPhase section */ 333 /* End PBXSourcesBuildPhase section */
247 334
248 /* Begin XCBuildConfiguration section */ 335 /* Begin XCBuildConfiguration section */
  336 + 53761323155AD0D5005750A4 /* Debug */ = {
  337 + isa = XCBuildConfiguration;
  338 + buildSettings = {
  339 + CLANG_ENABLE_OBJC_ARC = NO;
  340 + CLANG_WARN_OBJCPP_ARC_ABI = YES;
  341 + DSTROOT = /tmp/SDWebImage.dst;
  342 + GCC_PRECOMPILE_PREFIX_HEADER = YES;
  343 + GCC_PREFIX_HEADER = "";
  344 + INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
  345 + IPHONEOS_DEPLOYMENT_TARGET = 4.0;
  346 + OTHER_LDFLAGS = "-ObjC";
  347 + PRODUCT_NAME = SDWebImageARC;
  348 + SKIP_INSTALL = YES;
  349 + };
  350 + name = Debug;
  351 + };
  352 + 53761324155AD0D5005750A4 /* Release */ = {
  353 + isa = XCBuildConfiguration;
  354 + buildSettings = {
  355 + CLANG_ENABLE_OBJC_ARC = NO;
  356 + CLANG_WARN_OBJCPP_ARC_ABI = YES;
  357 + DSTROOT = /tmp/SDWebImage.dst;
  358 + GCC_PRECOMPILE_PREFIX_HEADER = YES;
  359 + GCC_PREFIX_HEADER = "";
  360 + INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
  361 + IPHONEOS_DEPLOYMENT_TARGET = 4.0;
  362 + OTHER_LDFLAGS = "-ObjC";
  363 + PRODUCT_NAME = SDWebImageARC;
  364 + SKIP_INSTALL = YES;
  365 + };
  366 + name = Release;
  367 + };
249 53922D7A148C55820056699D /* Debug */ = { 368 53922D7A148C55820056699D /* Debug */ = {
250 isa = XCBuildConfiguration; 369 isa = XCBuildConfiguration;
251 buildSettings = { 370 buildSettings = {
252 ALWAYS_SEARCH_USER_PATHS = NO; 371 ALWAYS_SEARCH_USER_PATHS = NO;
253 ARCHS = "$(ARCHS_STANDARD_32_BIT)"; 372 ARCHS = "$(ARCHS_STANDARD_32_BIT)";
254 COPY_PHASE_STRIP = NO; 373 COPY_PHASE_STRIP = NO;
255 - GCC_C_LANGUAGE_STANDARD = gnu99;  
256 GCC_DYNAMIC_NO_PIC = NO; 374 GCC_DYNAMIC_NO_PIC = NO;
257 GCC_OPTIMIZATION_LEVEL = 0; 375 GCC_OPTIMIZATION_LEVEL = 0;
258 GCC_PREPROCESSOR_DEFINITIONS = ( 376 GCC_PREPROCESSOR_DEFINITIONS = (
@@ -260,11 +378,11 @@ @@ -260,11 +378,11 @@
260 "$(inherited)", 378 "$(inherited)",
261 ); 379 );
262 GCC_SYMBOLS_PRIVATE_EXTERN = NO; 380 GCC_SYMBOLS_PRIVATE_EXTERN = NO;
263 - GCC_VERSION = com.apple.compilers.llvm.clang.1_0;  
264 GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; 381 GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
265 GCC_WARN_ABOUT_RETURN_TYPE = YES; 382 GCC_WARN_ABOUT_RETURN_TYPE = YES;
266 GCC_WARN_UNUSED_VARIABLE = YES; 383 GCC_WARN_UNUSED_VARIABLE = YES;
267 - IPHONEOS_DEPLOYMENT_TARGET = 5.0; 384 + IPHONEOS_DEPLOYMENT_TARGET = 3.0;
  385 + PUBLIC_HEADERS_FOLDER_PATH = include/SDWebImage;
268 SDKROOT = iphoneos; 386 SDKROOT = iphoneos;
269 }; 387 };
270 name = Debug; 388 name = Debug;
@@ -275,12 +393,11 @@ @@ -275,12 +393,11 @@
275 ALWAYS_SEARCH_USER_PATHS = NO; 393 ALWAYS_SEARCH_USER_PATHS = NO;
276 ARCHS = "$(ARCHS_STANDARD_32_BIT)"; 394 ARCHS = "$(ARCHS_STANDARD_32_BIT)";
277 COPY_PHASE_STRIP = YES; 395 COPY_PHASE_STRIP = YES;
278 - GCC_C_LANGUAGE_STANDARD = gnu99;  
279 - GCC_VERSION = com.apple.compilers.llvm.clang.1_0;  
280 GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; 396 GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
281 GCC_WARN_ABOUT_RETURN_TYPE = YES; 397 GCC_WARN_ABOUT_RETURN_TYPE = YES;
282 GCC_WARN_UNUSED_VARIABLE = YES; 398 GCC_WARN_UNUSED_VARIABLE = YES;
283 - IPHONEOS_DEPLOYMENT_TARGET = 5.0; 399 + IPHONEOS_DEPLOYMENT_TARGET = 3.0;
  400 + PUBLIC_HEADERS_FOLDER_PATH = include/SDWebImage;
284 SDKROOT = iphoneos; 401 SDKROOT = iphoneos;
285 VALIDATE_PRODUCT = YES; 402 VALIDATE_PRODUCT = YES;
286 }; 403 };
@@ -297,7 +414,6 @@ @@ -297,7 +414,6 @@
297 INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)"; 414 INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
298 OTHER_LDFLAGS = "-ObjC"; 415 OTHER_LDFLAGS = "-ObjC";
299 PRODUCT_NAME = "$(TARGET_NAME)"; 416 PRODUCT_NAME = "$(TARGET_NAME)";
300 - PUBLIC_HEADERS_FOLDER_PATH = "../../Headers/$(TARGET_NAME)";  
301 SKIP_INSTALL = YES; 417 SKIP_INSTALL = YES;
302 }; 418 };
303 name = Debug; 419 name = Debug;
@@ -313,7 +429,6 @@ @@ -313,7 +429,6 @@
313 INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)"; 429 INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
314 OTHER_LDFLAGS = "-ObjC"; 430 OTHER_LDFLAGS = "-ObjC";
315 PRODUCT_NAME = "$(TARGET_NAME)"; 431 PRODUCT_NAME = "$(TARGET_NAME)";
316 - PUBLIC_HEADERS_FOLDER_PATH = "../../Headers/$(TARGET_NAME)";  
317 SKIP_INSTALL = YES; 432 SKIP_INSTALL = YES;
318 }; 433 };
319 name = Release; 434 name = Release;
@@ -321,6 +436,15 @@ @@ -321,6 +436,15 @@
321 /* End XCBuildConfiguration section */ 436 /* End XCBuildConfiguration section */
322 437
323 /* Begin XCConfigurationList section */ 438 /* Begin XCConfigurationList section */
  439 + 53761322155AD0D5005750A4 /* Build configuration list for PBXNativeTarget "SDWebImage ARC" */ = {
  440 + isa = XCConfigurationList;
  441 + buildConfigurations = (
  442 + 53761323155AD0D5005750A4 /* Debug */,
  443 + 53761324155AD0D5005750A4 /* Release */,
  444 + );
  445 + defaultConfigurationIsVisible = 0;
  446 + defaultConfigurationName = Release;
  447 + };
324 53922D69148C55810056699D /* Build configuration list for PBXProject "SDWebImage" */ = { 448 53922D69148C55810056699D /* Build configuration list for PBXProject "SDWebImage" */ = {
325 isa = XCConfigurationList; 449 isa = XCConfigurationList;
326 buildConfigurations = ( 450 buildConfigurations = (