Commit 22b03300fcc2499ef5e744102b927a1e21b43be5
0 parents
Exists in
master
create Activity
Showing 18 changed files with 999 additions and 0 deletions Inline Diff
- GameActivitySDK.framework/GameActivitySDK
- GameActivitySDK.framework/Headers
- GameActivitySDK.framework/Versions/A/GameActivitySDK
- GameActivitySDK.framework/Versions/A/Headers/LetsGameActivityAPI.h
- GameActivitySDK.framework/Versions/Current
- GameActivitySDK.xcodeproj/project.pbxproj
- GameActivitySDK.xcodeproj/project.xcworkspace/contents.xcworkspacedata
- GameActivitySDK.xcodeproj/project.xcworkspace/xcuserdata/yanglele.xcuserdatad/UserInterfaceState.xcuserstate
- GameActivitySDK.xcodeproj/xcuserdata/yanglele.xcuserdatad/xcschemes/GameActivitySDK.framework.xcscheme
- GameActivitySDK.xcodeproj/xcuserdata/yanglele.xcuserdatad/xcschemes/xcschememanagement.plist
- GameActivitySDK/LSGColor.h
- GameActivitySDK/LSGColor.m
- GameActivitySDK/LSGGameActivityViewController.h
- GameActivitySDK/LSGGameActivityViewController.m
- GameActivitySDK/LSGMacros.h
- GameActivitySDK/LSGUrl.h
- GameActivitySDK/LetsGameActivityAPI.h
- GameActivitySDK/LetsGameActivityAPI.m
GameActivitySDK.framework/GameActivitySDK
| File was created | 1 | Versions/Current/GameActivitySDK |
GameActivitySDK.framework/Headers
| File was created | 1 | Versions/Current/Headers |
GameActivitySDK.framework/Versions/A/GameActivitySDK
No preview for this file type
GameActivitySDK.framework/Versions/A/Headers/LetsGameActivityAPI.h
| File was created | 1 | // | |
| 2 | // LetsGameActivityAPI.h | ||
| 3 | // GameActivitySDK | ||
| 4 | // | ||
| 5 | // Created by yanglele on 2018/6/11. | ||
| 6 | // Copyright © 2018年 alexYang. All rights reserved. | ||
| 7 | // | ||
| 8 | |||
| 9 | #import <Foundation/Foundation.h> | ||
| 10 | #import <UIKit/UIKit.h> | ||
| 11 | |||
| 12 | static NSString *actVersion = @"1.0.1"; | ||
| 13 | |||
| 14 | @interface LetsGameActivityAPI : NSObject<UIApplicationDelegate> | ||
| 15 | |||
| 16 | @property(nonatomic, assign) int isDebug; | ||
| 17 | |||
| 18 | +(instancetype)instance; | ||
| 19 | |||
| 20 | - (void)hide; | ||
| 21 | |||
| 22 | -(void)decideIsDebug:(int)isDebug; | ||
| 23 | |||
| 24 | -(void)GameActivityWithParaDictory:(NSDictionary *)paraDictory handleCallBackL:(void(^)(void))accomplistCallBack; | ||
| 25 | |||
| 26 | @end | ||
| 27 |
GameActivitySDK.framework/Versions/Current
No preview for this file type
GameActivitySDK.xcodeproj/project.pbxproj
| File was created | 1 | // !$*UTF8*$! | |
| 2 | { | ||
| 3 | archiveVersion = 1; | ||
| 4 | classes = { | ||
| 5 | }; | ||
| 6 | objectVersion = 48; | ||
| 7 | objects = { | ||
| 8 | |||
| 9 | /* Begin PBXAggregateTarget section */ | ||
| 10 | 752CAD6920CE2B37003C3840 /* GameActivitySDK.framework */ = { | ||
| 11 | isa = PBXAggregateTarget; | ||
| 12 | buildConfigurationList = 752CAD6A20CE2B37003C3840 /* Build configuration list for PBXAggregateTarget "GameActivitySDK.framework" */; | ||
| 13 | buildPhases = ( | ||
| 14 | 752CAD6F20CE2B7C003C3840 /* ShellScript */, | ||
| 15 | ); | ||
| 16 | dependencies = ( | ||
| 17 | 752CAD7120CE2B94003C3840 /* PBXTargetDependency */, | ||
| 18 | ); | ||
| 19 | name = GameActivitySDK.framework; | ||
| 20 | productName = GameActivitySDK.framework; | ||
| 21 | }; | ||
| 22 | /* End PBXAggregateTarget section */ | ||
| 23 | |||
| 24 | /* Begin PBXBuildFile section */ | ||
| 25 | 752CAD7520CE2BF9003C3840 /* LetsGameActivityAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 752CAD7420CE2BF9003C3840 /* LetsGameActivityAPI.m */; }; | ||
| 26 | 752CAD7820CE4010003C3840 /* LetsGameActivityAPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 752CAD7320CE2BF9003C3840 /* LetsGameActivityAPI.h */; settings = {ATTRIBUTES = (Public, ); }; }; | ||
| 27 | 752CAD7B20CE4515003C3840 /* LSGGameActivityViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 752CAD7920CE4515003C3840 /* LSGGameActivityViewController.h */; }; | ||
| 28 | 752CAD7C20CE4515003C3840 /* LSGGameActivityViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 752CAD7A20CE4515003C3840 /* LSGGameActivityViewController.m */; }; | ||
| 29 | 752CAD7F20CE45C3003C3840 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 752CAD7E20CE45C3003C3840 /* UIKit.framework */; }; | ||
| 30 | 752CAD8120CE45CB003C3840 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 752CAD8020CE45CB003C3840 /* Foundation.framework */; }; | ||
| 31 | 75A510D920CF61E5008A4F04 /* LetsGameActivityAPI.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 752CAD7320CE2BF9003C3840 /* LetsGameActivityAPI.h */; }; | ||
| 32 | 75A510DC20CF65E0008A4F04 /* LSGColor.h in Headers */ = {isa = PBXBuildFile; fileRef = 75A510DA20CF65E0008A4F04 /* LSGColor.h */; }; | ||
| 33 | 75A510DD20CF65E0008A4F04 /* LSGColor.m in Sources */ = {isa = PBXBuildFile; fileRef = 75A510DB20CF65E0008A4F04 /* LSGColor.m */; }; | ||
| 34 | /* End PBXBuildFile section */ | ||
| 35 | |||
| 36 | /* Begin PBXContainerItemProxy section */ | ||
| 37 | 752CAD7020CE2B94003C3840 /* PBXContainerItemProxy */ = { | ||
| 38 | isa = PBXContainerItemProxy; | ||
| 39 | containerPortal = 752CAD5520CE2AEE003C3840 /* Project object */; | ||
| 40 | proxyType = 1; | ||
| 41 | remoteGlobalIDString = 752CAD5C20CE2AEE003C3840; | ||
| 42 | remoteInfo = GameActivitySDK; | ||
| 43 | }; | ||
| 44 | /* End PBXContainerItemProxy section */ | ||
| 45 | |||
| 46 | /* Begin PBXCopyFilesBuildPhase section */ | ||
| 47 | 752CAD5B20CE2AEE003C3840 /* CopyFiles */ = { | ||
| 48 | isa = PBXCopyFilesBuildPhase; | ||
| 49 | buildActionMask = 2147483647; | ||
| 50 | dstPath = "include/$(PRODUCT_NAME)"; | ||
| 51 | dstSubfolderSpec = 16; | ||
| 52 | files = ( | ||
| 53 | 75A510D920CF61E5008A4F04 /* LetsGameActivityAPI.h in CopyFiles */, | ||
| 54 | ); | ||
| 55 | runOnlyForDeploymentPostprocessing = 0; | ||
| 56 | }; | ||
| 57 | /* End PBXCopyFilesBuildPhase section */ | ||
| 58 | |||
| 59 | /* Begin PBXFileReference section */ | ||
| 60 | 752CAD5D20CE2AEE003C3840 /* libGameActivitySDK.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libGameActivitySDK.a; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 61 | 752CAD7320CE2BF9003C3840 /* LetsGameActivityAPI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LetsGameActivityAPI.h; sourceTree = "<group>"; }; | ||
| 62 | 752CAD7420CE2BF9003C3840 /* LetsGameActivityAPI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LetsGameActivityAPI.m; sourceTree = "<group>"; }; | ||
| 63 | 752CAD7920CE4515003C3840 /* LSGGameActivityViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LSGGameActivityViewController.h; sourceTree = "<group>"; }; | ||
| 64 | 752CAD7A20CE4515003C3840 /* LSGGameActivityViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LSGGameActivityViewController.m; sourceTree = "<group>"; }; | ||
| 65 | 752CAD7E20CE45C3003C3840 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; | ||
| 66 | 752CAD8020CE45CB003C3840 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; | ||
| 67 | 752CAD8520CE4C17003C3840 /* LSGUrl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LSGUrl.h; sourceTree = "<group>"; }; | ||
| 68 | 752CAD8620CE59C5003C3840 /* LSGMacros.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LSGMacros.h; sourceTree = "<group>"; }; | ||
| 69 | 75A510DA20CF65E0008A4F04 /* LSGColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LSGColor.h; sourceTree = "<group>"; }; | ||
| 70 | 75A510DB20CF65E0008A4F04 /* LSGColor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LSGColor.m; sourceTree = "<group>"; }; | ||
| 71 | /* End PBXFileReference section */ | ||
| 72 | |||
| 73 | /* Begin PBXFrameworksBuildPhase section */ | ||
| 74 | 752CAD5A20CE2AEE003C3840 /* Frameworks */ = { | ||
| 75 | isa = PBXFrameworksBuildPhase; | ||
| 76 | buildActionMask = 2147483647; | ||
| 77 | files = ( | ||
| 78 | 752CAD8120CE45CB003C3840 /* Foundation.framework in Frameworks */, | ||
| 79 | 752CAD7F20CE45C3003C3840 /* UIKit.framework in Frameworks */, | ||
| 80 | ); | ||
| 81 | runOnlyForDeploymentPostprocessing = 0; | ||
| 82 | }; | ||
| 83 | /* End PBXFrameworksBuildPhase section */ | ||
| 84 | |||
| 85 | /* Begin PBXGroup section */ | ||
| 86 | 752CAD5420CE2AEE003C3840 = { | ||
| 87 | isa = PBXGroup; | ||
| 88 | children = ( | ||
| 89 | 752CAD5F20CE2AEE003C3840 /* GameActivitySDK */, | ||
| 90 | 752CAD5E20CE2AEE003C3840 /* Products */, | ||
| 91 | 752CAD7D20CE45C3003C3840 /* Frameworks */, | ||
| 92 | ); | ||
| 93 | sourceTree = "<group>"; | ||
| 94 | }; | ||
| 95 | 752CAD5E20CE2AEE003C3840 /* Products */ = { | ||
| 96 | isa = PBXGroup; | ||
| 97 | children = ( | ||
| 98 | 752CAD5D20CE2AEE003C3840 /* libGameActivitySDK.a */, | ||
| 99 | ); | ||
| 100 | name = Products; | ||
| 101 | sourceTree = "<group>"; | ||
| 102 | }; | ||
| 103 | 752CAD5F20CE2AEE003C3840 /* GameActivitySDK */ = { | ||
| 104 | isa = PBXGroup; | ||
| 105 | children = ( | ||
| 106 | 75A510DA20CF65E0008A4F04 /* LSGColor.h */, | ||
| 107 | 75A510DB20CF65E0008A4F04 /* LSGColor.m */, | ||
| 108 | 752CAD7920CE4515003C3840 /* LSGGameActivityViewController.h */, | ||
| 109 | 752CAD7A20CE4515003C3840 /* LSGGameActivityViewController.m */, | ||
| 110 | 752CAD7320CE2BF9003C3840 /* LetsGameActivityAPI.h */, | ||
| 111 | 752CAD7420CE2BF9003C3840 /* LetsGameActivityAPI.m */, | ||
| 112 | 752CAD8520CE4C17003C3840 /* LSGUrl.h */, | ||
| 113 | 752CAD8620CE59C5003C3840 /* LSGMacros.h */, | ||
| 114 | ); | ||
| 115 | path = GameActivitySDK; | ||
| 116 | sourceTree = "<group>"; | ||
| 117 | }; | ||
| 118 | 752CAD7D20CE45C3003C3840 /* Frameworks */ = { | ||
| 119 | isa = PBXGroup; | ||
| 120 | children = ( | ||
| 121 | 752CAD8020CE45CB003C3840 /* Foundation.framework */, | ||
| 122 | 752CAD7E20CE45C3003C3840 /* UIKit.framework */, | ||
| 123 | ); | ||
| 124 | name = Frameworks; | ||
| 125 | sourceTree = "<group>"; | ||
| 126 | }; | ||
| 127 | /* End PBXGroup section */ | ||
| 128 | |||
| 129 | /* Begin PBXHeadersBuildPhase section */ | ||
| 130 | 752CAD7620CE3FFE003C3840 /* Headers */ = { | ||
| 131 | isa = PBXHeadersBuildPhase; | ||
| 132 | buildActionMask = 2147483647; | ||
| 133 | files = ( | ||
| 134 | 752CAD7820CE4010003C3840 /* LetsGameActivityAPI.h in Headers */, | ||
| 135 | 75A510DC20CF65E0008A4F04 /* LSGColor.h in Headers */, | ||
| 136 | 752CAD7B20CE4515003C3840 /* LSGGameActivityViewController.h in Headers */, | ||
| 137 | ); | ||
| 138 | runOnlyForDeploymentPostprocessing = 0; | ||
| 139 | }; | ||
| 140 | /* End PBXHeadersBuildPhase section */ | ||
| 141 | |||
| 142 | /* Begin PBXNativeTarget section */ | ||
| 143 | 752CAD5C20CE2AEE003C3840 /* GameActivitySDK */ = { | ||
| 144 | isa = PBXNativeTarget; | ||
| 145 | buildConfigurationList = 752CAD6620CE2AEE003C3840 /* Build configuration list for PBXNativeTarget "GameActivitySDK" */; | ||
| 146 | buildPhases = ( | ||
| 147 | 752CAD5920CE2AEE003C3840 /* Sources */, | ||
| 148 | 752CAD5A20CE2AEE003C3840 /* Frameworks */, | ||
| 149 | 752CAD5B20CE2AEE003C3840 /* CopyFiles */, | ||
| 150 | 752CAD6D20CE2B52003C3840 /* ShellScript */, | ||
| 151 | 752CAD7620CE3FFE003C3840 /* Headers */, | ||
| 152 | ); | ||
| 153 | buildRules = ( | ||
| 154 | ); | ||
| 155 | dependencies = ( | ||
| 156 | ); | ||
| 157 | name = GameActivitySDK; | ||
| 158 | productName = GameActivitySDK; | ||
| 159 | productReference = 752CAD5D20CE2AEE003C3840 /* libGameActivitySDK.a */; | ||
| 160 | productType = "com.apple.product-type.library.static"; | ||
| 161 | }; | ||
| 162 | /* End PBXNativeTarget section */ | ||
| 163 | |||
| 164 | /* Begin PBXProject section */ | ||
| 165 | 752CAD5520CE2AEE003C3840 /* Project object */ = { | ||
| 166 | isa = PBXProject; | ||
| 167 | attributes = { | ||
| 168 | LastUpgradeCheck = 0900; | ||
| 169 | ORGANIZATIONNAME = alexYang; | ||
| 170 | TargetAttributes = { | ||
| 171 | 752CAD5C20CE2AEE003C3840 = { | ||
| 172 | CreatedOnToolsVersion = 9.0; | ||
| 173 | ProvisioningStyle = Automatic; | ||
| 174 | }; | ||
| 175 | 752CAD6920CE2B37003C3840 = { | ||
| 176 | CreatedOnToolsVersion = 9.0; | ||
| 177 | ProvisioningStyle = Automatic; | ||
| 178 | }; | ||
| 179 | }; | ||
| 180 | }; | ||
| 181 | buildConfigurationList = 752CAD5820CE2AEE003C3840 /* Build configuration list for PBXProject "GameActivitySDK" */; | ||
| 182 | compatibilityVersion = "Xcode 8.0"; | ||
| 183 | developmentRegion = en; | ||
| 184 | hasScannedForEncodings = 0; | ||
| 185 | knownRegions = ( | ||
| 186 | en, | ||
| 187 | ); | ||
| 188 | mainGroup = 752CAD5420CE2AEE003C3840; | ||
| 189 | productRefGroup = 752CAD5E20CE2AEE003C3840 /* Products */; | ||
| 190 | projectDirPath = ""; | ||
| 191 | projectRoot = ""; | ||
| 192 | targets = ( | ||
| 193 | 752CAD5C20CE2AEE003C3840 /* GameActivitySDK */, | ||
| 194 | 752CAD6920CE2B37003C3840 /* GameActivitySDK.framework */, | ||
| 195 | ); | ||
| 196 | }; | ||
| 197 | /* End PBXProject section */ | ||
| 198 | |||
| 199 | /* Begin PBXShellScriptBuildPhase section */ | ||
| 200 | 752CAD6D20CE2B52003C3840 /* ShellScript */ = { | ||
| 201 | isa = PBXShellScriptBuildPhase; | ||
| 202 | buildActionMask = 2147483647; | ||
| 203 | files = ( | ||
| 204 | ); | ||
| 205 | inputPaths = ( | ||
| 206 | ); | ||
| 207 | outputPaths = ( | ||
| 208 | ); | ||
| 209 | runOnlyForDeploymentPostprocessing = 0; | ||
| 210 | shellPath = /bin/sh; | ||
| 211 | shellScript = "set -e\n\nif [ ${DEPLOYMENT_LOCATION} == \"YES\" ]; then\necho \"Deploying, exit\"\nexit 0\nfi\n\nexport FRAMEWORK_LOCN=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework\"\nrm -rf ${FRAMEWORK_LOCN}\n# Create the path to the real Headers die\nmkdir -p \"${FRAMEWORK_LOCN}/Versions/A/Headers\"\n\n# Create the required symlinks\n/bin/ln -sfh A \"${FRAMEWORK_LOCN}/Versions/Current\"\n/bin/ln -sfh Versions/Current/Headers \"${FRAMEWORK_LOCN}/Headers\"\n/bin/ln -sfh \"Versions/Current/${PRODUCT_NAME}\" \\\n\"${FRAMEWORK_LOCN}/${PRODUCT_NAME}\"\n\necho \"taget built dir=${TARGET_BUILD_DIR},public headers path=${PUBLIC_HEADERS_FOLDER_PATH}\"\n# Copy the public headers into the framework\necho \"${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/\"\necho \"${FRAMEWORK_LOCN}/Versions/A/Headers\"\n\n/bin/cp -a \"${TARGET_BUILD_DIR}${PUBLIC_HEADERS_FOLDER_PATH}/\" \\\n\"${FRAMEWORK_LOCN}/Versions/A/Headers\"\n\necho \"Framework built successfully\""; | ||
| 212 | }; | ||
| 213 | 752CAD6F20CE2B7C003C3840 /* ShellScript */ = { | ||
| 214 | isa = PBXShellScriptBuildPhase; | ||
| 215 | buildActionMask = 2147483647; | ||
| 216 | files = ( | ||
| 217 | ); | ||
| 218 | inputPaths = ( | ||
| 219 | ); | ||
| 220 | outputPaths = ( | ||
| 221 | ); | ||
| 222 | runOnlyForDeploymentPostprocessing = 0; | ||
| 223 | shellPath = /bin/sh; | ||
| 224 | shellScript = "set -e\n\n# If we're already inside this script then die\nif [ -n \"$RW_MULTIPLATFORM_BUILD_IN_PROGRESS\" ]; then\nexit 0\nfi\nexport RW_MULTIPLATFORM_BUILD_IN_PROGRESS=1\n\nRW_FRAMEWORK_NAME=${PROJECT_NAME}\nRW_INPUT_STATIC_LIB=\"lib${PROJECT_NAME}.a\"\nRW_FRAMEWORK_LOCATION=\"${BUILT_PRODUCTS_DIR}/${RW_FRAMEWORK_NAME}.framework\"\n#RW_BUNDLE_NAME=\"VKSdkResources\"\n\n\nfunction build_static_library {\n # Will rebuild the static library as specified\n # build_static_library sdk\n xcrun xcodebuild -project \"${PROJECT_FILE_PATH}\" \\\n -target \"${TARGET_NAME}\" \\\n -configuration \"${CONFIGURATION}\" \\\n -sdk \"${1}\" \\\n ONLY_ACTIVE_ARCH=NO \\\n BUILD_DIR=\"${BUILD_DIR}\" \\\n OBJROOT=\"${OBJROOT}\" \\\n BUILD_ROOT=\"${BUILD_ROOT}\" \\\n SYMROOT=\"${SYMROOT}\" $ACTION\n}\n\nfunction make_fat_library {\n # Will smash 2 static libs together\n # make_fat_library in1 in2 out\n #xcrun\n lipo -create \"${1}\" \"${2}\" -output \"${3}\"\n}\n\n\n# 1 - Extract the platform (iphoneos/iphonesimulator) from the SDK name\nif [[ \"$SDK_NAME\" =~ ([A-Za-z]+) ]]; then\nRW_SDK_PLATFORM=${BASH_REMATCH[1]}\nelse\necho \"Could not find platform name from SDK_NAME: $SDK_NAME\"\nexit 1\nfi\n\n# 2 - Extract the version from the SDK\nif [[ \"$SDK_NAME\" =~ ([0-9]+.*$) ]]; then\nRW_SDK_VERSION=${BASH_REMATCH[1]}\nelse\necho \"Could not find sdk version from SDK_NAME: $SDK_NAME\"\nexit 1\nfi\n\n# 3 - Determine the other platform\nif [ \"$RW_SDK_PLATFORM\" == \"iphoneos\" ]; then\nRW_OTHER_PLATFORM=iphonesimulator\nelse\nRW_OTHER_PLATFORM=iphoneos\nfi\n\n# 4 - Find the build directory\nif [[ \"$BUILT_PRODUCTS_DIR\" =~ (.*)$RW_SDK_PLATFORM$ ]]; then\nRW_OTHER_BUILT_PRODUCTS_DIR=\"${BASH_REMATCH[1]}${RW_OTHER_PLATFORM}\"\nelse\necho \"Could not find other platform build directory.\"\nexit 1\nfi\n\n# Build the other platform.\nbuild_static_library \"${RW_OTHER_PLATFORM}${RW_SDK_VERSION}\"\n\n# If we're currently building for iphonesimulator, then need to rebuild\n# to ensure that we get both i386 and x86_64\nif [ \"$RW_SDK_PLATFORM\" == \"iphonesimulator\" ]; then\nbuild_static_library \"${SDK_NAME}\"\nfi\n\n# Join the 2 static libs into 1 and push into the .framework\nmake_fat_library \"${BUILT_PRODUCTS_DIR}/${RW_INPUT_STATIC_LIB}\" \\\n\"${RW_OTHER_BUILT_PRODUCTS_DIR}/${RW_INPUT_STATIC_LIB}\" \\\n\"${RW_FRAMEWORK_LOCATION}/Versions/A/${RW_FRAMEWORK_NAME}\"\n\n# Ensure that the framework is present in both platform's build directories\ncp -a \"${RW_FRAMEWORK_LOCATION}/Versions/A/${RW_FRAMEWORK_NAME}\" \\\n\"${RW_OTHER_BUILT_PRODUCTS_DIR}/${RW_FRAMEWORK_NAME}.framework/Versions/A/${RW_FRAMEWORK_NAME}\"\n\n# Copy the framework to the user's desktop\nditto \"${RW_FRAMEWORK_LOCATION}\" \"${SRCROOT}/${RW_FRAMEWORK_NAME}.framework\"\n\nopen ${SRCROOT}\n"; | ||
| 225 | }; | ||
| 226 | /* End PBXShellScriptBuildPhase section */ | ||
| 227 | |||
| 228 | /* Begin PBXSourcesBuildPhase section */ | ||
| 229 | 752CAD5920CE2AEE003C3840 /* Sources */ = { | ||
| 230 | isa = PBXSourcesBuildPhase; | ||
| 231 | buildActionMask = 2147483647; | ||
| 232 | files = ( | ||
| 233 | 752CAD7C20CE4515003C3840 /* LSGGameActivityViewController.m in Sources */, | ||
| 234 | 752CAD7520CE2BF9003C3840 /* LetsGameActivityAPI.m in Sources */, | ||
| 235 | 75A510DD20CF65E0008A4F04 /* LSGColor.m in Sources */, | ||
| 236 | ); | ||
| 237 | runOnlyForDeploymentPostprocessing = 0; | ||
| 238 | }; | ||
| 239 | /* End PBXSourcesBuildPhase section */ | ||
| 240 | |||
| 241 | /* Begin PBXTargetDependency section */ | ||
| 242 | 752CAD7120CE2B94003C3840 /* PBXTargetDependency */ = { | ||
| 243 | isa = PBXTargetDependency; | ||
| 244 | target = 752CAD5C20CE2AEE003C3840 /* GameActivitySDK */; | ||
| 245 | targetProxy = 752CAD7020CE2B94003C3840 /* PBXContainerItemProxy */; | ||
| 246 | }; | ||
| 247 | /* End PBXTargetDependency section */ | ||
| 248 | |||
| 249 | /* Begin XCBuildConfiguration section */ | ||
| 250 | 752CAD6420CE2AEE003C3840 /* Debug */ = { | ||
| 251 | isa = XCBuildConfiguration; | ||
| 252 | buildSettings = { | ||
| 253 | ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 254 | CLANG_ANALYZER_NONNULL = YES; | ||
| 255 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; | ||
| 256 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; | ||
| 257 | CLANG_CXX_LIBRARY = "libc++"; | ||
| 258 | CLANG_ENABLE_MODULES = YES; | ||
| 259 | CLANG_ENABLE_OBJC_ARC = YES; | ||
| 260 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 261 | CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 262 | CLANG_WARN_COMMA = YES; | ||
| 263 | CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 264 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 265 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; | ||
| 266 | CLANG_WARN_EMPTY_BODY = YES; | ||
| 267 | CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 268 | CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 269 | CLANG_WARN_INT_CONVERSION = YES; | ||
| 270 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 271 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 272 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 273 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 274 | CLANG_WARN_STRICT_PROTOTYPES = YES; | ||
| 275 | CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 276 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; | ||
| 277 | CLANG_WARN_UNREACHABLE_CODE = YES; | ||
| 278 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; | ||
| 279 | CODE_SIGN_IDENTITY = "iPhone Developer"; | ||
| 280 | COPY_PHASE_STRIP = NO; | ||
| 281 | DEBUG_INFORMATION_FORMAT = dwarf; | ||
| 282 | ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 283 | ENABLE_TESTABILITY = YES; | ||
| 284 | GCC_C_LANGUAGE_STANDARD = gnu11; | ||
| 285 | GCC_DYNAMIC_NO_PIC = NO; | ||
| 286 | GCC_NO_COMMON_BLOCKS = YES; | ||
| 287 | GCC_OPTIMIZATION_LEVEL = 0; | ||
| 288 | GCC_PREPROCESSOR_DEFINITIONS = ( | ||
| 289 | "DEBUG=1", | ||
| 290 | "$(inherited)", | ||
| 291 | ); | ||
| 292 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 293 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 294 | GCC_WARN_UNDECLARED_SELECTOR = YES; | ||
| 295 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 296 | GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 297 | GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 298 | IPHONEOS_DEPLOYMENT_TARGET = 11.0; | ||
| 299 | MTL_ENABLE_DEBUG_INFO = YES; | ||
| 300 | ONLY_ACTIVE_ARCH = YES; | ||
| 301 | SDKROOT = iphoneos; | ||
| 302 | }; | ||
| 303 | name = Debug; | ||
| 304 | }; | ||
| 305 | 752CAD6520CE2AEE003C3840 /* Release */ = { | ||
| 306 | isa = XCBuildConfiguration; | ||
| 307 | buildSettings = { | ||
| 308 | ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 309 | CLANG_ANALYZER_NONNULL = YES; | ||
| 310 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; | ||
| 311 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; | ||
| 312 | CLANG_CXX_LIBRARY = "libc++"; | ||
| 313 | CLANG_ENABLE_MODULES = YES; | ||
| 314 | CLANG_ENABLE_OBJC_ARC = YES; | ||
| 315 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 316 | CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 317 | CLANG_WARN_COMMA = YES; | ||
| 318 | CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 319 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 320 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; | ||
| 321 | CLANG_WARN_EMPTY_BODY = YES; | ||
| 322 | CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 323 | CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 324 | CLANG_WARN_INT_CONVERSION = YES; | ||
| 325 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 326 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 327 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 328 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 329 | CLANG_WARN_STRICT_PROTOTYPES = YES; | ||
| 330 | CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 331 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; | ||
| 332 | CLANG_WARN_UNREACHABLE_CODE = YES; | ||
| 333 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; | ||
| 334 | CODE_SIGN_IDENTITY = "iPhone Developer"; | ||
| 335 | COPY_PHASE_STRIP = NO; | ||
| 336 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||
| 337 | ENABLE_NS_ASSERTIONS = NO; | ||
| 338 | ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 339 | GCC_C_LANGUAGE_STANDARD = gnu11; | ||
| 340 | GCC_NO_COMMON_BLOCKS = YES; | ||
| 341 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 342 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 343 | GCC_WARN_UNDECLARED_SELECTOR = YES; | ||
| 344 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 345 | GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 346 | GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 347 | IPHONEOS_DEPLOYMENT_TARGET = 11.0; | ||
| 348 | MTL_ENABLE_DEBUG_INFO = NO; | ||
| 349 | SDKROOT = iphoneos; | ||
| 350 | VALIDATE_PRODUCT = YES; | ||
| 351 | }; | ||
| 352 | name = Release; | ||
| 353 | }; | ||
| 354 | 752CAD6720CE2AEE003C3840 /* Debug */ = { | ||
| 355 | isa = XCBuildConfiguration; | ||
| 356 | buildSettings = { | ||
| 357 | CODE_SIGN_STYLE = Automatic; | ||
| 358 | FRAMEWORK_SEARCH_PATHS = ( | ||
| 359 | "$(inherited)", | ||
| 360 | "$(PROJECT_DIR)/GameActivitySDK/", | ||
| 361 | "$(PROJECT_DIR)", | ||
| 362 | "$(SRCROOT)/../..", | ||
| 363 | ); | ||
| 364 | GCC_NO_COMMON_BLOCKS = NO; | ||
| 365 | HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/GameActivitySDK/"; | ||
| 366 | LIBRARY_SEARCH_PATHS = ( | ||
| 367 | "$(inherited)", | ||
| 368 | "$(PROJECT_DIR)/", | ||
| 369 | "$(PROJECT_DIR)", | ||
| 370 | ); | ||
| 371 | ONLY_ACTIVE_ARCH = NO; | ||
| 372 | OTHER_LDFLAGS = ( | ||
| 373 | "-ObjC", | ||
| 374 | "-all_load", | ||
| 375 | ); | ||
| 376 | PRIVATE_HEADERS_FOLDER_PATH = /../GameActivitySDK/Private; | ||
| 377 | PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 378 | PUBLIC_HEADERS_FOLDER_PATH = "/include/$(PRODUCT_NAME)"; | ||
| 379 | SKIP_INSTALL = YES; | ||
| 380 | TARGETED_DEVICE_FAMILY = "1,2"; | ||
| 381 | }; | ||
| 382 | name = Debug; | ||
| 383 | }; | ||
| 384 | 752CAD6820CE2AEE003C3840 /* Release */ = { | ||
| 385 | isa = XCBuildConfiguration; | ||
| 386 | buildSettings = { | ||
| 387 | CODE_SIGN_STYLE = Automatic; | ||
| 388 | FRAMEWORK_SEARCH_PATHS = ( | ||
| 389 | "$(inherited)", | ||
| 390 | "$(PROJECT_DIR)/GameActivitySDK/", | ||
| 391 | "$(PROJECT_DIR)", | ||
| 392 | "$(SRCROOT)/../..", | ||
| 393 | ); | ||
| 394 | GCC_NO_COMMON_BLOCKS = NO; | ||
| 395 | HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/GameActivitySDK/"; | ||
| 396 | LIBRARY_SEARCH_PATHS = ( | ||
| 397 | "$(inherited)", | ||
| 398 | "$(PROJECT_DIR)/", | ||
| 399 | "$(PROJECT_DIR)", | ||
| 400 | ); | ||
| 401 | OTHER_LDFLAGS = ( | ||
| 402 | "-ObjC", | ||
| 403 | "-all_load", | ||
| 404 | ); | ||
| 405 | PRIVATE_HEADERS_FOLDER_PATH = /../GameActivitySDK/Private; | ||
| 406 | PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 407 | PUBLIC_HEADERS_FOLDER_PATH = "/include/$(PRODUCT_NAME)"; | ||
| 408 | SKIP_INSTALL = YES; | ||
| 409 | TARGETED_DEVICE_FAMILY = "1,2"; | ||
| 410 | }; | ||
| 411 | name = Release; | ||
| 412 | }; | ||
| 413 | 752CAD6B20CE2B37003C3840 /* Debug */ = { | ||
| 414 | isa = XCBuildConfiguration; | ||
| 415 | buildSettings = { | ||
| 416 | CODE_SIGN_STYLE = Automatic; | ||
| 417 | ONLY_ACTIVE_ARCH = NO; | ||
| 418 | PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 419 | }; | ||
| 420 | name = Debug; | ||
| 421 | }; | ||
| 422 | 752CAD6C20CE2B37003C3840 /* Release */ = { | ||
| 423 | isa = XCBuildConfiguration; | ||
| 424 | buildSettings = { | ||
| 425 | CODE_SIGN_STYLE = Automatic; | ||
| 426 | PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 427 | }; | ||
| 428 | name = Release; | ||
| 429 | }; | ||
| 430 | /* End XCBuildConfiguration section */ | ||
| 431 | |||
| 432 | /* Begin XCConfigurationList section */ | ||
| 433 | 752CAD5820CE2AEE003C3840 /* Build configuration list for PBXProject "GameActivitySDK" */ = { | ||
| 434 | isa = XCConfigurationList; | ||
| 435 | buildConfigurations = ( | ||
| 436 | 752CAD6420CE2AEE003C3840 /* Debug */, | ||
| 437 | 752CAD6520CE2AEE003C3840 /* Release */, | ||
| 438 | ); | ||
| 439 | defaultConfigurationIsVisible = 0; | ||
| 440 | defaultConfigurationName = Release; | ||
| 441 | }; | ||
| 442 | 752CAD6620CE2AEE003C3840 /* Build configuration list for PBXNativeTarget "GameActivitySDK" */ = { | ||
| 443 | isa = XCConfigurationList; | ||
| 444 | buildConfigurations = ( | ||
| 445 | 752CAD6720CE2AEE003C3840 /* Debug */, | ||
| 446 | 752CAD6820CE2AEE003C3840 /* Release */, | ||
| 447 | ); | ||
| 448 | defaultConfigurationIsVisible = 0; | ||
| 449 | defaultConfigurationName = Release; | ||
| 450 | }; | ||
| 451 | 752CAD6A20CE2B37003C3840 /* Build configuration list for PBXAggregateTarget "GameActivitySDK.framework" */ = { | ||
| 452 | isa = XCConfigurationList; | ||
| 453 | buildConfigurations = ( | ||
| 454 | 752CAD6B20CE2B37003C3840 /* Debug */, | ||
| 455 | 752CAD6C20CE2B37003C3840 /* Release */, | ||
| 456 | ); | ||
| 457 | defaultConfigurationIsVisible = 0; | ||
| 458 | defaultConfigurationName = Release; | ||
| 459 | }; | ||
| 460 | /* End XCConfigurationList section */ | ||
| 461 | }; | ||
| 462 | rootObject = 752CAD5520CE2AEE003C3840 /* Project object */; | ||
| 463 | } | ||
| 464 |
GameActivitySDK.xcodeproj/project.xcworkspace/contents.xcworkspacedata
| File was created | 1 | <?xml version="1.0" encoding="UTF-8"?> | |
| 2 | <Workspace | ||
| 3 | version = "1.0"> | ||
| 4 | <FileRef | ||
| 5 | location = "self:GameActivitySDK.xcodeproj"> | ||
| 6 | </FileRef> | ||
| 7 | </Workspace> | ||
| 8 |
GameActivitySDK.xcodeproj/project.xcworkspace/xcuserdata/yanglele.xcuserdatad/UserInterfaceState.xcuserstate
No preview for this file type
GameActivitySDK.xcodeproj/xcuserdata/yanglele.xcuserdatad/xcschemes/GameActivitySDK.framework.xcscheme
| File was created | 1 | <?xml version="1.0" encoding="UTF-8"?> | |
| 2 | <Scheme | ||
| 3 | LastUpgradeVersion = "0900" | ||
| 4 | version = "1.3"> | ||
| 5 | <BuildAction | ||
| 6 | parallelizeBuildables = "YES" | ||
| 7 | buildImplicitDependencies = "YES"> | ||
| 8 | <BuildActionEntries> | ||
| 9 | <BuildActionEntry | ||
| 10 | buildForTesting = "YES" | ||
| 11 | buildForRunning = "YES" | ||
| 12 | buildForProfiling = "YES" | ||
| 13 | buildForArchiving = "YES" | ||
| 14 | buildForAnalyzing = "YES"> | ||
| 15 | <BuildableReference | ||
| 16 | BuildableIdentifier = "primary" | ||
| 17 | BlueprintIdentifier = "752CAD6920CE2B37003C3840" | ||
| 18 | BuildableName = "GameActivitySDK.framework" | ||
| 19 | BlueprintName = "GameActivitySDK.framework" | ||
| 20 | ReferencedContainer = "container:GameActivitySDK.xcodeproj"> | ||
| 21 | </BuildableReference> | ||
| 22 | </BuildActionEntry> | ||
| 23 | </BuildActionEntries> | ||
| 24 | </BuildAction> | ||
| 25 | <TestAction | ||
| 26 | buildConfiguration = "Debug" | ||
| 27 | selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
| 28 | selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
| 29 | language = "" | ||
| 30 | shouldUseLaunchSchemeArgsEnv = "YES"> | ||
| 31 | <Testables> | ||
| 32 | </Testables> | ||
| 33 | <AdditionalOptions> | ||
| 34 | </AdditionalOptions> | ||
| 35 | </TestAction> | ||
| 36 | <LaunchAction | ||
| 37 | buildConfiguration = "Debug" | ||
| 38 | selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
| 39 | selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
| 40 | language = "" | ||
| 41 | launchStyle = "0" | ||
| 42 | useCustomWorkingDirectory = "NO" | ||
| 43 | ignoresPersistentStateOnLaunch = "NO" | ||
| 44 | debugDocumentVersioning = "YES" | ||
| 45 | debugServiceExtension = "internal" | ||
| 46 | allowLocationSimulation = "YES"> | ||
| 47 | <MacroExpansion> | ||
| 48 | <BuildableReference | ||
| 49 | BuildableIdentifier = "primary" | ||
| 50 | BlueprintIdentifier = "752CAD6920CE2B37003C3840" | ||
| 51 | BuildableName = "GameActivitySDK.framework" | ||
| 52 | BlueprintName = "GameActivitySDK.framework" | ||
| 53 | ReferencedContainer = "container:GameActivitySDK.xcodeproj"> | ||
| 54 | </BuildableReference> | ||
| 55 | </MacroExpansion> | ||
| 56 | <AdditionalOptions> | ||
| 57 | </AdditionalOptions> | ||
| 58 | </LaunchAction> | ||
| 59 | <ProfileAction | ||
| 60 | buildConfiguration = "Release" | ||
| 61 | shouldUseLaunchSchemeArgsEnv = "YES" | ||
| 62 | savedToolIdentifier = "" | ||
| 63 | useCustomWorkingDirectory = "NO" | ||
| 64 | debugDocumentVersioning = "YES"> | ||
| 65 | <MacroExpansion> | ||
| 66 | <BuildableReference | ||
| 67 | BuildableIdentifier = "primary" | ||
| 68 | BlueprintIdentifier = "752CAD6920CE2B37003C3840" | ||
| 69 | BuildableName = "GameActivitySDK.framework" | ||
| 70 | BlueprintName = "GameActivitySDK.framework" | ||
| 71 | ReferencedContainer = "container:GameActivitySDK.xcodeproj"> | ||
| 72 | </BuildableReference> | ||
| 73 | </MacroExpansion> | ||
| 74 | </ProfileAction> | ||
| 75 | <AnalyzeAction | ||
| 76 | buildConfiguration = "Debug"> | ||
| 77 | </AnalyzeAction> | ||
| 78 | <ArchiveAction | ||
| 79 | buildConfiguration = "Release" | ||
| 80 | revealArchiveInOrganizer = "YES"> | ||
| 81 | </ArchiveAction> | ||
| 82 | </Scheme> | ||
| 83 |
GameActivitySDK.xcodeproj/xcuserdata/yanglele.xcuserdatad/xcschemes/xcschememanagement.plist
| File was created | 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>SchemeUserState</key> | ||
| 6 | <dict> | ||
| 7 | <key>GameActivitySDK.framework.xcscheme</key> | ||
| 8 | <dict> | ||
| 9 | <key>orderHint</key> | ||
| 10 | <integer>0</integer> | ||
| 11 | </dict> | ||
| 12 | <key>GameActivitySDK.xcscheme</key> | ||
| 13 | <dict> | ||
| 14 | <key>orderHint</key> | ||
| 15 | <integer>4</integer> | ||
| 16 | </dict> | ||
| 17 | </dict> | ||
| 18 | <key>SuppressBuildableAutocreation</key> | ||
| 19 | <dict> | ||
| 20 | <key>752CAD6920CE2B37003C3840</key> | ||
| 21 | <dict> | ||
| 22 | <key>primary</key> | ||
| 23 | <true/> | ||
| 24 | </dict> | ||
| 25 | </dict> | ||
| 26 | </dict> | ||
| 27 | </plist> | ||
| 28 |
GameActivitySDK/LSGColor.h
| File was created | 1 | ||
| 2 | |||
| 3 | #import <Foundation/Foundation.h> | ||
| 4 | #import <CoreGraphics/CoreGraphics.h> | ||
| 5 | |||
| 6 | @class UIColor; | ||
| 7 | |||
| 8 | |||
| 9 | @interface LSGColor : NSObject | ||
| 10 | |||
| 11 | + (UIColor *)colorWithHexValue:(NSInteger)color alpha:(CGFloat)alpha; | ||
| 12 | + (UIColor *)colorWithHexString:(NSString *)stringToConvert; | ||
| 13 | |||
| 14 | + (UIColor *)backgroudColor; //FFFFFF | ||
| 15 | + (UIColor *)textColor; //3E3E3E | ||
| 16 | + (UIColor *)lightTextColor; //7E7E7E | ||
| 17 | + (UIColor *)redColor; //D11301 | ||
| 18 | + (UIColor *)borderColor; | ||
| 19 | |||
| 20 | @end | ||
| 21 |
GameActivitySDK/LSGColor.m
| File was created | 1 | ||
| 2 | |||
| 3 | #import <UIKit/UIKit.h> | ||
| 4 | #import "LSGColor.h" | ||
| 5 | |||
| 6 | |||
| 7 | @implementation LSGColor | ||
| 8 | |||
| 9 | + (UIColor *)colorWithHexValue:(NSInteger)color alpha:(CGFloat)alpha { | ||
| 10 | return [UIColor colorWithRed:((float) ((color & 0xff0000) >> 16)) / 255.0 | ||
| 11 | green:((float) ((color & 0x00ff00) >> 8)) / 255.0 | ||
| 12 | blue:((float) (color & 0x0000ff)) / 255.0 | ||
| 13 | alpha:alpha]; | ||
| 14 | } | ||
| 15 | |||
| 16 | + (UIColor *)colorWithHexString:(NSString *)stringToConvert | ||
| 17 | { | ||
| 18 | //去掉前后空格换行符 | ||
| 19 | NSString *cString = [[stringToConvert stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString]; | ||
| 20 | |||
| 21 | if ([cString hasPrefix:@"0X"]) | ||
| 22 | cString = [cString substringFromIndex:2]; | ||
| 23 | else if ([cString hasPrefix:@"#"]) | ||
| 24 | cString = [cString substringFromIndex:1]; | ||
| 25 | |||
| 26 | if ([cString length] != 6) | ||
| 27 | return nil; | ||
| 28 | |||
| 29 | // Separate into r, g, b substrings | ||
| 30 | NSRange range; | ||
| 31 | range.location = 0; | ||
| 32 | range.length = 2; | ||
| 33 | NSString *rString = [cString substringWithRange:range]; | ||
| 34 | |||
| 35 | range.location = 2; | ||
| 36 | NSString *gString = [cString substringWithRange:range]; | ||
| 37 | |||
| 38 | range.location = 4; | ||
| 39 | NSString *bString = [cString substringWithRange:range]; | ||
| 40 | |||
| 41 | unsigned int r, g, b; | ||
| 42 | [[NSScanner scannerWithString:rString] scanHexInt:&r]; | ||
| 43 | [[NSScanner scannerWithString:gString] scanHexInt:&g]; | ||
| 44 | [[NSScanner scannerWithString:bString] scanHexInt:&b]; | ||
| 45 | return [UIColor colorWithRed:r / 255.0 green:g / 255.0 blue:b / 255.0 alpha:1.0]; | ||
| 46 | } | ||
| 47 | |||
| 48 | + (UIColor *)backgroudColor | ||
| 49 | { | ||
| 50 | return [UIColor whiteColor]; //[UIColor whiteColor]; | ||
| 51 | } | ||
| 52 | |||
| 53 | + (UIColor *)textColor | ||
| 54 | { | ||
| 55 | return [self colorWithHexValue:0x3E3E3E alpha:1.0]; | ||
| 56 | } | ||
| 57 | |||
| 58 | + (UIColor *)lightTextColor | ||
| 59 | { | ||
| 60 | return [self colorWithHexValue:0x7E7E7E alpha:1.0]; | ||
| 61 | } | ||
| 62 | |||
| 63 | + (UIColor *)redColor | ||
| 64 | { | ||
| 65 | return [self colorWithHexValue:0xD11301 alpha:1.0]; | ||
| 66 | } | ||
| 67 | |||
| 68 | + (UIColor *)borderColor | ||
| 69 | { | ||
| 70 | return [self colorWithHexValue:0xeeeeee alpha:1.0]; | ||
| 71 | } | ||
| 72 | |||
| 73 | @end | ||
| 74 |
GameActivitySDK/LSGGameActivityViewController.h
| File was created | 1 | // | |
| 2 | // LSGGameActivityViewController.h | ||
| 3 | // GameActivitySDK | ||
| 4 | // | ||
| 5 | // Created by yanglele on 2018/6/11. | ||
| 6 | // Copyright © 2018年 alexYang. All rights reserved. | ||
| 7 | // | ||
| 8 | |||
| 9 | #import <UIKit/UIKit.h> | ||
| 10 | |||
| 11 | @interface LSGGameActivityViewController : UIViewController | ||
| 12 | |||
| 13 | //appId=100&appKey=f899139df5e1059396431415e770c6dd&userId=123456&serverId=111&serverName=aaa&roleId=222&roleName=ccc&diamond=888 | ||
| 14 | |||
| 15 | @property(nonatomic, copy) NSString *appId; | ||
| 16 | @property(nonatomic, copy) NSString *appKey; | ||
| 17 | @property(nonatomic, copy) NSString *userId; | ||
| 18 | @property(nonatomic, copy) NSString *serverId; | ||
| 19 | @property(nonatomic, copy) NSString *serverName; | ||
| 20 | @property(nonatomic, copy) NSString *roleId; | ||
| 21 | @property(nonatomic, copy) NSString *roleName; | ||
| 22 | @property(nonatomic, copy) NSString *diamond; | ||
| 23 | |||
| 24 | @property(nonatomic, assign) BOOL *isDebug; | ||
| 25 | |||
| 26 | @property(nonatomic, copy) void(^accomplistCallBack)(); | ||
| 27 | |||
| 28 | @end | ||
| 29 |
GameActivitySDK/LSGGameActivityViewController.m
| File was created | 1 | // | |
| 2 | // LSGGameActivityViewController.m | ||
| 3 | // GameActivitySDK | ||
| 4 | // | ||
| 5 | // Created by yanglele on 2018/6/11. | ||
| 6 | // Copyright © 2018年 alexYang. All rights reserved. | ||
| 7 | // | ||
| 8 | |||
| 9 | #import "LSGGameActivityViewController.h" | ||
| 10 | #import "LetsGameActivityAPI.h" | ||
| 11 | #import "LSGColor.h" | ||
| 12 | #import "LSGUrl.h" | ||
| 13 | #import "LSGMacros.h" | ||
| 14 | |||
| 15 | @interface LSGGameActivityViewController ()<UIWebViewDelegate> | ||
| 16 | @property(nonatomic, strong) UIWebView *webView; | ||
| 17 | @end | ||
| 18 | |||
| 19 | @implementation LSGGameActivityViewController | ||
| 20 | |||
| 21 | -(void)loadView{ | ||
| 22 | [super loadView]; | ||
| 23 | [self.navigationController setNavigationBarHidden:YES]; | ||
| 24 | self.view.backgroundColor = [LSGColor colorWithHexValue:0x181818 alpha:0.8]; | ||
| 25 | [self.view addSubview:self.webView]; | ||
| 26 | } | ||
| 27 | |||
| 28 | - (void)viewDidLoad { | ||
| 29 | [super viewDidLoad]; | ||
| 30 | // Do any additional setup after loading the view. | ||
| 31 | |||
| 32 | NSString *newUserAgent = @"Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1"; | ||
| 33 | [[NSUserDefaults standardUserDefaults] registerDefaults:@{@"UserAgent":newUserAgent}]; | ||
| 34 | |||
| 35 | NSString *webViewUrlPath = [decideIsDebugOrRelease(self.isDebug) stringByAppendingString:kActivityAwardURL]; | ||
| 36 | NSMutableString *urlWithParams = [NSMutableString stringWithString:webViewUrlPath]; | ||
| 37 | |||
| 38 | //appId=100&appKey=f899139df5e1059396431415e770c6dd&userId=123456&serverId=111&serverName=aaa&roleId=222&roleName=ccc&diamond=888 | ||
| 39 | NSMutableString *queryString = [NSMutableString new]; | ||
| 40 | [queryString appendFormat:@"appId=%@",self.appId]; | ||
| 41 | [queryString appendFormat:@"&appKey=%@", self.appKey]; | ||
| 42 | [queryString appendFormat:@"&userId=%@", self.userId]; | ||
| 43 | [queryString appendFormat:@"&serverId=%@", self.serverId]; | ||
| 44 | [queryString appendFormat:@"&serverName=%@", self.serverName]; | ||
| 45 | [queryString appendFormat:@"&roleId=%@", self.roleId]; | ||
| 46 | [queryString appendFormat:@"&roleName=%@", self.roleName]; | ||
| 47 | [queryString appendFormat:@"&diamond=%@", self.diamond]; | ||
| 48 | |||
| 49 | [urlWithParams appendFormat:@"?%@", queryString]; | ||
| 50 | |||
| 51 | NSString *urlEncode = [urlWithParams stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; | ||
| 52 | NSURL *url = [NSURL URLWithString:urlEncode]; | ||
| 53 | NSLog(@"activity Url %@", [url absoluteString]); | ||
| 54 | NSURLRequest *request = [NSURLRequest requestWithURL:url]; | ||
| 55 | [self.webView loadRequest:request]; | ||
| 56 | } | ||
| 57 | |||
| 58 | -(UIWebView*)webView{ | ||
| 59 | if(!_webView){ | ||
| 60 | _webView = [[UIWebView alloc] init]; | ||
| 61 | _webView.delegate = self; | ||
| 62 | } | ||
| 63 | return _webView; | ||
| 64 | } | ||
| 65 | |||
| 66 | -(void)viewDidLayoutSubviews{ | ||
| 67 | [super viewDidLayoutSubviews]; | ||
| 68 | [self layoutSubViews]; | ||
| 69 | } | ||
| 70 | |||
| 71 | -(void)layoutSubViews{ | ||
| 72 | if (iPhoneX) { | ||
| 73 | _webView.frame = CGRectMake(0, 44, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height-44-34); | ||
| 74 | }else{ | ||
| 75 | _webView.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height); | ||
| 76 | } | ||
| 77 | } | ||
| 78 | |||
| 79 | -(void)injectJSObject{ | ||
| 80 | NSString *jsPath = [[NSBundle mainBundle].resourcePath stringByAppendingFormat:@"/%@/ActJs.txt", kBundleName]; | ||
| 81 | NSString *jsStr = [NSString stringWithContentsOfFile:jsPath encoding:NSUTF8StringEncoding error:nil]; | ||
| 82 | [self.webView stringByEvaluatingJavaScriptFromString:jsStr]; | ||
| 83 | |||
| 84 | } | ||
| 85 | |||
| 86 | #pragma mark webView Delegate | ||
| 87 | -(void)webViewDidFinishLoad:(UIWebView *)webView{ | ||
| 88 | [self injectJSObject]; | ||
| 89 | } | ||
| 90 | |||
| 91 | -(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{ | ||
| 92 | NSURL *url = [request URL]; | ||
| 93 | |||
| 94 | NSString *urlStr = [url absoluteString]; | ||
| 95 | if([urlStr hasPrefix:@"jscall"]){ | ||
| 96 | NSArray *components = [urlStr componentsSeparatedByString:@":"]; | ||
| 97 | |||
| 98 | NSString *function = (NSString*)[components objectAtIndex:1]; | ||
| 99 | //调用oc方法,忽略警告 | ||
| 100 | #pragma clang diagnostic ignored "-Warc-performSelector-leaks" | ||
| 101 | NSString *funcSig = [NSString stringWithString:function]; | ||
| 102 | NSLog(@"select funcSig %@", funcSig); | ||
| 103 | |||
| 104 | SEL selector = NSSelectorFromString(funcSig); | ||
| 105 | if ([self respondsToSelector:selector]) { | ||
| 106 | [self performSelector:selector]; | ||
| 107 | } | ||
| 108 | return NO; | ||
| 109 | }else{ | ||
| 110 | return YES; | ||
| 111 | } | ||
| 112 | } | ||
| 113 | |||
| 114 | - (void)didReceiveMemoryWarning { | ||
| 115 | [super didReceiveMemoryWarning]; | ||
| 116 | // Dispose of any resources that can be recreated. | ||
| 117 | } | ||
| 118 | |||
| 119 | #pragma js function | ||
| 120 | -(void)closeWin{ | ||
| 121 | // [[LetsGameAPI instance] hide]; | ||
| 122 | self.accomplistCallBack(); | ||
| 123 | //当成功完成时返回是1(包括支付成功和支付失败),其他的情况都是没有值 | ||
| 124 | // if ([args[0] isEqualToString:@"1"]) { | ||
| 125 | // //产生回调 | ||
| 126 | // self.accomplistCallBack(); | ||
| 127 | // } | ||
| 128 | //其余的关闭窗口 | ||
| 129 | [[LetsGameActivityAPI instance] hide]; | ||
| 130 | } | ||
| 131 | |||
| 132 | @end | ||
| 133 |
GameActivitySDK/LSGMacros.h
| File was created | 1 | // | |
| 2 | // LSGMacros.h | ||
| 3 | // GameActivitySDK | ||
| 4 | // | ||
| 5 | // Created by yanglele on 2018/6/11. | ||
| 6 | // Copyright © 2018年 alexYang. All rights reserved. | ||
| 7 | // | ||
| 8 | |||
| 9 | #ifndef LSGMacros_h | ||
| 10 | #define LSGMacros_h | ||
| 11 | |||
| 12 | |||
| 13 | // 判断是否是iPhone X | ||
| 14 | #define iPhoneX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO) | ||
| 15 | // 状态栏高度 | ||
| 16 | #define STATUS_BAR_HEIGHT (iPhoneX ? 44.f : 20.f) | ||
| 17 | // 导航栏高度 | ||
| 18 | #define NAVIGATION_BAR_HEIGHT (iPhoneX ? 88.f : 64.f) | ||
| 19 | // tabBar高度 | ||
| 20 | #define TAB_BAR_HEIGHT (iPhoneX ? (49.f+34.f) : 49.f) | ||
| 21 | // home indicator高度 | ||
| 22 | #define HOME_INDICATOR_HEIGHT (iPhoneX ? 34.f : 0.f) | ||
| 23 | |||
| 24 | #endif /* LSGMacros_h */ | ||
| 25 |
GameActivitySDK/LSGUrl.h
| File was created | 1 | // | |
| 2 | // LSGUrl.h | ||
| 3 | // GameActivitySDK | ||
| 4 | // | ||
| 5 | // Created by yanglele on 2018/6/11. | ||
| 6 | // Copyright © 2018年 alexYang. All rights reserved. | ||
| 7 | // | ||
| 8 | |||
| 9 | #ifndef LSGUrl_h | ||
| 10 | #define LSGUrl_h | ||
| 11 | |||
| 12 | #define devBaseURL @"https://devsdk.letsgame.mobi" | ||
| 13 | #define releaseBaseURL @"https://api.gumptech.com" | ||
| 14 | |||
| 15 | #define kActivityAwardURL @"/activity/award.do" | ||
| 16 | |||
| 17 | |||
| 18 | #define kBundleName @"GameSDKResources.bundle" | ||
| 19 | |||
| 20 | #define decideIsDebugOrRelease(isDebug) (isDebug > 0 ? devBaseURL: releaseBaseURL) | ||
| 21 | #endif /* LSGUrl_h */ | ||
| 22 |
GameActivitySDK/LetsGameActivityAPI.h
| File was created | 1 | // | |
| 2 | // LetsGameActivityAPI.h | ||
| 3 | // GameActivitySDK | ||
| 4 | // | ||
| 5 | // Created by yanglele on 2018/6/11. | ||
| 6 | // Copyright © 2018年 alexYang. All rights reserved. | ||
| 7 | // | ||
| 8 | |||
| 9 | #import <Foundation/Foundation.h> | ||
| 10 | #import <UIKit/UIKit.h> | ||
| 11 | |||
| 12 | static NSString *actVersion = @"1.0.1"; | ||
| 13 | |||
| 14 | @interface LetsGameActivityAPI : NSObject<UIApplicationDelegate> | ||
| 15 | |||
| 16 | @property(nonatomic, assign) int isDebug; | ||
| 17 | |||
| 18 | +(instancetype)instance; | ||
| 19 | |||
| 20 | - (void)hide; | ||
| 21 | |||
| 22 | -(void)decideIsDebug:(int)isDebug; | ||
| 23 | |||
| 24 | -(void)GameActivityWithParaDictory:(NSDictionary *)paraDictory handleCallBackL:(void(^)(void))accomplistCallBack; | ||
| 25 | |||
| 26 | @end | ||
| 27 |
GameActivitySDK/LetsGameActivityAPI.m
| File was created | 1 | // | |
| 2 | // LetsGameActivityAPI.m | ||
| 3 | // GameActivitySDK | ||
| 4 | // | ||
| 5 | // Created by yanglele on 2018/6/11. | ||
| 6 | // Copyright © 2018年 alexYang. All rights reserved. | ||
| 7 | // | ||
| 8 | |||
| 9 | #import "LetsGameActivityAPI.h" | ||
| 10 | #import "LSGGameActivityViewController.h" | ||
| 11 | |||
| 12 | @interface LetsGameActivityAPI() | ||
| 13 | |||
| 14 | @property(nonatomic, assign) BOOL isShowed; | ||
| 15 | @property(nonatomic, strong) UINavigationController *navigationController; | ||
| 16 | |||
| 17 | @end | ||
| 18 | |||
| 19 | @implementation LetsGameActivityAPI | ||
| 20 | +(instancetype)instance{ | ||
| 21 | static LetsGameActivityAPI *__single__; | ||
| 22 | static dispatch_once_t onceToken; | ||
| 23 | dispatch_once(&onceToken, ^{ | ||
| 24 | __single__ = [[LetsGameActivityAPI alloc] init]; | ||
| 25 | }); | ||
| 26 | return __single__; | ||
| 27 | } | ||
| 28 | |||
| 29 | -(void)decideIsDebug:(int)isDebug{ | ||
| 30 | self.isDebug = isDebug; | ||
| 31 | } | ||
| 32 | |||
| 33 | -(void)GameActivityWithParaDictory:(NSDictionary *)paraDictory handleCallBackL:(void(^)())accomplistCallBack{ | ||
| 34 | LSGGameActivityViewController *gameActivityVC = [[LSGGameActivityViewController alloc] init]; | ||
| 35 | gameActivityVC.appId = paraDictory[@"appId"]; | ||
| 36 | gameActivityVC.appKey = paraDictory[@"appKey"]; | ||
| 37 | gameActivityVC.userId = paraDictory[@"userId"]; | ||
| 38 | gameActivityVC.serverId = paraDictory[@"serverId"]; | ||
| 39 | gameActivityVC.serverName = paraDictory[@"serverName"]; | ||
| 40 | gameActivityVC.roleId = paraDictory[@"roleId"]; | ||
| 41 | gameActivityVC.roleName = paraDictory[@"roleName"]; | ||
| 42 | gameActivityVC.diamond = paraDictory[@"diamond"]; | ||
| 43 | |||
| 44 | gameActivityVC.accomplistCallBack = accomplistCallBack; | ||
| 45 | |||
| 46 | gameActivityVC.isDebug = self.isDebug; | ||
| 47 | self.navigationController = [[UINavigationController alloc] initWithRootViewController:gameActivityVC]; | ||
| 48 | [self show:[UIApplication sharedApplication].delegate.window]; | ||
| 49 | |||
| 50 | } | ||
| 51 | |||
| 52 | - (void)hide { | ||
| 53 | [self.navigationController popToRootViewControllerAnimated:NO]; | ||
| 54 | [self.navigationController.view removeFromSuperview]; | ||
| 55 | self.navigationController = nil; | ||
| 56 | self.isShowed = NO; | ||
| 57 | } | ||
| 58 | |||
| 59 | - (void)show:(UIView *)view { | ||
| 60 | if (self.isShowed) { | ||
| 61 | return; | ||
| 62 | } | ||
| 63 | |||
| 64 | [view addSubview:self.navigationController.view]; | ||
| 65 | self.isShowed = YES; | ||
| 66 | } | ||
| 67 | @end | ||
| 68 |