package com.secondworld.sdk;
|
import android.app.Activity;
|
import android.app.Application;
|
import android.os.Bundle;
|
|
import androidx.annotation.Nullable;
|
|
import com.adjust.sdk.AdjustAttribution;
|
import com.adjust.sdk.AdjustEventFailure;
|
import com.adjust.sdk.OnAttributionChangedListener;
|
import com.adjust.sdk.OnEventTrackingFailedListener;
|
import com.secondworld.sdk.utils.LogUtil;
|
import com.adjust.sdk.Adjust;
|
import com.adjust.sdk.AdjustConfig;
|
import com.adjust.sdk.AdjustEventSuccess;
|
import com.adjust.sdk.LogLevel;
|
import com.adjust.sdk.OnEventTrackingSucceededListener;
|
|
import org.json.JSONException;
|
import org.json.JSONObject;
|
|
public class GTGameApp extends Application {
|
|
@Override
|
public void onCreate() {
|
super.onCreate();
|
initAdust();
|
GameAppProxy.create(this,new GTGamePlatform());
|
registerProxy();
|
}
|
|
protected void registerProxy() {
|
//主界面代理注册
|
GameActivity.registerProxy(GTGameMain.class);
|
//AppsFlyerUtil.init();
|
}
|
|
|
|
/**
|
* 初始化adjust
|
*/
|
private void initAdust() {
|
String appToken = getResources().getString(R.string.adjust_app_token);
|
String environment = AdjustConfig.ENVIRONMENT_PRODUCTION;
|
AdjustConfig config = new AdjustConfig(this, appToken, environment);
|
|
Adjust.onCreate(config);
|
config.setLogLevel(LogLevel.WARN);
|
registerActivityLifecycleCallbacks(new AdjustLifecycleCallbacks());
|
|
// Set event success tracking delegate.
|
config.setOnEventTrackingSucceededListener(new OnEventTrackingSucceededListener() {
|
@Override
|
public void onFinishedEventTrackingSucceeded(AdjustEventSuccess eventSuccessResponseData) {
|
// ...
|
LogUtil.i("Adjust-mfp", "事件上传成功 " + eventSuccessResponseData.toString());
|
}
|
});
|
|
// Set event failure tracking delegate.
|
config.setOnEventTrackingFailedListener(new OnEventTrackingFailedListener() {
|
@Override
|
public void onFinishedEventTrackingFailed(AdjustEventFailure eventFailureResponseData) {
|
// ...
|
LogUtil.i("Adjust-mfp", "事件上传失败 " + eventFailureResponseData.message);
|
}
|
});
|
|
// 归因回传
|
config.setOnAttributionChangedListener(new OnAttributionChangedListener() {
|
@Override
|
public void onAttributionChanged(AdjustAttribution attribution) {
|
JSONObject fbInstallReferrerJSONObject = extractFBInstallReferrerJSON(attribution);
|
}
|
});
|
}
|
|
private static final class AdjustLifecycleCallbacks implements ActivityLifecycleCallbacks {
|
@Override
|
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
|
|
}
|
|
@Override
|
public void onActivityStarted(Activity activity) {
|
|
}
|
|
@Override
|
public void onActivityResumed(Activity activity) {
|
Adjust.onResume();
|
}
|
|
@Override
|
public void onActivityPaused(Activity activity) {
|
Adjust.onPause();
|
}
|
|
@Override
|
public void onActivityStopped(Activity activity) {
|
|
}
|
|
@Override
|
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
|
|
}
|
|
@Override
|
public void onActivityDestroyed(Activity activity) {
|
|
}
|
}
|
|
@Nullable
|
JSONObject extractFBInstallReferrerJSON(AdjustAttribution adjustAttribution) {
|
try {
|
return new JSONObject(adjustAttribution.fbInstallReferrer);
|
} catch (JSONException e) {
|
LogUtil.i("example", e.getMessage());
|
}
|
return null;
|
}
|
}
|