Browse Source

完善版本

zzb 4 years ago
parent
commit
2b743f78ab

+ 2 - 2
Example/Podfile.lock

@@ -1,6 +1,6 @@
 PODS:
   - Kiwi (3.0.0)
-  - ZZFoundation (0.1.0)
+  - ZZFoundation (0.1.2)
 
 DEPENDENCIES:
   - Kiwi
@@ -16,7 +16,7 @@ EXTERNAL SOURCES:
 
 SPEC CHECKSUMS:
   Kiwi: fbeafef0f00e4d8f7dcb3420a4930afe70af77f7
-  ZZFoundation: 8eb8a86db13fc12217dcf3b92e94914c4ae7d829
+  ZZFoundation: 6a95397beaab8bf75160a004c21e8d2c7f769473
 
 PODFILE CHECKSUM: 0add32887ca0be5d564b931217e4042cda8f56b5
 

+ 2 - 2
Example/Pods/Local Podspecs/ZZFoundation.podspec.json

@@ -1,6 +1,6 @@
 {
   "name": "ZZFoundation",
-  "version": "0.1.0",
+  "version": "0.1.2",
   "summary": "基础版本.",
   "description": "TODO: Add long description of the pod here.",
   "homepage": "https://github.com/Ox8BADFOOD/ZZFoundation",
@@ -13,7 +13,7 @@
   },
   "source": {
     "git": "https://github.com/Ox8BADFOOD/ZZFoundation.git",
-    "tag": "0.1.0"
+    "tag": "0.1.2"
   },
   "platforms": {
     "ios": "9.0"

+ 2 - 2
Example/Pods/Manifest.lock

@@ -1,6 +1,6 @@
 PODS:
   - Kiwi (3.0.0)
-  - ZZFoundation (0.1.0)
+  - ZZFoundation (0.1.2)
 
 DEPENDENCIES:
   - Kiwi
@@ -16,7 +16,7 @@ EXTERNAL SOURCES:
 
 SPEC CHECKSUMS:
   Kiwi: fbeafef0f00e4d8f7dcb3420a4930afe70af77f7
-  ZZFoundation: 8eb8a86db13fc12217dcf3b92e94914c4ae7d829
+  ZZFoundation: 6a95397beaab8bf75160a004c21e8d2c7f769473
 
 PODFILE CHECKSUM: 0add32887ca0be5d564b931217e4042cda8f56b5
 

File diff suppressed because it is too large
+ 332 - 318
Example/Pods/Pods.xcodeproj/project.pbxproj


+ 1 - 1
Example/Pods/Target Support Files/ZZFoundation/ZZFoundation-Info.plist

@@ -15,7 +15,7 @@
   <key>CFBundlePackageType</key>
   <string>FMWK</string>
   <key>CFBundleShortVersionString</key>
-  <string>0.1.0</string>
+  <string>0.1.2</string>
   <key>CFBundleSignature</key>
   <string>????</string>
   <key>CFBundleVersion</key>

+ 2 - 0
Example/Pods/Target Support Files/ZZFoundation/ZZFoundation-umbrella.h

@@ -26,7 +26,9 @@
 #import "NSString+ZZRegex.h"
 #import "ZZSecurity.h"
 #import "ZZFoundation_String.h"
+#import "ZZClass.h"
 #import "ZZFoundation.h"
+#import "ZZWeakify.h"
 
 FOUNDATION_EXPORT double ZZFoundationVersionNumber;
 FOUNDATION_EXPORT const unsigned char ZZFoundationVersionString[];

+ 1 - 0
Example/Tests/NSString+ZZExTest.m

@@ -23,6 +23,7 @@ NSString * characterNum = @"Zz1232131321";
 
 describe(@"split", ^{
     it(@"emptyStr should passCheck", ^{
+        
         [[theValue([emptyStr ZZEmpty]) should] beYes];
 //        [[theValue([emptyStr1 ZZEmpty]) should] beYes];
         [[theValue([emptyStr2 ZZEmpty]) should] beYes];

+ 18 - 0
Example/ZZFoundation.xcodeproj/project.pbxproj

@@ -12,6 +12,8 @@
 		505478422596352F00EB1172 /* NSString+ZZRangeTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 505478412596352F00EB1172 /* NSString+ZZRangeTest.m */; };
 		5054784D25963E9A00EB1172 /* NSString+ZZRegexTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 5054784C25963E9A00EB1172 /* NSString+ZZRegexTest.m */; };
 		50563647259B12FC004C7FCF /* NSDate+ZZExTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 50563646259B12FC004C7FCF /* NSDate+ZZExTest.m */; };
+		5082D62B25AC5BBF005B836B /* ZZSwiftClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5082D62A25AC5BBF005B836B /* ZZSwiftClass.swift */; };
+		5082D62C25AC5C81005B836B /* ZZSwiftClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5082D62A25AC5BBF005B836B /* ZZSwiftClass.swift */; };
 		6003F58E195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; };
 		6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58F195388D20070C39A /* CoreGraphics.framework */; };
 		6003F592195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; };
@@ -47,6 +49,8 @@
 		505478412596352F00EB1172 /* NSString+ZZRangeTest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSString+ZZRangeTest.m"; sourceTree = "<group>"; };
 		5054784C25963E9A00EB1172 /* NSString+ZZRegexTest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSString+ZZRegexTest.m"; sourceTree = "<group>"; };
 		50563646259B12FC004C7FCF /* NSDate+ZZExTest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSDate+ZZExTest.m"; sourceTree = "<group>"; };
+		5082D62925AC5BBE005B836B /* ZZFoundation_Example-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ZZFoundation_Example-Bridging-Header.h"; sourceTree = "<group>"; };
+		5082D62A25AC5BBF005B836B /* ZZSwiftClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZZSwiftClass.swift; sourceTree = "<group>"; };
 		6003F58A195388D20070C39A /* ZZFoundation_Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ZZFoundation_Example.app; sourceTree = BUILT_PRODUCTS_DIR; };
 		6003F58D195388D20070C39A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
 		6003F58F195388D20070C39A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
@@ -141,9 +145,11 @@
 				873B8AEA1B1F5CCA007FD442 /* Main.storyboard */,
 				6003F5A5195388D20070C39A /* ZZViewController.h */,
 				6003F5A6195388D20070C39A /* ZZViewController.m */,
+				5082D62A25AC5BBF005B836B /* ZZSwiftClass.swift */,
 				71719F9D1E33DC2100824A3D /* LaunchScreen.storyboard */,
 				6003F5A8195388D20070C39A /* Images.xcassets */,
 				6003F594195388D20070C39A /* Supporting Files */,
+				5082D62925AC5BBE005B836B /* ZZFoundation_Example-Bridging-Header.h */,
 			);
 			name = "Example for ZZFoundation";
 			path = ZZFoundation;
@@ -248,6 +254,7 @@
 				TargetAttributes = {
 					6003F589195388D20070C39A = {
 						DevelopmentTeam = 977DUNW73S;
+						LastSwiftMigration = 1170;
 					};
 					6003F5AD195388D20070C39A = {
 						DevelopmentTeam = 977DUNW73S;
@@ -387,6 +394,7 @@
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
+				5082D62B25AC5BBF005B836B /* ZZSwiftClass.swift in Sources */,
 				6003F59E195388D20070C39A /* ZZAppDelegate.m in Sources */,
 				6003F5A7195388D20070C39A /* ZZViewController.m in Sources */,
 				6003F59A195388D20070C39A /* main.m in Sources */,
@@ -397,6 +405,7 @@
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
+				5082D62C25AC5C81005B836B /* ZZSwiftClass.swift in Sources */,
 				6003F5BC195388D20070C39A /* NSString+ZZPathTests.m in Sources */,
 				505478422596352F00EB1172 /* NSString+ZZRangeTest.m in Sources */,
 				50563647259B12FC004C7FCF /* NSDate+ZZExTest.m in Sources */,
@@ -521,13 +530,17 @@
 			baseConfigurationReference = 43EAEC7ADAA0051551EC0B07 /* Pods-ZZFoundation_Example.debug.xcconfig */;
 			buildSettings = {
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+				CLANG_ENABLE_MODULES = YES;
 				DEVELOPMENT_TEAM = 977DUNW73S;
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
 				GCC_PREFIX_HEADER = "ZZFoundation/ZZFoundation-Prefix.pch";
 				INFOPLIST_FILE = "ZZFoundation/ZZFoundation-Info.plist";
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
 				MODULE_NAME = ExampleApp;
 				PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}";
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				SWIFT_OBJC_BRIDGING_HEADER = "ZZFoundation/ZZFoundation_Example-Bridging-Header.h";
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
 				SWIFT_VERSION = 4.0;
 				WRAPPER_EXTENSION = app;
 			};
@@ -538,13 +551,16 @@
 			baseConfigurationReference = D21B953AED72739FA73F9573 /* Pods-ZZFoundation_Example.release.xcconfig */;
 			buildSettings = {
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+				CLANG_ENABLE_MODULES = YES;
 				DEVELOPMENT_TEAM = 977DUNW73S;
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
 				GCC_PREFIX_HEADER = "ZZFoundation/ZZFoundation-Prefix.pch";
 				INFOPLIST_FILE = "ZZFoundation/ZZFoundation-Info.plist";
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
 				MODULE_NAME = ExampleApp;
 				PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}";
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				SWIFT_OBJC_BRIDGING_HEADER = "ZZFoundation/ZZFoundation_Example-Bridging-Header.h";
 				SWIFT_VERSION = 4.0;
 				WRAPPER_EXTENSION = app;
 			};
@@ -554,6 +570,7 @@
 			isa = XCBuildConfiguration;
 			baseConfigurationReference = B1FA23B46676C8044117B258 /* Pods-ZZFoundation_Tests.debug.xcconfig */;
 			buildSettings = {
+				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				DEVELOPMENT_TEAM = 977DUNW73S;
 				FRAMEWORK_SEARCH_PATHS = (
@@ -580,6 +597,7 @@
 			isa = XCBuildConfiguration;
 			baseConfigurationReference = CFB9F0CDCDE27F996E0D538E /* Pods-ZZFoundation_Tests.release.xcconfig */;
 			buildSettings = {
+				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				DEVELOPMENT_TEAM = 977DUNW73S;
 				FRAMEWORK_SEARCH_PATHS = (

+ 4 - 0
Example/ZZFoundation/ZZFoundation_Example-Bridging-Header.h

@@ -0,0 +1,4 @@
+//
+//  Use this file to import your target's public headers that you would like to expose to Swift.
+//
+

+ 13 - 0
Example/ZZFoundation/ZZSwiftClass.swift

@@ -0,0 +1,13 @@
+//
+//  ZZSwiftClass.swift
+//  ZZFoundation_Example
+//
+//  Created by Max on 2021/1/11.
+//  Copyright © 2021 bymiracles@163.com. All rights reserved.
+//
+
+import UIKit
+
+class ZZSwiftClass: NSObject {
+
+}

+ 3 - 1
Example/ZZFoundation/ZZViewController.m

@@ -7,7 +7,8 @@
 //
 
 #import "ZZViewController.h"
-
+#import "ZZFoundation_Example-Swift.h"
+#import <ZZFoundation/ZZFoundation.h>
 @interface ZZViewController ()
 
 @end
@@ -18,6 +19,7 @@
 {
     [super viewDidLoad];
 	// Do any additional setup after loading the view, typically from a nib.
+    NSLog(@"%@",zz_getObjClass([ZZSwiftClass new]));
 }
 
 - (void)didReceiveMemoryWarning

+ 1 - 1
ZZFoundation.podspec

@@ -8,7 +8,7 @@
 
 Pod::Spec.new do |s|
   s.name             = 'ZZFoundation'
-  s.version          = '0.1.1'
+  s.version          = '0.1.3'
   s.summary          = '基础版本.'
 
 # This description is used to generate tags and improve search results.

+ 13 - 0
ZZFoundation/Classes/BaseTool/ZZClass.h

@@ -0,0 +1,13 @@
+//
+//  ZZClass.h
+//  Kiwi
+//
+//  Created by Max on 2021/1/11.
+//
+
+#import <Foundation/Foundation.h>
+
+/// 获取object的类名兼容swift
+/// @param obj 继承NSObject的对象
+NSString * zz_getObjClass(NSObject *obj);
+

+ 12 - 0
ZZFoundation/Classes/BaseTool/ZZClass.m

@@ -0,0 +1,12 @@
+//
+//  ZZClass.m
+//  Kiwi
+//
+//  Created by Max on 2021/1/11.
+//
+
+#import "ZZClass.h"
+
+NSString * zz_getObjClass(NSObject *obj){
+    return [NSStringFromClass([obj class]) componentsSeparatedByString:@"."].lastObject;
+};

+ 45 - 0
ZZFoundation/Classes/BaseTool/ZZWeakify.h

@@ -0,0 +1,45 @@
+//
+//  ZZWeakify.h
+//  ShareBeauty
+//
+//  Created by ZZBB on 2020/8/8.
+//  Copyright © 2020 yuepinyuemei. All rights reserved.
+//
+
+#ifndef ZZWeakify_h
+#define ZZWeakify_h
+
+#ifndef weakify
+    #if DEBUG
+        #if __has_feature(objc_arc)
+            #define weakify(object) autoreleasepool{} __weak __typeof__(object) weak##_##object = object;
+        #else
+            #define weakify(object) autoreleasepool{} __block __typeof__(object) block##_##object = object;
+        #endif
+    #else
+        #if __has_feature(objc_arc)
+            #define weakify(object) try{} @finally{} {} __weak __typeof__(object) weak##_##object = object;
+        #else
+            #define weakify(object) try{} @finally{} {} __block __typeof__(object) block##_##object = object;
+        #endif
+    #endif
+#endif
+
+
+#ifndef strongify
+    #if DEBUG
+        #if __has_feature(objc_arc)
+            #define strongify(object) autoreleasepool{} __typeof__(object) object = weak##_##object;
+        #else
+            #define strongify(object) autoreleasepool{} __typeof__(object) object = block##_##object;
+        #endif
+    #else
+        #if __has_feature(objc_arc)
+            #define strongify(object) try{} @finally{} __typeof__(object) object = weak##_##object;
+        #else
+            #define strongify(object) try{} @finally{} __typeof__(object) object = block##_##object;
+        #endif
+    #endif
+#endif
+
+#endif /* ZZWeakify_h */

+ 2 - 0
ZZFoundation/Classes/ZZFoundation.h

@@ -7,6 +7,8 @@
 
 #ifndef ZZFoundation_h
 #define ZZFoundation_h
+#import "ZZClass.h"
+#import "ZZWeakify.h"
 
 #import "ZZFoundation_String.h"
 #import "ZZFoundation_Date.h"