adjust-icon

Cocos2d-x SDK 集成指南

通过 Adjust 安卓 SDK,您可以在 Cocos2d-x 应用中记录归因、事件及更多数据。请按照本指南中说明的步骤对应用进行设置,以便使用 Adjust SDK。

1. 获取 Adjust SDK

要在您的 Cocos2d-x 应用中使用 Adjust SDK,请先将 SDK 加入项目。您可以从GitHub 发布页面下载最新版本的 SDK。将存档解压缩到您选择的目录中。

2. 添加 SDK 至您的项目

要添加 SDK 至您的项目:

  1. 解压 Adjust SDK 档案

  2. 复制dist目录下的 C++ 文件,将其添加进 Cocos2d-x 项目

  3. ( 仅限安卓 )将 C++ 文件的路径添加到Android.mk文件的LOCAL_SRC_FILES部分。

    Android.mk
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustConfig2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustAttribution2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustProxy2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustEvent2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/Adjust2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustEventFailure2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustEventSuccess2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustSessionFailure2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustSessionSuccess2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustAppStoreSubscription2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustPlayStoreSubscription2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustThirdPartySharing2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustAdRevenue2dx.cpp
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustAppStorePurchase2dx.cpp \
    $(LOCAL_PATH)/../../../Classes/Adjust/AdjustPlayStorePurchase2dx.cpp \

3. 更新项目设置

要在项目中使用 Adjust SDK,您需要更新项目设置。按照本节中的说明操作:

安卓设置

SDK JAR 库

针对安卓的 Cocos2d-x 应用需要 Java Archive (JAR) 库。如需将 JAR 库集成到您的应用中,请将adjust-android.jar库从解压后的档案中复制到项目的libs文件夹中。

添加权限

要授予 Adjust SDK 读取设备信息的权限,您需要声明您应用所需的权限。为此,请在 AndroidManifest.xml 文件中添加权限。

请添加下列许可,以访问在线功能:

AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

如果您的应用并不面向 Google Play 商店,那么请添加下列权限,以读取设备的互联网连接状态:

AndroidManifest.xml
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

Adjust SDK 默认包含 com.google.android.gms.AD_ID 权限。如果您要让应用符合 COPPA (儿童在线隐私保护法) 规定,或者应用并不面向 Google Play 商店,请务必使用 remove 命令移除权限。

AndroidManifest.xml
<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/>

设置 Proguard

如果您使用 Proguard 优化应用,那么请务必添加规则,避免Proguard 移除类:

proguard.pro
-keep class com.adjust.sdk.** { *; }
-keep class com.google.android.gms.common.ConnectionResult {
int SUCCESS;
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient {
com.google.android.gms.ads.identifier.AdvertisingIdClient$Info getAdvertisingIdInfo(android.content.Context);
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info {
java.lang.String getId();
boolean isLimitAdTrackingEnabled();
}
-keep public class com.android.installreferrer.** { *; }

应用不在 Google Play 商店发布,请添加下列规则:

proguard.pro
-keep public class com.adjust.sdk.** { *; }

设置 Install Referrer

Install Referrer 是一种唯一标识符,可用来将安装归因至来源。Adjust SDK 需要该信息进行归因。您可以使用下列方法之一调取 install referrer 信息:

Google Play Referrer API

面向 Google Play 商店的应用可以使用 Google Play Referrer API。

要支持 Google Play Referrer API,请将下列行添加进您的 build.gradle 文件:

build.gradle
dependencies {
implementation 'com.android.installreferrer:installreferrer:2.2'
}

如果您使用的是 Proguard,请务必添加规则,避免依赖被移除。

proguard.pro
-keep public class com.android.installreferrer.** { *; }
华为 Referrer API

面向华为设备的应用可以使用华为 Referrer API。Adjust SDK 可以针对装有华为 App Gallery v10.4 或更新版本的华为设备记录安装信息。您无需进行任何调整,即可开始使用该 API。

Meta Install Referrer

Adjust SDK v4.37.0 及更高版本支持Meta Install Referrer。要启用该功能:

  1. 应用控制面板中找到您的 Meta app ID。更多信息,请参考 Meta 的应用控制面板文档

  2. 将 Meta 应用添加至您的AndroidManifest.xml文件

    AndroidManifest.xml
    <queries>
    <package android:name="com.facebook.katana" />
    </queries>
    <queries>
    <package android:name="com.instagram.android" />
    </queries>
  3. 将应用 ID 作为 字符串 参数传递至AdjustConfig2dx.setFbAppId方法。

    AdjustConfig2dx adjustConfig = AdjustConfig2dx(appToken, environment, false);
    adjustConfig.setFbAppId("your-fb-app-id");
    Adjust2dx::start(adjustConfig);

iOS 设置

在应用中添加特定 iOS 框架后,Adjust SDK 就能获取额外信息。这些框架可以支持特定 SDK 功能,但即便没有这些框架,SDK 也能正常工作。您可以添加这些框架,然后在 Project Settings -> Build Phases -> Link Binary With Libraries 下将其设置为可选。

添加链接器标记

要支持来自AdjustSdk.framework的类别,您需要添加链接器标记。为此请进行下列操作:

  1. 找到 Project Settings —> Build Settings
  2. 选择 Other Linker Flags
  3. 添加-ObjC标记。

复制其他源文件

要完成 iOS 设置,您必须将所有 Objective-C++ ( .h.mm ) 文件与 Cocos2d-x C++ 文件一起复制到 Xcode 项目中。确保所有.mm文件都列在 Build Phases —> Compile Sources 部分中。

4. 集成 Adjust SDK

更新项目设置后,您就可以将 Adjust SDK 集成到应用中了。为此请进行下列操作:

  1. 项目导航 中找到并打开应用委托文件。

  2. 在文件顶部包含Adjust/Adjust2dx.h类。

  3. 使用以下参数在applicationDidFinishLaunching方法中实例化AdjustConfig2dx对象:

    • appToken: 您的 Adjust 应用识别码
    • environmentAdjustEnvironmentSandbox2dx
  4. 您也可以通过调整日志级别来调整日志的详细程度。

  5. 调用Adjust2dx::start方法并将AdjustConfig2dx实例作为参数传送。

#include "Adjust/Adjust2dx.h"
bool AppDelegate::applicationDidFinishLaunching() {
std::string appToken = "{YourAppToken}";
std::string environment = AdjustEnvironmentSandbox2dx;
AdjustConfig2dx adjustConfig = AdjustConfig2dx(appToken, environment);
adjustConfig.setLogLevel(AdjustLogLevel2dxVerbose);
Adjust2dx::start(adjustConfig);
}

5. 配置会话发送 (仅限安卓)

要确保 Adjust SDK 可以发送安卓设备上的会话信息,您必须在应用转到后台或前台时调用特定的 Adjust 方法。配置方法如下:

  1. 项目导航 中找到并打开应用委托文件。

  2. applicationWillEnterForeground方法中添加对onResume方法的调用。

  3. applicationDidEnterBackground方法中添加对onPause方法的调用。

    #include "Adjust/Adjust2dx.h"
    void AppDelegate::applicationDidEnterBackground() {
    #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
    Adjust2dx::onPause();
    #endif
    }
    void AppDelegate::applicationWillEnterForeground() {
    #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
    Adjust2dx::onResume();
    #endif
    }

6. 创建您的应用

完成了!您现在可以创建并运行 Cocos2d-x 应用了。请启用日志,检查可能存在的问题。请查看日志中的 Install tracked 信息。

您现在已经准备就绪,可以使用 Adjust SDK 进行用户归因了。