android 설정하기
Hercules 추가 기능 사용을 위해서는 Android Gradle 모듈에 prefab 기능이 사용 설정되어 있어야 합니다.
Android Studio 프로젝트 설정하기
- gradle.properties 파일에 아래와 같이 추가합니다.
1 |
android.enablePrefab=true |
- build.gradle 파일에 있는 android 블록에 아래와 같이 추가합니다.
1 2 3 4 5 6 |
android { ... buildFeatures { prefab true } } |
CMake / ndk-build 설정하기 (C/C++ 사용시)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// CMake 사용시 find_package(Hercules REQUIRED CONFIG) target_link_libraries( ... Hercules::Hercules ) // Android.mk 사용시 LOCAL_SHARED_LIBRARIES := Hercules ifneq ($(call ndk-major-at-least,21),true) $(call import-add-path,$(NDK_GRADLE_INJECTED_IMPORT_PATH)) endif $(call import-module, prefab/Hercules) |
- Hercules.h 파일을 별도로 프로젝트에 추가하고 .so 파일 경로를 직접 링크하여 사용합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// CMake 사용시 target_link_libraries( ... ${CMAKE_CURRENT_SOURCE_DIR}/../build/intermediates/merged_native_libs/${CMAKE_BUILD_TYPE}/out/lib/${ANDROID_ABI}/libHercules.so ) // Android.mk 사용시 # for Hercules include $(CLEAR_VARS) LOCAL_MODULE := Hercules LOCAL_SRC_FILES := ../build/intermediates/merged_native_libs/debug/out/lib/$(TARGET_ARCH_ABI)/libHercules.so include $(PREBUILT_SHARED_LIBRARY) LOCAL_SHARED_LIBRARIES := Hercules |
iOS 설정하기
설정방법
- “${PROJECT_ROOT_DIR}/Pods/Hercules/Hive_SDK_iOS_External_${HIVE_SDK_VERSION}/Hercules.xcframework/${SIMULATOR_OR_PHONEOS}/Hercules.framework/Headers/Hercules.h”
Unity 설정하기
모바일
Windows
- Scripting Define Symbols에 USE_HERCULES 입력 합니다.
- Allow ‘unsafe’ Code를 체크 합니다.
- HerculesPlugin를 사용 해서 Hercules 추가 API를 사용 합니다.
1예) HerculesPlugin.GetVersion();
Unreal 설정하기
모바일
Hive SDK Unreal Plugin이 포함하는 허큘리스 모듈은 허큘리스 추가 기능을 지원하지 않습니다. Unreal 환경에서 허큘리스 추가 기능을 사용하려면 아래를 참고하세요.
-
1hive::Configuration::setUseHercules(false);
-
플러그인 최상단에 위치한 Hercules 폴더에 있는 헤더와 라이브러리를 게임 프로젝트에 추가
Windows
HIVESDK.Build.cs에서 Target.Platform == UnrealTargetPlatform.Win64
이면 아래와 같이 .lib 설정이 요구됩니다.
1 |
PublicAdditionalLibraries.Add(ModuleDirectory + "/ThirdParty/windows/lib/Hercules.lib"); |
설정을 완료한 후, 아래 예시와 같이 추가 기능을 사용합니다.
1 2 3 4 5 6 |
예) #include <Hercules.h> unsigned int hVersion = HerculesGetVersion(); const char* hUniqueId = HerculesGetUniqueInstanceId(); |