SDK를 수동으로 연동하는 첫 번째 단계는 Android SDK를 다운로드 하는 것 입니다.
탭조이 SDK의 압축을 해제하면 다음과 같은 폴더 구조를 확인할 수 있습니다.
dependencies {
implementation files('libs/tapjoyconnectlibrary.aar')
}
repositories {
maven {
url 'https://maven.google.com/'
name 'Google'
}
}
dependencies {
implementation 'com.google.android.gms:play-services-ads-identifier:17.0.0'
}
탭조이 SDK를 이용하기 위해서 다음 퍼미션이 선택적으로 필요합니다.
ACCESS_WIFI_STATE
(optional) <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
AAR 대신 JAR 옵션을 사용하는 경우 다음 권한 및 퍼미션도 필요합니다.
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"/>
AndroidManifest.xml 파일의 application 블록에 다음 activity들을 추가합니다.
<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.TJWebViewActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/TranslucentTheme"
android:hardwareAccelerated="true" />
<activity
android:name="com.tapjoy.TJAdUnitActivity"
android:enableOnBackInvokedCallback="false"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/TranslucentTheme"
android:hardwareAccelerated="true"
tools:ignore="UnusedAttribute" />
<activity
android:name="com.tapjoy.TJWebViewActivity"
android:enableOnBackInvokedCallback="false"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/TranslucentTheme"
android:hardwareAccelerated="true"
tools:ignore="UnusedAttribute" />
앱의 Manifest activity에 다음 configChanges 속성을 추가합니다.
android:configChanges="orientation|keyboardHidden|screenSize"
여기까지 마치셨다면, 컴파일 후 앱을 실행해보는 것을 추천합니다. 실제 앱 코드는 수정하지 않은 상태이기 때문에 에러가 발생하거나 다른 변화가 발생하지 않아야 합니다. 만약 문제가 있다면 FAQ페이지를 확인하시거나, 문의하기 페이지를 이용해주시길 바랍니다.
이제 탭조이 연동을 위한 첫번째 연동코드인 connect 요청 코드를 적용해볼 차례입니다. 이 코드를 통해 앱에 탑재된 탭조이 SDK가 동작을 시작하게 됩니다.
탭조이 connect 요청은 매우 중요합니다. connect 요청이 없으면 탭조이의 모든 기능이 작동하지 않습니다.
탭조이 SDK가 connect 요청을 하기 위해서는 SDK Key가 필요합니다.
탭조이 대시보드 왼쪽 하단에 위치한 "설정" 버튼을 클릭하면 나오는 페이지의 하단에서 SDK Key를 찾을 수 있습니다.
이제 실제로 코드를 작성할 차례입니다. 탭조이 SDK를 import 하세요.
import com.tapjoy.Tapjoy
다음 코드를 메인 액티비티의 onCreate() 안에 삽입해 주세요.
Hashtable<String, Object> connectFlags = new Hashtable<String, Object>();
connectFlags.put(TapjoyConnectFlag.ENABLE_LOGGING, "true"); // Disable this in production build
connectFlags.put(TapjoyConnectFlag.USER_ID, "USER_ID_GOES_HERE"); // Important for self-managed currency
Tapjoy.connect(getApplicationContext(), tapjoySDKKey, connectFlags, new TJConnectListener() {
@Override
public void onConnectSuccess() {
TapjoyEasyApp.this.onConnectSuccess();
}
@Override
public void onConnectWarning(int code, String message) {
}
@Override
public void onConnectFailure(int code, String message) {
}
});
이 코드에서 Tapjoy에 연결하고(성공, 경고, 실패 콜백 수신) 두 개의 '연결 플래그'를 구성하는 것을 볼 수 있습니다.
두가지 가장 유용한 값은 ENABLE_LOGGING, USER_ID 입니다. 디버그 빌드에서 로깅 플래그를 사용하지만 프로덕션용으로 빌드할 때는 비활성화해야합니다.
자체 관리 가상화폐를 사용하는 경우 USER_ID 플래그를 설정하는 것은 매우 중요합니다. connect 과정에서 사용자ID를 설정하는 것은 잠재적인 보상 문제를 방지하기 때문에 중요합니다.
다음 connectFlags 설정들은 android 플랫폼의 다양한 식별자 사용에 대한 옵션을 제공합니다.
모든 연결 플래그에 대한 설명은 Java SDK Reference를 참조하십시오.
이제 앱을 빌드하고 실행해볼 수 있습니다.
탭조이 대시보드에서 상단 "분석" 메뉴를 선택한 후, 좌측 "리얼타임 분석" 메뉴을 클릭하면 실시간 분석화면을 통해 연동 상태를 확인할 수 있습니다.
축하합니다! 탭조이 SDK 기본 연동에 성공했습니다!