2525
2626cmake_minimum_required (VERSION 3.6)
2727
28- set (APP_NAME MyGame )
28+ set (APP_NAME AppsFlyerCocos2dX )
2929
3030project (${APP_NAME} )
31+ set (CMAKE_XCODE_GENERATE_SCHEME TRUE )
3132
3233set (COCOS2DX_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR} /cocos2d)
3334set (CMAKE_MODULE_PATH ${COCOS2DX_ROOT_PATH} /cmake/Modules/)
@@ -55,17 +56,35 @@ endif()
5556
5657# add cross-platforms source files and header files
5758list (APPEND GAME_SOURCE
58- Classes/AppsFlyer/AppsFlyerX.cpp
5959 Classes/AppDelegate.cpp
6060 Classes/HelloWorldScene.cpp
61+ Classes/AppsFlyer/AFSDKXPurchaseDetails.cpp
62+ Classes/AppsFlyer/AFSDKXValidateAndLogResult.cpp
63+ Classes/AppsFlyer/AFXAdRevenueData.cpp
64+ Classes/AppsFlyer/AppsFlyerX.cpp
65+ Classes/AppsFlyer/AppsFlyerXApple.mm
66+ Classes/AppsFlyer/AppsFlyerXAppleDeepLinkDelegate.mm
67+ Classes/AppsFlyer/AppsFlyerXAppleDelegate.mm
68+ Classes/AppsFlyer/AppsFlyerXAppleHelper.mm
69+ Classes/AppsFlyer/AppsFlyerXConsent.cpp
6170 Classes/AppsFlyer/AppsFlyerXDeepLinkResult.cpp
62- )
71+ )
72+
6373list (APPEND GAME_HEADER
64- Classes/AppsFlyer/AppsFlyerX.h
6574 Classes/AppDelegate.h
6675 Classes/HelloWorldScene.h
76+ Classes/AppsFlyer/AFSDKXPurchaseDetails.h
77+ Classes/AppsFlyer/AFSDKXValidateAndLogResult.h
78+ Classes/AppsFlyer/AFXAdRevenueData.h
79+ Classes/AppsFlyer/AppsFlyerX.h
80+ Classes/AppsFlyer/AppsFlyerXApple.h
81+ Classes/AppsFlyer/AppsFlyerXAppleDeepLinkDelegate.h
82+ Classes/AppsFlyer/AppsFlyerXAppleDelegate.h
83+ Classes/AppsFlyer/AppsFlyerXAppleHelper.h
6784 Classes/AppsFlyer/AppsFlyerXDeepLinkResult.h
68- )
85+ Classes/AppsFlyer/AppsFlyerXMacro.h
86+ Classes/AppsFlyer/EmailCryptTypeX.h
87+ )
6988
7089if (ANDROID)
7190 list (APPEND GAME_SOURCE
@@ -79,7 +98,7 @@ if(ANDROID)
7998 )
8099
81100 # change APP_NAME to the share library name for Android, it's value depend on AndroidManifest.xml
82- set (APP_NAME MyGame )
101+ set (APP_NAME AppsFlyerCocos2dX )
83102 list (APPEND GAME_SOURCE
84103 proj.android-studio/app/jni/hellocpp/main.cpp
85104 )
@@ -149,20 +168,49 @@ target_include_directories(${APP_NAME}
149168 PRIVATE Classes
150169 PRIVATE ${COCOS2DX_ROOT_PATH} /cocos/audio/include /
151170)
171+ if (APPLE AND IOS)
172+ string (FIND "${CMAKE_OSX_SYSROOT} " "iPhoneSimulator" _is_simulator_sysroot)
173+ if (_is_simulator_sysroot GREATER -1)
174+ set (_swift_platform_folder "iphonesimulator" )
175+ else ()
176+ set (_swift_platform_folder "iphoneos" )
177+ endif ()
178+
179+ if (NOT DEFINED APPLE_DEVELOPER_ROOT)
180+ execute_process (COMMAND xcode-select -p OUTPUT_VARIABLE APPLE_DEVELOPER_ROOT OUTPUT_STRIP_TRAILING_WHITESPACE)
181+ endif ()
182+ set (_swift_lib_root "${APPLE_DEVELOPER_ROOT} /Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/${_swift_platform_folder} " )
183+
184+ foreach (_swift_lib swiftCompatibility50 swiftCompatibility51 swiftCompatibilityConcurrency swiftCompatibilityDynamicReplacements)
185+ string (TOUPPER "${_swift_lib} " _swift_lib_upper)
186+ set (_swift_var "SWIFT_LIB_${_swift_lib_upper} " )
187+ find_library (${_swift_var} ${_swift_lib} HINTS "${_swift_lib_root} " NO_DEFAULT_PATH)
188+ if (${_swift_var} )
189+ target_link_libraries (${APP_NAME} "${${_swift_var} }" )
190+ else ()
191+ message (WARNING "Could not locate ${_swift_lib} inside ${_swift_lib_root} " )
192+ endif ()
193+ endforeach ()
194+ endif ()
152195
153196# mark app resources
154197setup_cocos_app_config(${APP_NAME} )
155198if (APPLE )
199+ if (IOS)
200+ # Force DerivedData into the build tree so sandboxed environments can write to it
201+ set (CMAKE_XCODE_ATTRIBUTE_DERIVED_DATA_PATH "${PROJECT_BINARY_DIR} /DerivedData" )
202+ endif ()
156203 set_target_properties (${APP_NAME} PROPERTIES RESOURCE "${APP_UI_RES} " )
157204 if (MACOSX)
158205 set_target_properties (${APP_NAME} PROPERTIES
159206 MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR} /proj.ios_mac/mac/Info.plist"
160207 )
161208 elseif (IOS)
162- cocos_pak_xcode(${APP_NAME} INFO_PLIST "iOSBundleInfo.plist.in" )
209+ # cocos_pak_xcode(${APP_NAME} INFO_PLIST "iOSBundleInfo.plist.in")
163210 # set_xcode_property(${APP_NAME} ASSETCATALOG_COMPILER_APPICON_NAME "AppIcon")
164211 set_xcode_property(${APP_NAME} DEVELOPMENT_TEAM "" )
165212 set_xcode_property(${APP_NAME} CODE_SIGN_IDENTITY "iPhone Developer" )
213+ set_xcode_property(${APP_NAME} PRODUCT_BUNDLE_IDENTIFIER "com.appsflyer.AppsFlyerCocos2dX" )
166214 endif ()
167215elseif (WINDOWS)
168216 cocos_copy_target_dll(${APP_NAME} )
0 commit comments