# 快速上手
# 接入
AIHelp Cocos2dx SDK 是对原生 Android 以及 iOS 的封装,并提供了相应的桥接文件。
首先,下载 AIHelp Cocos2dx Demo 工程 (opens new window),将位于 /Classes
文件夹中的桥接文件导入你的工程。然后再按照下面的教程分别接入 Android 和 iOS 的 SDK。
# Android
使用 Gradle 工具进行 AIHelp Android SDK 的依赖接入:
dependencies {
implementation 'net.aihelp:android-aihelp-aar:5.3.+'
}
AIHelp 使用到的类库有 androidx.recyclerView
、okhttp3
、okio
,如果使用 aar 的方式接入,请确保有相关类库的依赖。
# iOS
下载 最新的 v5.x 版本 AIHelp iOS SDK (opens new window),将 .framework
以及 .bundle
导入你的工程。
1、在项目工程的 info.plist
中增加权限:Privacy - Photo Library Usage Description
,否则可能无法正常使用图片上传功能;
2、打开 Xcode 的 Build Settings
页面,搜索 Other Linker Flags
字段并为其添加 -ObjC
配置;
# API
注意
你应该在应用启动或首屏进行 AIHelp SDK 的初始化,否则有可能出现不可控制的异常,并面临服务被停用及其他商业风险。
# initialize()
你可以通过调用此方法来开始 AIHelp 的初始化工作:
if (USER_FROM_MAINLAND_CHINA) {
AIHelpSupport::additionalSupportFor(PublishCountryOrRegion::CN);
}
AIHelpSupport::initialize(
"THIS IS YOUR APP DOMAIN",
"THIS IS YOUR APP ID",
"THIS IS YOUR DEFAULT LANGUAGE(OPTIONAL)"
);
为了保证玩家的服务体验,AIHelp 建议你为特定国家或地区的用户配置额外的域名支持。
# registerAsyncEventListener()
同时,我们也提供了 API 来 监听包括初始化在内的一系列事件:
AIHelpSupport::registerAsyncEventListener(
EventType::INITIALIZATION,
[](const char *jsonData, Acknowledge ignored) {
// When init job is done, you can get callback here
// `jsonData`: { "isSuccess": true, "message": "Success" }
}
);
# 参数释义
# domain / appId
- 类型:
string
- 详情:必传参数。 初始化相关参数信息,可以在 AIHelp 后台图示位置得到:
# language
- 类型:
string
- 默认值:
当前设备语言
- 详情:可选参数。 SDK 的默认语言;如果不传,则会使用当前设备语言初始化 SDK。多语言怎么办?
# 代码示例
请确保在应用启动或首屏进行 SDK 的初始化工作。
1、在你的 AppDelegate.cpp
中引入 AIHelpSupport.h
;
2、在 AppDelegate::applicationDidFinishLaunching()
方法中调用 AIHelpSupport::initialize
方法。
具体代码示例如下所示:
#include "AIHelpSupport.h"
bool AppDelegate::applicationDidFinishLaunching() {
if (USER_FROM_MAINLAND_CHINA) {
AIHelpSupport::additionalSupportFor(PublishCountryOrRegion::CN);
}
AIHelpSupport::initialize(
"THIS IS YOUR APP DOMAIN",
"THIS IS YOUR APP ID",
"THIS IS YOUR DEFAULT LANGUAGE(OPTIONAL)"
);
AIHelpSupport::registerAsyncEventListener(
EventType::INITIALIZATION,
[](const char *jsonData, Acknowledge ignored) {
// When init job is done, you can get callback here
// `jsonData`: { "isSuccess": true, "message": "Success" }
}
);
}
事件广播 →