From 2a01ef5e49422cca49bc7476fc1b8be8c8556561 Mon Sep 17 00:00:00 2001 From: hxb <hxb@hdlchina.com.cn> Date: 星期四, 08 九月 2022 10:46:57 +0800 Subject: [PATCH] 最新sdk java版本 --- HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java | 164 ++++++++++++++++++++++++++---------------------------- 1 files changed, 78 insertions(+), 86 deletions(-) diff --git a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java index f4a4071..c769935 100644 --- a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java +++ b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java @@ -3,7 +3,7 @@ import androidx.activity.result.ActivityResultCallback; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContracts; -import androidx.annotation.NonNull; + import androidx.annotation.RequiresApi; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; @@ -21,22 +21,25 @@ import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.listener.OnItemClickListener; import com.google.gson.reflect.TypeToken; -import com.hdl.sdk.common.config.TopicConstant; -import com.hdl.sdk.common.event.EventListener; -import com.hdl.sdk.common.exception.HDLLinkException; -import com.hdl.sdk.common.utils.IdUtils; -import com.hdl.sdk.common.utils.gson.GsonConvert; -import com.hdl.sdk.connect.HDLLink; -import com.hdl.sdk.connect.bean.LinkResponse; -import com.hdl.sdk.connect.bean.request.AuthenticateRequest; -import com.hdl.sdk.connect.bean.response.BaseLocalResponse; -import com.hdl.sdk.connect.bean.response.GatewaySearchBean; -import com.hdl.sdk.connect.callback.HDLLinkCallBack; -import com.hdl.sdk.connect.callback.HDLLinkResponseCallBack; -import com.hdl.sdk.connect.config.HDLLinkConfig; -import com.hdl.sdk.connect.socket.HDLAuthSocket; -import com.hdl.sdk.connect.bean.request.DeviceControlRequest; -import com.hdl.sdk.socket.SocketBoot; +import com.hdl.sdk.link.HDLLinkLocalSdk; +import com.hdl.sdk.link.bean.LinkFunctionBean; +import com.hdl.sdk.link.bean.LinkSceneBean; +import com.hdl.sdk.link.common.config.TopicConstant; +import com.hdl.sdk.link.common.event.EventListener; +import com.hdl.sdk.link.common.exception.HDLLinkException; +import com.hdl.sdk.link.common.utils.IdUtils; +import com.hdl.sdk.link.common.utils.gson.GsonConvert; +import com.hdl.sdk.link.core.bean.LinkResponse; +import com.hdl.sdk.link.core.bean.request.AuthenticateRequest; +import com.hdl.sdk.link.core.bean.request.DeviceControlRequest; +import com.hdl.sdk.link.core.bean.response.BaseLocalResponse; +import com.hdl.sdk.link.core.bean.response.GatewaySearchBean; +import com.hdl.sdk.link.core.callback.HDLLinkCallBack; +import com.hdl.sdk.link.core.callback.HDLLinkResponseCallBack; +import com.hdl.sdk.link.core.callback.HDLLinkTCallBack; +import com.hdl.sdk.link.core.config.HDLLinkConfig; +import com.hdl.sdk.link.core.connect.HDLUdpConnect; + import java.io.UnsupportedEncodingException; import java.security.MessageDigest; @@ -62,26 +65,31 @@ removeAllTopicsListener(); } - void init() { - HDLLinkConfig.getInstance().setLocalSecret("e186beeb7974998e"); - HDLLinkConfig.getInstance().setGatewayId("1519863101509361666"); + /** + * 鍒濆鍖朒DLSDK + */ + void initHDLSDK() { + HDLLinkLocalSdk.getInstance().init("1530018255883706369","735c1677504a7034"); + } + + /** + * 涓夋柟璁惧闆嗘垚鍒癏DL鏃讹紝闇�瑕佸垵濮嬪寲鐨勪俊鎭� + */ + void initThird(){ + initDeviceInfo();//鍒濆鍖栧熀鏈俊鎭紝闈炲父閲嶈锛岃璇佹椂瑕佺敤 + checkIfCertified();//妫�娴嬫槸鍚﹀凡缁忚璇佷簡锛岀敤浜庡垽鏂� } @RequiresApi(api = Build.VERSION_CODES.O) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); - responseTv = findViewById(R.id.response_tv); - tv = findViewById(R.id.state_tv); - rv = findViewById(R.id.rv); - rv.setLayoutManager(new LinearLayoutManager(this)); -// init(); - checkIfCertified(); - initDeviceInfo();//鍒濆鍖栧熀鏈俊鎭紝闈炲父閲嶈锛岃璇佹椂瑕佺敤 - registerAllTopicsListener(); + initView(); + initHDLSDK();//杩欐姣旇緝閲嶈锛屽湪浣跨敤鍓嶈璁剧疆濂藉綋鍓嶇綉鍏矷d鍙婂姞瑙e瘑閽� +// initThird();//涓夋柟璁惧闆嗘垚鏃惰鍒濆鍖� + registerAllTopicsListener();//娉ㄥ唽鐩戝惉鎺ユ敹鎵�鏈変富棰樼殑鏁版嵁 ActivityResultLauncher<String[]> launcher = registerForActivityResult(new ActivityResultContracts.RequestMultiplePermissions(), new ActivityResultCallback<Map<String, Boolean>>() { @Override @@ -89,7 +97,7 @@ } }); - + //鍒濆鍖栧畨鍗撴潈闄� launcher.launch(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE}); final List<DemoBean> beans = new ArrayList<>(); @@ -110,15 +118,9 @@ rv.setAdapter(demoAdapter); -// final SocketOptions options = new SocketOptions(); -// -// MessagePipeLine pipeLine = new MessagePipeLine(); -// options.setHandleMessage(pipeLine); -// options.setEnabledHeartbeat(false); - demoAdapter.setOnItemClickListener(new OnItemClickListener() { @Override - public void onItemClick(@NonNull BaseQuickAdapter<?, ?> adapter, @NonNull View view, int position) { + public void onItemClick(BaseQuickAdapter<?, ?> adapter, View view, int position) { switch (position) { case 0: //鍏ョ綉璁よ瘉 @@ -176,6 +178,13 @@ } }); } + //鍒濆鍖栨帶浠� + void initView(){ + responseTv = findViewById(R.id.response_tv); + tv = findViewById(R.id.state_tv); + rv = findViewById(R.id.rv); + rv.setLayoutManager(new LinearLayoutManager(this)); + } public void showToast(String text) { @@ -186,11 +195,10 @@ * 妫�娴嬫槸鍚﹁璇佽繃 */ void checkIfCertified() { - boolean isCertified = HDLLink.getInstance().checkIfCertified(); + boolean isCertified = HDLLinkLocalSdk.getInstance().checkIfCertified(); String mes = isCertified ? "宸茬粡璁よ瘉杩�" : "鏈璇�"; showToast(mes); tv.setText(mes); - } /** @@ -204,7 +212,7 @@ handleLinkResponse(response); } }; - HDLLink.getInstance().registerAllTopicsListener(allTopicsListener); + HDLLinkLocalSdk.getInstance().registerAllTopicsListener(allTopicsListener); } /** @@ -225,7 +233,6 @@ } } else { //鍏跺畠涓婚 - } } @@ -247,7 +254,7 @@ * 绉婚櫎鎵�鏈変富棰樻暟鎹殑鐩戝惉 */ void removeAllTopicsListener() { - HDLLink.getInstance().removeAllTopicsListener(allTopicsListener); + HDLLinkLocalSdk.getInstance().removeAllTopicsListener(allTopicsListener); } void initDeviceInfo() { @@ -303,7 +310,7 @@ authbean.setRequest(requestBean); //HDLLinkConfig.getInstance().getDeviceInfoBean()杩欎釜鍒濆鍖栫殑鏃跺�欒鍏堣缃ソ AuthenticateRequest request = new AuthenticateRequest(IdUtils.getUUId(), time, HDLLinkConfig.getInstance().getDeviceInfoBean(), authbean); - HDLLink.getInstance().startAuthenticateRequest(request, new HDLLinkCallBack() { + HDLLinkLocalSdk.getInstance().startAuthenticateRequest(request, new HDLLinkCallBack() { @Override public void onError(HDLLinkException e) { // tv.setText("璁よ瘉澶辫触"); @@ -348,19 +355,14 @@ */ void searchGatewayBroadcast() { tv.setText("鎼滅储缃戝叧涓�..."); - HDLLink.getInstance().searchGatewayBroadcast(new HDLAuthSocket.SearchGatewayCallBack() { + HDLLinkLocalSdk.getInstance().searchGatewayBroadcast(new HDLUdpConnect.SearchGatewayCallBack() { @Override - public void onError(HDLLinkException e) { -// tv.setText("缃戝叧涓嶅湪绾�"); -// responseTv.setText(e.getMsg()); - Log.i("TAG", "缃戝叧涓嶅湪绾�" + e.getMsg()); + public void onSuccess(GatewaySearchBean gatewaySearchBean) { } @Override - public void onSuccess(GatewaySearchBean gatewaySearchBean) { -// tv.setText("缃戝叧鍦ㄧ嚎"); -// responseTv.setText("鎼滅储鎴愬姛 缃戝叧id锛�" + gatewaySearchBean.getGatewayId()); - Log.i("TAG", "onSuccess: 鎼滅储鎴愬姛锛�"+gatewaySearchBean.getGatewayId()); + public void onError(HDLLinkException e) { + } }); } @@ -371,18 +373,15 @@ void getFunctionList() { tv.setText("鑾峰彇鍔熻兘鍒楄〃涓�..."); responseTv.setText(""); - HDLLink.getInstance().getFunctionList(new HDLLinkCallBack() { + HDLLinkLocalSdk.getInstance().getFunctionList(new HDLLinkTCallBack<List<LinkFunctionBean>>() { @Override - public void onError(HDLLinkException error) { -// tv.setText(error.getMsg()); - Log.i("TAG", "onError 鑾峰彇鍔熻兘鍒楄〃澶辫触" + error.getMsg()); + public void onSuccess(List<LinkFunctionBean> data) { + } @Override - public void onSuccess(String data) { -// tv.setText("鑾峰彇鍔熻兘鍒楄〃鎴愬姛"); -// responseTv.setText(data); - Log.i("TAG", "onSuccess 鑾峰彇鍔熻兘鍒楄〃鎴愬姛" + data.toString()); + public void onError(HDLLinkException e) { + } }); } @@ -395,17 +394,16 @@ tv.setText("鍔熻兘灞炴�ц鍙�"); List<String> sids = new ArrayList<>(); sids.add(testLightSid); - HDLLink.getInstance().getFunctionAttribute(sids, new HDLLinkCallBack() { + + HDLLinkLocalSdk.getInstance().getFunctionAttribute(sids, new HDLLinkTCallBack<List<LinkFunctionBean>>() { @Override - public void onSuccess(String msg) { -// responseTv.setText(msg); - Log.i("TAG", "onSuccess 鍔熻兘灞炴�ц鍙栨垚鍔�" + msg.toString()); + public void onSuccess(List<LinkFunctionBean> data) { + } @Override public void onError(HDLLinkException e) { -// responseTv.setText(e.getMsg()); - Log.i("TAG", "onError 鑾峰彇鍔熻兘鍒楄〃澶辫触" + e.getMsg()); + } }); } @@ -418,19 +416,15 @@ tv.setText("璇诲彇鐘舵�佷腑..."); List<String> list = new ArrayList<>(); list.add(testLightSid);//瑕佽鍙栬澶囩殑sid - HDLLink.getInstance().propertyRead(list, new HDLLinkCallBack() { + HDLLinkLocalSdk.getInstance().propertyRead(list, new HDLLinkCallBack() { @Override - public void onSuccess(String data) { -// tv.setText("璇诲彇鎴愬姛"); -// responseTv.setText(data); - Log.i("TAG", "onSuccess 璇诲彇璁惧鐘舵�佹垚鍔�" + data.toString()); + public void onSuccess(String msg) { + } @Override public void onError(HDLLinkException e) { -// tv.setText("璇诲彇澶辫触"); -// responseTv.setText(e.getMsg()); - Log.i("TAG", "onError 璇诲彇璁惧鐘舵�佸け璐�" + e.getMsg()); + } }); } @@ -452,7 +446,7 @@ statusBeanList.add(bean); request.setStatus(statusBeanList); requestList.add(request); - HDLLink.getInstance().propertyDown(requestList, new HDLLinkCallBack() { + HDLLinkLocalSdk.getInstance().propertyDown(requestList, new HDLLinkCallBack() { @Override public void onSuccess(String data) { // responseTv.setText(data); @@ -472,17 +466,15 @@ */ void getSceneList() { tv.setText("璇诲彇鍦烘櫙鍒楄〃"); - HDLLink.getInstance().getSceneList(new HDLLinkCallBack() { + HDLLinkLocalSdk.getInstance().getSceneList(new HDLLinkTCallBack<List<LinkSceneBean>>() { @Override - public void onSuccess(String msg) { -// responseTv.setText(msg); - Log.i("TAG", "onSuccess 鑾峰彇鍦烘櫙鍒楄〃鎴愬姛" + msg.toString()); + public void onSuccess(List<LinkSceneBean> data) { + } @Override public void onError(HDLLinkException e) { -// responseTv.setText(e.getMsg()); - Log.i("TAG", "onError 鑾峰彇鍦烘櫙鍒楄〃澶辫触" + e.getMsg()); + } }); } @@ -504,7 +496,7 @@ } else { sids.add("04010560D2C76E0A0A0100010000"); } - HDLLink.getInstance().controlScene(sids, new HDLLinkCallBack() { + HDLLinkLocalSdk.getInstance().controlScene(sids, new HDLLinkCallBack() { @Override public void onSuccess(String msg) { // responseTv.setText(msg); @@ -532,7 +524,7 @@ tv.setText("TCP鍙戦�� 鍙彂涓�娆★紝涓嶇洃鍚洖澶嶏紝涓嶉噸鍙�"); String propertyDownTopic = String.format(TopicConstant.PROPERTY_DOWN, HDLLinkConfig.getInstance().getGatewayId()); String bodyStr = getPropertyDownBodyStr(); - HDLLink.getInstance().tcpSendMsg(propertyDownTopic, bodyStr); + HDLLinkLocalSdk.getInstance().tcpSendMsg(propertyDownTopic, bodyStr); } /** @@ -542,7 +534,7 @@ tv.setText("UDP鍙戦�� 鍙彂涓�娆★紝涓嶇洃鍚洖澶嶏紝涓嶉噸鍙�"); String propertyDownTopic = String.format(TopicConstant.PROPERTY_DOWN, HDLLinkConfig.getInstance().getGatewayId()); String bodyStr = getPropertyDownBodyStr(); - HDLLink.getInstance().udpSendMsg(propertyDownTopic, bodyStr); + HDLLinkLocalSdk.getInstance().udpSendMsg(propertyDownTopic, bodyStr,null); } private String getPropertyDownBodyStr() { @@ -574,7 +566,7 @@ tv.setText("UDP鍙戦�侊紝鐩戝惉涓婚鍥炲锛屽甫閲嶅彂甯﹀洖璋�"); String propertyDownTopic = String.format(TopicConstant.PROPERTY_DOWN, HDLLinkConfig.getInstance().getGatewayId()); String bodyStr = getPropertyDownBodyStr(); - HDLLink.getInstance().udpSendMsg(propertyDownTopic, bodyStr, new HDLLinkResponseCallBack() { + HDLLinkLocalSdk.getInstance().udpSendMsg(propertyDownTopic, bodyStr, new HDLLinkResponseCallBack() { @Override public void onSuccess(LinkResponse msg) { Log.i("TAG", "onSuccess UDP鍙戦�佹垚鍔�" + GsonConvert.getGson().toJson(msg)); @@ -596,7 +588,7 @@ tv.setText("TCP鍙戦�侊紝鐩戝惉涓婚鍥炲锛屽甫閲嶅彂甯﹀洖璋�"); String propertyDownTopic = String.format(TopicConstant.PROPERTY_DOWN, HDLLinkConfig.getInstance().getGatewayId()); String bodyStr = getPropertyDownBodyStr(); - HDLLink.getInstance().tcpSendMsg(propertyDownTopic, bodyStr, new HDLLinkCallBack() { + HDLLinkLocalSdk.getInstance().tcpSendMsg(propertyDownTopic, bodyStr, new HDLLinkCallBack() { @Override public void onSuccess(String msg) { Log.i("TAG", "onSuccess TCP鍙戦�佹垚鍔�" + msg); -- Gitblit v1.8.0