手動実装

1. SDKダウンロード

まず、Android SDK をダウンロード します。

2. プロジェクトへのSDKの追加

ダウンロードしたSDKを解凍すると、docs, libraries, TapjoyEasyapp のフォルダができます。

  1. tapjoyconnectlibrary.aar ファイルをプロジェクトの /lib フォルダにコピーします(フォルダが存在しない場合は作成してからコピーします)
  2. Tapjoyをアプリの build.gradle に追加します:
  dependencies {
    implementation files('libs/tapjoyconnectlibrary.aar')
  }
  1. Google Play Service を build.gradle に追加します:
repositories {
  maven {
    url 'https://maven.google.com/'
    name 'Google'
  }
}
dependencies {
  implementation 'com.google.android.gms:play-services-ads-identifier:17.1.0'
}

PermissionとActivityの追加

以下の Permission を設定します:

  • ACCESS_WIFI_STATE(任意)

AD_ID と Google Play ファミリー向けプログラム

play-services-ads v17.1.0 は AD_ID パーミッションを含みますが、このパーミッションは Google Play ファミリー向けプログラム に加入している場合には削除しなければなりません。

マニフェストに以下の記述を追加すれば、このパーミッションを排除できます:

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

詳細は こちら をご参照ください。

JAR による実装

AARではなくJARによるSDK実装を行う場合、以下のパーミッションおよびアクティビティが追加で必要になります。If you are using the JAR option instead of the AAR, the following permissions and activities are also necessary.

  • 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"
  android:hardwareAccelerated="true"
  android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity
  android:name="com.tapjoy.TJContentActivity"
  android:configChanges="orientation|keyboardHidden|screenSize"
  android:theme="@android:style/Theme.Translucent.NoTitleBar"
  android:hardwareAccelerated="true" />

また、アプリのアクティビティのマニフェストに同様の configChanges を指定するようにして下さい:

  android:configChanges="orientation|keyboardHidden|screenSize"

この時点でプロジェクトのコンパイルが可能です。アプリをコンパイル、実行してアプリが正常に動作する事を確認してみるのも良いかもしれません。まだアプリのコードに何も手を入れていないため、アプリにエラーが発生したり動作が変わる事もないはずです。

3. Tapjoy Connect実装

次に、Tapjoy connect をアプリに実装します。 これにより、アプリからTapjoy SDK を"起動"します。

Tapjoy connect の実装は非常に重要です。この実装が正常に行われていない場合、Tapjoyの機能がいっさい動作しなくなるからです

Tapjoy connect を実装するためには、実装を行うアプリのTapjoy SDK Keyが必要になります。この値を取得するには Tapjoyダッシュボードで実装するアプリを選択肢、"設定" - "アプリ設定" をクリックします。画面下部の SDK Keyの箇所に各プラットフォームのSDK Keyが表示されています。

コードを実装して行きます。 Tapjoy を Activity にインポートします:

java
  import com.tapjoy.Tapjoy

次に、メイン Activity の onCreate() メソッドに Tapjoy connect を実装します:

java
  Hashtable<String, Object> connectFlags = new Hashtable<String, Object>();
  connectFlags.put(TapjoyConnectFlag.ENABLE_LOGGING, "true"); // 用アプリではこの設定を外す事

  Tapjoy.connect(getApplicationContext(), "SDK_KEY_GOES_HERE", connectFlags, new TJConnectListener() {
        @Override
        public void onConnectSuccess() {
          this.onConnectSuccess();
        } 

        @Override
        public void onConnectFailure() {
          this.onConnectFail();
        }
   });

サンプルコードの全体は、SDKに同梱されている 'EasyApp'をご参照ください。

connectFlagsの詳細に関してはJava SDK Referenceをご参照ください。

パブリッシャーにとって ENABLE_LOGGING および USER_ID の二つが重要かつ有用なフラグです。 AppLaunch システムプレイスメントで 適切な User ID を設定するには、USER_ID を connect の時点で設定する必要があります。 Push2Earn プレイスメントを利用する場合にも、プレイスメントを取得する前に指定しておく必要があります。

いくつかのコネクトフラグは、TapjoyがAndroid OSから得られる各種IDをどのように使用するかをパブリッシャーが制御できます:

  • ALLOW_LEGACY_ID_FALLBACK (SDK 12.2.1 以降で使用可能) ラグがセットされた場合、Tapjoy SDK は広告IDが使用できない場合、永続IDを広告用途で使用します。
  • DISABLE_ANDROID_ID_AS_ANALYTICS_ID ラグがセットされた場合、Tapjoyがアナリティクス用途で使用するIDはAndroid IDを元にしたものではなく、ランダムに生成した文字列となります。既存のアプリのリリース後にこのフラグをセットしたビルドをリリースすると、既存のユーザーがTapjoyのアナリティクスツール上で新規ユーザーとして扱われる結果になります
  • DISABLE_ADVERTISING_ID_CHECK デフォルトでは、TapjoyのAndroid SDKは Google Advertising Identifier が利用できるかを確認し、利用できない場合には初期化が失敗します。 このフラグを設定すると、Tapjoy SDK は Google Advertising Identifier が利用可能かのチェックを行わないため、利用できない場合でも初期化が行われます。 これは、Google Play ストア以外のストアなど、Google Play Servicesが存在しない端末があるストアへのリリース用のビルドを作成する時に役に立ちます。

アプリをコンパイルして、実行してみて下さい。

apjoy ダッシュボードで 画面上部のナビゲーションバーにある"アナリティクス" をクリックし、画面左の "リアルタイムレポート"タブをクリックして表示される画面で"アクティブユーザー数"が反映される事を確認して下さい。

これでTapjoyがアプリで起動するようになりました。