积分墙迁移指南

  1. 首先,您需要集成ironSource Tapjoy adapter. 您可以如下所示将其添加到您的gradle文件中:
maven { url "https://sdk.tapjoy.com/"}
implementation 'com.ironsource.adapters:tapjoyadapter:4.1.23'
implementation 'com.tapjoy:tapjoy-android-sdk:12.11.1'

您可以在这里获取最新版本的adapter.

  1. 在Adatper中包括Tapjoy SDK,因此您可以直接调用Tapjoy SDK函数。 下面是关于如何使用Tapjoy 积分墙的方法。 首先,我们需要将Tapjoy导入到您的类中:
import com.tapjoy.Tapjoy;
  1. 接下来需要初始化积分墙,通常情况下通过Ironsource初始化。 一旦初始化完成,您将收到相应的回调。请不要在收到初始化成功的回调之前调用任何Tapjoy SDK功能。
Hashtable<String, Object> connectFlags = new 
Hashtable<String, Object>();

Tapjoy.connect(getApplicationContext(), "TJ_SDK_KEY", connectFlags, new TJConnectListener() {
  @Override
  public void onConnectSuccess() {

  } 
      
  @Override
  public void onConnectFailure() {

  }
});
  1. 定义两个新的类变量:
private TJPlacementListener placementListener = this;
private TJPlacement placement;
  1. 接下来需要创建一个展示位置对象。这个展示位置是您配置在Tapjoy后台并添加了积分墙广告内容。在下面示例中,我们假设展示位置名称为”Offerwall“。 在您的实现中,您可以命名为任意名称,但是一定要保证您的代码中使用的名称和后台配置一致。
placement = Tapjoy.getPlacement("Offerwall", placementListener);
  1. 现在您可以请求积分墙广告内容了。通过这个调用,我们将会加载相应积分墙广告内容。通常情况下积分墙会很快加载完成。最好的方式是在积分墙展示之前提前加载。
placement.requestContent();
  1. 下面是需要实现的积分墙相应的回调。
public void onRequestSuccess(TJPlacement placement); 
public void onRequestFailure(TJPlacement placement, TJError error);
public void onContentReady(TJPlacement placement); 
public void onContentShow(TJPlacement placement);
public void onContentDismiss(TJPlacement placement);
public void onPurchaseRequest(TJPlacement placement, TJActionRequest request, String productId);
public void onRewardRequest(TJPlacement placement, TJActionRequest request, String itemId, int quantity);
public void onClick(TJPlacement placement);

其中一些可以替换您可能已经实现的ironSource回调(通过OfferwallListener)。 您可以在下表中看到相应的回调,这样您就可以轻松地将任何自定义逻辑移动到适当的Tapjoy回调中:

ironSource Callback Tapjoy Callback
onOfferwallOpened onContentShow
onOfferwallClosed onContentDismiss
onOfferwallAvailable onContentReady

onRequestSuccess 会在将会内容请求从Tapjoy的服务器返回时调用。 onContentReady 将在内容(积分墙)准备好显示时调用。此时您可以显示积分墙,或设置一些标志,以便您知道积分墙已准备好在您需要时显示。

  1. 要显示您的积分墙,需要先检查内容是否准备就绪,然后调用 showContent:
if(placement.isContentReady()) {
  placement.showContent();
}

这个将会替换您现有的ironSource调用:

IronSource.showOfferwall();
  1. 一旦用户关闭积分墙,您必须再次请求该内容。 一次请求不能多次显示。 我们建议您在 onContentDismiss 回调中再次请求,以便下次用户请求时再次显示。

  2. 您现在可以删除任何剩余的 ironSource 积分墙代码。 例如:您不再需要设置ironSource Offerwall listener,可以将“OfferwallListener” 的实现删除了。

Privacy

如果您使用ironSource LevelPlay,您可以使用LevelPlay API与Tapjoy共享以下隐私标志:

  1. GDPR consent.
  2. 根据美国各州隐私法选择不出售或分享个人信息.
  3. 将特定最终用户标记为儿童. 请注意,如果您的应用根据COPPA主要面向儿童,您必须将所有最终用

此外,如果您的应用参与了Google Play的 Designed for Families计划,或出现在Google Play的“家庭”部分,请将所有应用的用户标记为儿童并使用 此API 这样我们就不会收集用户的 GAID。

如果您没有使用ironSource LevelPlay 或者如果您想单独配置 Tapjoy 的 SDK,请按照这些指南 与 Tapjoy 分享相关的隐私标志。