目录
此内容是否有帮助?

# Native 対応

# iOS Native 対応

初めて iOS プロジェクトをビルドすると、エンジニアリング コードが ./build/ios/ および ./native/engine/ios/ ディレクトリに生成され、iOS プロジェクトの構成が開始されます。

# 1.1 手動設定

  • iOS プロジェクトの依存ファイルを追加
  • CocosCreatorProxyApi.h
  • CocosCreatorProxyApi.mm
  • ThinkingSDK.framework
  • Build Phases 設定
    • Link Binary With LibrariesThinkingSDK.framework追加
  • Build Settings 設定
    • Framework Search Paths に ThinkingSDK.framework追加の引用パス、例えば"$(SRCROOT)/../Classes"
    • Other Linker Flags-ObjC追加

# 1.2 CMakeList 設定

::: Tips:

CMakeList ファイルのパスは ./native/engine/ios/CMakeLists.txt; 初めて iOS プロジェクトをビルドした後、CMakeList ファイルが生成され、構成後に再度ビルドすると有効になります。 最初に iOS リソース ファイルを ./native/engine/common/Classes/ThinkingAnalytics/ios/ などの対応するフォルダーにコピーし、CMakeList を構成するときに対応するパスを入力する必要があります。

:::

  • iOS プロジェクト依存ファイルを追加
# find the following code
set(PROJ_COMMON_SOURCES
    ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/Game.h
    ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/Game.cpp
    # add the following code
    ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/CocosCreatorProxyApi.h
    ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/CocosCreatorProxyApi.mm
    ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/ThinkingSDK.framework
)
  • Build Phases 設定
# find the following code
target_link_libraries(${LIB_NAME} cocos2d)
# add the following code
target_link_libraries(${LIB_NAME} ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/ThinkingSDK.framework)
  • Build Settings 設定
# find the following code
set(PRODUCT_NAME ${APP_NAME})
# add the following code
set(CMAKE_EXE_LINKER_FLAGS -ObjC)

WARNING

Cocos Creator v2.x のエディターは CMake 構成方法をサポートしていないため、手動で構成する必要があります

# Android Native 対応

Android プロジェクトをビルドし、Android プロジェクトを構成します。

  • 以下に示すように、Android 表示モードのアプリ プロジェクトで、依存ファイル CocosCreatorProxyApi.javacom.cocos.game に追加します。

  • プロジェクトの app フォルダーにある proguard-rules.pro ファイルで、難読化を追加する

-keep public class com.cocos.game.CocosCreatorProxyApi {*;}
  • プロジェクトの app フォルダーに libs ディレクトリを新規作成し、ThinkingSDK.aar をそこにコピーします。
  • Moduleの元でbuild.gradle依存関係をファイルに追加
dependencies {
    ...
    implementation fileTree(dir: 'libs', include: ['*.aar'])
}

# Native 対応を有効

SDK を初期化するときに、configenableNative: true を追加して、Native 対応を有効にします。

// SDK config object
var config = {
  appId: "YOUR_APPID", // APP ID
  serverUrl: "YOUR_SERVER_URL", // server URL
  enableNative: true, // enable call Native code
};
// create TE instance
var te = new ThinkingAnalyticsAPI(config);