文档

支持

手动集成

手动集成 Tapjoy Android SDK,包括下载 .aar 文件,将其添加到项目的 libs 文件夹中,并更新 Gradle 依赖项以包含 Tapjoy 和 Google Play 服务。
阅读时间4 分钟最后更新于 5 天前

下载 SDK

为了手动集成 SDK,第一步是下载 Android SDK 本身。

将 SDK 添加到您的项目中

解压缩 SDK 后,您将发现有文档、库和 TapjoyEasyApp。
  1. tapjoyconnectlibrary.aar
    文件复制到项目的 /lib 文件夹(如果没有该文件夹,请先创建该文件夹)
  2. 将 Tapjoy 添加到应用程序的 build.gradle:
dependencies { implementation files('libs/tapjoyconnectlibrary.aar')}
  1. 将 Google Play 服务添加到 build.gradle:
repositories { maven { url 'https://maven.google.com/' name 'Google' }}
dependencies { implementation 'com.google.android.gms:play-services-ads-identifier:17.1.0'}

添加应用权限和活动

需要以下权限:
  • ACCESS_WIFI_STATE
    (可选)

AD_ID 和 Google Play 家庭计划

play-services-ads
v17.1.0 包含对于 Google Play 家庭计划成员来说必须移除的
AD_ID
权限。
您可以通过向清单中添加以下元素来排除该权限:
<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/>
如需了解更多信息,请参阅有关 Advertising ID(广告 ID)的 Play Console 帮助文档

JAR 集成

如果使用 JAR 选项而不是 AAR,还需要以下权限和活动。
  • INTERNET
  • ACCESS_NETWORK_STATE
<uses-permission android:name="android.permission.INTERNET"/><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
要使用 Tapjoy 当前 SDK 版本的完整功能,请将以下活动添加到
AndroidManifest.xml
文件的 Application 代码块中:
<activity android:name="com.tapjoy.TJAdUnitActivity" android:configChanges="orientation|keyboardHidden|screenSize|uiMode" android:theme="@style/TranslucentTheme" android:enableOnBackInvokedCallback="true" android:hardwareAccelerated="true" tools:ignore="UnusedAttribute" /><activity android:name="com.tapjoy.TJWebViewActivity" android:configChanges="orientation|keyboardHidden|screenSize|uiMode" android:theme="@style/TranslucentTheme" android:enableOnBackInvokedCallback="true" android:hardwareAccelerated="true" tools:ignore="UnusedAttribute" />
还需要将同样的 configChanges 添加到应用的清单活动中:
android:configChanges="orientation|keyboardHidden|screenSize|uiMode"
此时,最好编译并运行应用程序,以确保应用中的所有一切仍然正常。由于我们实际上没有对应用程序的代码执行任何操作,因此应用程序的运行情况不应有任何错误或变化。

连接到 Tapjoy

下一步是将 Tapjoy connect 代码添加到您的应用程序中。这段关键代码将在应用程序中“激活”Offerwall SDK。 为了实现 Tapjoy connect 调用,需要为要集成的应用程序提供 Offerwall SDK 密钥。要查找此密钥,请在 Tapjoy 后台中导航到您的应用程序,然后单击顶部导航栏上的“Settings(设置)”按钮。导航到“App Settings(应用设置)”,然后在页面底部找到 SDK 密钥。 现在可以编写一些代码。将 Tapjoy 导入到您的活动中:
import com.tapjoy.Tapjoy
然后,在主活动的
onCreate()
方法中连接到 Tapjoy:
Hashtable<String, Object> connectFlags = new Hashtable<String, Object>();connectFlags.put(TapjoyConnectFlag.TJC_OPTION_LOGGING_LEVEL, TJLogLevel.DEBUG); // Disable this in production buildsconnectFlags.put(TapjoyConnectFlag.USER_ID, "USER_ID_GOES_HERE"); // Important for self-managed currencyTapjoy.connect(getApplicationContext(), "SDK_KEY_GOES_HERE", connectFlags, new TJConnectListener() { @Override public void onConnectSuccess() { } @Override public void onConnectWarning(int code, String message) { } @Override public void onConnectFailure() { } });
在此代码中,您可以看到我们连接到 Tapjoy(监听成功、失败和警告回调),并配置了两个“连接标志”(日志记录和用户 ID)。
onConnectSuccess
表示 SDK 已成功连接到 Tapjoy 服务器。如果我们成功连接但存在非阻塞问题,
onConnectWarning
将首先触发。目前,此功能仅用于检测在 ConnectFlags 中发送的 UserId 的相关问题。如果我们无法成功连接到服务器,
onConnectFailure
将触发。
发行商两个最常见和有用的连接标志是 ENABLE_LOGGINGUSER_ID 您将在调试构建中使用日志记录标志,但务必在生产构建中禁用该标志,这一点非常重要。 使用自管货币时,设置 USER_ID 标志至关重要。在连接时设置该标志非常重要,因为这将确保在调用任何广告位之前设置了该标志,从而防止潜在的奖励问题。 还有其他一些连接标志可用于帮助发行商控制 Tapjoy 如何使用操作系统提供的各种 Android 标识符:

标志

描述

注意

ALLOW_LEGACY_ID_FALLBACK
如果设置了此标志,当广告 ID 不可用时,Offerwall SDK 会将持久 ID 用于广告目的。在 SDK 12.2.1 及更高版本中可用。
DISABLE_ADVERTISING_ID_CHECK
默认情况下,Tapjoy 的 Android SDK 会检查是否存在 Google 广告标识符,如果没有找到,初始化将失败。设置此标志可以禁用这一检查,使 Offerwall SDK 即使在没有 Google 广告标识符的情况下也能初始化。当应用中不存在 Google Play 服务时(例如,在非 Google Play 应用商店中构建发布版本时),此选项很有用。
如需查看所有连接标志的说明,请参阅 Java SDK 参考 现在编译并运行您的应用程序。 在 Tapjoy 后台中,如果单击顶部导航栏的“Analytics(分析)”,然后单击左侧导航栏中的“Real-time(实时)”选项卡,则会在运行应用程序后不久显示应用程序的活动。