package com.hdl.sdk.common;
|
|
import android.content.Context;
|
import android.content.pm.PackageInfo;
|
|
import com.hdl.sdk.common.event.EventListener;
|
import com.hdl.sdk.common.utils.AllTopicManagerUtils;
|
import com.hdl.sdk.common.utils.LogUtils;
|
import com.hdl.sdk.connect.HDLLink;
|
import com.hdl.sdk.connect.bean.LinkResponse;
|
import com.hdl.sdk.connect.socket.HDLAuthSocket;
|
import com.hdl.sdk.connect.socket.HDLSocket;
|
|
/**
|
* Created by Tong on 2021/9/28.
|
*/
|
public class HDLSdk {
|
|
private Context context;
|
|
private String version = "1.2.1";
|
|
/**
|
* 获取当前版本
|
*
|
* @return
|
*/
|
public String getVersion() {
|
try {
|
|
PackageInfo packageInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), 0);
|
String versionName = packageInfo.versionName; // 版本名称(字符串)
|
return version;
|
} catch (Exception e) {
|
LogUtils.e("获取版本失败:" + e.getMessage());
|
}
|
return "unknow";
|
}
|
|
private HDLSdk() {
|
}
|
|
private static class SingletonInstance {
|
private static final HDLSdk INSTANCE = new HDLSdk();
|
}
|
|
public static HDLSdk getInstance() {
|
return SingletonInstance.INSTANCE;
|
}
|
|
public void init(Context context) {
|
if (this.context != null) {
|
return;
|
}
|
this.context = context.getApplicationContext();
|
HDLAuthSocket.getInstance().init();
|
HDLSocket.getInstance().broadcastRequest();
|
LogUtils.i("HDLSdk Version:" + getVersion());
|
|
//订阅所有的主题
|
HDLLink.getInstance().registerAllTopicsListener(new EventListener() {
|
@Override
|
public void onMessage(Object msg) {
|
if (msg == null || !(msg instanceof LinkResponse)) {
|
return;
|
}
|
AllTopicManagerUtils.manager((LinkResponse) msg);
|
}
|
});
|
}
|
|
|
public Context getContext() {
|
return context;
|
}
|
|
/**
|
* 设置打印是否开启
|
*
|
* @param enable
|
*/
|
public void setLogEnabled(boolean enable) {
|
LogUtils.setEnabled(enable);
|
}
|
|
|
}
|