diff --git a/PPSwiftGifsExample/PPSwiftGifs/Info.plist b/PPSwiftGifsExample/PPSwiftGifs/Info.plist
index d4b0263..d3de8ee 100644
--- a/PPSwiftGifsExample/PPSwiftGifs/Info.plist
+++ b/PPSwiftGifsExample/PPSwiftGifs/Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
$(EXECUTABLE_NAME)
CFBundleIdentifier
- Prokop.$(PRODUCT_NAME:rfc1034identifier)
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundleName
diff --git a/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/project.pbxproj b/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/project.pbxproj
index 523bf3b..9899d63 100644
--- a/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/project.pbxproj
+++ b/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/project.pbxproj
@@ -303,7 +303,7 @@
0D748ECF1A0E17AB00B280FF /* Project object */ = {
isa = PBXProject;
attributes = {
- LastUpgradeCheck = 0610;
+ LastUpgradeCheck = 1220;
ORGANIZATIONNAME = "Peter Prokop";
TargetAttributes = {
0D748ED61A0E17AB00B280FF = {
@@ -323,10 +323,9 @@
};
buildConfigurationList = 0D748ED21A0E17AB00B280FF /* Build configuration list for PBXProject "PPSwiftGifsExample" */;
compatibilityVersion = "Xcode 3.2";
- developmentRegion = English;
+ developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
- English,
en,
Base,
);
@@ -453,24 +452,38 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
COPY_PHASE_STRIP = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
@@ -496,17 +509,29 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
@@ -514,6 +539,7 @@
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
@@ -523,6 +549,7 @@
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_VERSION = 5.0;
VALIDATE_PRODUCT = YES;
};
@@ -534,8 +561,9 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
INFOPLIST_FILE = PPSwiftGifsExample/Info.plist;
- IPHONEOS_DEPLOYMENT_TARGET = 7.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+ PRODUCT_BUNDLE_IDENTIFIER = "SwiftGifs.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "PPSwiftGifsExample/PPSwiftGifsExample-Bridging-Header.h";
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
@@ -548,8 +576,9 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
INFOPLIST_FILE = PPSwiftGifsExample/Info.plist;
- IPHONEOS_DEPLOYMENT_TARGET = 7.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+ PRODUCT_BUNDLE_IDENTIFIER = "SwiftGifs.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "PPSwiftGifsExample/PPSwiftGifsExample-Bridging-Header.h";
};
@@ -569,6 +598,7 @@
);
INFOPLIST_FILE = PPSwiftGifsExampleTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+ PRODUCT_BUNDLE_IDENTIFIER = "SwiftGifs.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/PPSwiftGifsExample.app/PPSwiftGifsExample";
};
@@ -584,6 +614,7 @@
);
INFOPLIST_FILE = PPSwiftGifsExampleTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+ PRODUCT_BUNDLE_IDENTIFIER = "SwiftGifs.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/PPSwiftGifsExample.app/PPSwiftGifsExample";
};
@@ -658,8 +689,9 @@
"$(inherited)",
);
INFOPLIST_FILE = PPSwiftGifsTests/Info.plist;
- IPHONEOS_DEPLOYMENT_TARGET = 8.3;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+ PRODUCT_BUNDLE_IDENTIFIER = "Prokop.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
@@ -675,8 +707,9 @@
);
GCC_NO_COMMON_BLOCKS = YES;
INFOPLIST_FILE = PPSwiftGifsTests/Info.plist;
- IPHONEOS_DEPLOYMENT_TARGET = 8.3;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+ PRODUCT_BUNDLE_IDENTIFIER = "Prokop.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
diff --git a/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/xcshareddata/xcschemes/PPSwiftGifs.xcscheme b/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/xcshareddata/xcschemes/PPSwiftGifs.xcscheme
index b88dab1..b2c6156 100644
--- a/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/xcshareddata/xcschemes/PPSwiftGifs.xcscheme
+++ b/PPSwiftGifsExample/PPSwiftGifsExample.xcodeproj/xcshareddata/xcschemes/PPSwiftGifs.xcscheme
@@ -1,6 +1,6 @@
+ shouldUseLaunchSchemeArgsEnv = "YES">
+
+
+
+
@@ -53,24 +62,16 @@
-
-
-
-
-
-
CFBundleExecutable
$(EXECUTABLE_NAME)
CFBundleIdentifier
- SwiftGifs.$(PRODUCT_NAME:rfc1034identifier)
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundleName
diff --git a/PPSwiftGifsExample/PPSwiftGifsExampleTests/Info.plist b/PPSwiftGifsExample/PPSwiftGifsExampleTests/Info.plist
index cbd92b2..ba72822 100644
--- a/PPSwiftGifsExample/PPSwiftGifsExampleTests/Info.plist
+++ b/PPSwiftGifsExample/PPSwiftGifsExampleTests/Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
$(EXECUTABLE_NAME)
CFBundleIdentifier
- SwiftGifs.$(PRODUCT_NAME:rfc1034identifier)
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundleName
diff --git a/PPSwiftGifsExample/PPSwiftGifsTests/Info.plist b/PPSwiftGifsExample/PPSwiftGifsTests/Info.plist
index 41f0c76..ba72822 100644
--- a/PPSwiftGifsExample/PPSwiftGifsTests/Info.plist
+++ b/PPSwiftGifsExample/PPSwiftGifsTests/Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
$(EXECUTABLE_NAME)
CFBundleIdentifier
- Prokop.$(PRODUCT_NAME:rfc1034identifier)
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundleName
diff --git a/README.md b/README.md
index 2f325b4..969f3ee 100644
--- a/README.md
+++ b/README.md
@@ -24,28 +24,22 @@ PPSwiftGifs provides a convenient way to show animated GIF images as a part of i
## Requirements
-Swift 2.0:
-Use [swift-2.0 branch](https://github.com/peterprokop/PPSwiftGifs/tree/swift-2.0)
-- iOS 7.0+ (iOS 8.0+ if you use Carthage)
-- Xcode 7.0+
-
-Swift 1.2:
-- iOS 7.0+ (iOS 8.0+ if you use Carthage)
-- Xcode 6.3+
-
-Swift 1.1:
-Use [swift-1.1 branch](https://github.com/peterprokop/PPSwiftGifs/tree/swift-1.1)
-- iOS 7.0+
-- Xcode 6.1-6.2
+Swift 5. For older Swift versions please check previous releases.
## Usage
-```
-imageView.image = PPSwiftGifs.animatedImageWithGIFNamed("gif_name")
+```swift
+imageView.image = PPSwiftGifs.animatedImageWithGIF(named: "gif_name")
```
(File named "gif_name.gif" should be present in your project and copied as a bundle resource.
-As far as I know, you can't add GIFs to asset catalogs.)
+Currently you can't add GIFs to asset catalogs.)
+
+Alternatively, you can construct animated image from data:
+```swift
+imageView.image = PPSwiftGifs.animatedImageWithGIF(data: data)
+```
+
## Author(s)