快速入门
添加 SDK 至您的项目
添加下行到您的 build.gradle
文件:
implementation 'com.adjust.sdk:adjust-android:4.28.7' implementation 'com.android.installreferrer:installreferrer:2.2'
点击同步
添加权限
Adjust SDK 需要下列权限。如果尚未添加,请将权限加入您的 AndroidManifest.xml
文件中:
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS\_NETWORK\_STATE"/>
Proguard 设置
如果您使用的是 Proguard,请将如下代码行添加至您的 Proguard 文件:
\-keep class com.adjust.sdk.\*\*{ \*; } -keep public class com.android.installreferrer.\*\* { \*; }
初始化Adjust
找到您的 Activity 文件 以下我们以 UnityPlayerActivity 为例
//Adjust
import com.adjust.sdk.Adjust;
import com.adjust.sdk.AdjustConfig;
初始化代码
public static final String ADJUST_TAG = "ADJUST";
//Adjust Init
public void AdjustInit(){
String appToken = "{ Your AppToken }";
String environment = AdjustConfig.ENVIRONMENT_PRODUCTION; //AdjustConfig.ENVIRONMENT_SANDBOX; AdjustConfig.ENVIRONMENT_PRODUCTION;
AdjustConfig config = new AdjustConfig(this, appToken, environment);
Adjust.onCreate(config);
}
在 onCreate 方法内调用
AdjustEvent事件方法
public void AdjustEvent(String event){
AdjustEvent adjustEvent = new AdjustEvent(event);
Adjust.trackEvent(adjustEvent);
Log.d(ADJUST_TAG,event);
}
到此 Android Studio 里的环境已部署完成
下面是 C# 代码 如何去调用 AdjustEvent 方法 传递事件
AdjustEvent方法 封装 - 以C#案例
public void SendEvent(string evt )
{
#if !UNITY_EDITOR
var javaClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
var javaObject = javaClass.GetStatic<AndroidJavaObject>("currentActivity");
javaObject.Call<string>("AdjustEvent", evt );
#endif
}
题外话:
我们通过Java的反射原理来获取本来导入class.jar类才能引用到的com.unity3d.player.UnityPlayer包下的currentActivity上下文。同理给unity发消息也是反射原理
反射的开销还是蛮大的 所以 推荐Unity里的所有事件 封装一个接口调用 在AndroidStudio里 做区分
案例:
这里我们把GA的事件 拆出来 给 Adjust 派发 这样每次事件只需要调用一次 即可
GA的事件 是由 : 组成的
我们只需要将其中的 event拿到就行 这里用字符串的方法 Split
优化:
当然 你也可以对 整个事件流做降压处理 在网络差的情况下 效果显著
我这里使用的方法是 一个栈 和 一个定时器 来完成
原理 是每次 有事件来的时候 不会立即Send 而是会压入栈中 定时器会每隔200ms 进行派发栈中的消息 当然你可以采用队列来实现这一功能
优化: 新事件调用时 检测 在栈元素为空的时候 开启定时器 并 入栈 否则 只是简单的压入栈中
派发时: 检测 栈元素为空的时候 cancel定时器
本文转自 https://blog.csdn.net/qq_39162566/article/details/121348764,如有侵权,请联系删除。