| | |
| | | removeAllTopicsListener(); |
| | | } |
| | | |
| | | void initDeviceInfo() { |
| | | AuthenticateRequest.AuthenticateDeviceInfoBean infoBean = new AuthenticateRequest.AuthenticateDeviceInfoBean(); |
| | | infoBean.setDeviceMAC("f2c5d8bad48f"); |
| | | infoBean.setIPMAC("f2c5d8bad48f"); |
| | | infoBean.setDeviceName("音乐播放器");//设备名字 |
| | | infoBean.setDeviceModel("MCLog.431");//设备型号 |
| | | infoBean.setAccessMode("WIFI"); |
| | | infoBean.setIPGateway("192.168.1.1"); |
| | | infoBean.setIPAddress("192.168.1.103"); |
| | | infoBean.setGateway_type("screen.touch"); |
| | | infoBean.setHw_version("HW2.0"); |
| | | infoBean.setFw_version("Fw1.0"); |
| | | infoBean.setOID("010105000000FE11");//每个设备oid都要不一样 |
| | | infoBean.setSid("110105000000FE08110100000011");//每个设备的sid都要不一样 |
| | | infoBean.setSupplier("JINMAOYUN"); |
| | | HDLLinkConfig.getInstance().setDeviceInfoBean(infoBean); |
| | | } |
| | | |
| | | void applyDeviceSecret() { |
| | | tv.setText("开始申请设备密钥..."); |
| | | responseTv.setText(""); |
| | |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 入网认证 |
| | | */ |
| | | void sendAuthenticateRequest() { |
| | | tv.setText("开始入网认证..."); |
| | | responseTv.setText(""); |
| | | //认证提交参数准备 |
| | | // |
| | | // //测试服务器 |
| | | // String spkStr = "music.standard";//产品spk |
| | | // String macStr = "AA000000000000AF";//设备唯一MAC地址 |
| | | // String secret = "44b360eb74b7ba64";//通过spk和mac提交云端认证后分配的secret |
| | | |
| | | // 正式服务器 |
| | | String spkStr = "screen.touch";//产品spk |
| | | // String macStr = "AA00000000000100";//设备唯一MAC地址 |
| | | String macStr = editText.getText().toString();//设备唯一MAC地址 |
| | | // String secret = "e186beeb7974998e";//通过spk和mac提交云端认证后分配的secret |
| | | |
| | | String mac_key = stringToMD5(stringToMD5(macStr + secret)); |
| | | String versionString = "HDL_V1.0.1";// |
| | | String time = String.valueOf(System.currentTimeMillis()); |
| | | HDLLinkConfig.getInstance().getDeviceInfoBean().setDeviceMAC(macStr); |
| | | // HDLLinkConfig.getInstance().setCurrentGateway(infoBean); |
| | | |
| | | //1.设置认证信息 |
| | | AuthenticateRequest.RequestBean requestBean = new AuthenticateRequest.RequestBean(); |
| | | requestBean.setMAC(macStr); |
| | | requestBean.setSupplier("JINMAOYUN"); |
| | | requestBean.setFirmwareVersion(versionString); |
| | | requestBean.setHardwareModel("1956F"); |
| | | // HDLLinkConfig.getInstance().setRequestBean(requestBean); |
| | | |
| | | AuthenticateRequest.AuthBean authbean = new AuthenticateRequest.AuthBean(); |
| | | authbean.setSpk(spkStr); |
| | | authbean.setMACKey(mac_key); |
| | | authbean.setRequest(requestBean); |
| | | HDLLinkConfig.getInstance().setAuthBean(authbean); |
| | | |
| | | //HDLLinkConfig.getInstance().getDeviceInfoBean()这个初始化的时候要先设置好 |
| | | AuthenticateRequest request = new AuthenticateRequest(IdUtils.getUUId(), time, HDLLinkConfig.getInstance().getDeviceInfoBean(), authbean); |
| | | HDLLink.getInstance().startAuthenticateRequest(request, new HDLLinkCallBack() { |
| | | @Override |
| | | public void onError(HDLLinkException e) { |
| | | tv.setText("认证失败" + e.getCode()); |
| | | responseTv.setText(e.getMsg()); |
| | | Log.e(TAG, "onError: 认证失败 " + e.getCode()); |
| | | } |
| | | |
| | | @RequiresApi(api = Build.VERSION_CODES.O) |
| | | @Override |
| | | public void onSuccess(String msg) { |
| | | tv.setText("认证成功"); |
| | | responseTv.setText(msg.toString()); |
| | | localSecret.setText("密钥:" + HDLLinkConfig.getInstance().getLocalSecret()); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | public void UploadDeviceAuth(String mac, String result, String message, String auth_code) { |
| | |
| | | HDLLink.getInstance().removeAllTopicsListener(allTopicsListener); |
| | | } |
| | | |
| | | void initDeviceInfo() |
| | | { |
| | | AuthenticateRequest.AuthenticateDeviceInfoBean infoBean = new AuthenticateRequest.AuthenticateDeviceInfoBean(); |
| | | infoBean.setDeviceMAC("AA00000000000100"); |
| | | infoBean.setIPMAC("AA00000000000100"); |
| | | infoBean.setDeviceName("音乐播放器");//设备名字 |
| | | infoBean.setDeviceModel("MCLog.431");//设备型号 |
| | | infoBean.setAccessMode("WIFI"); |
| | | infoBean.setIPGateway("192.168.1.1"); |
| | | infoBean.setIPAddress("192.168.1.116"); |
| | | infoBean.setGateway_type("music.standard"); |
| | | infoBean.setHw_version("HW2.0"); |
| | | infoBean.setFw_version("Fw1.0"); |
| | | infoBean.setOID("010105000000FE11");//每个设备oid都要不一样 |
| | | infoBean.setSid("110105000000FE08110100000011");//每个设备的sid都要不一样 |
| | | HDLLinkConfig.getInstance().setDeviceInfoBean(infoBean); |
| | | } |
| | | |
| | | /** |
| | | * 入网认证 |
| | | */ |
| | | void sendAuthenticateRequest() { |
| | | tv.setText("开始入网认证..."); |
| | | //认证提交参数准备 |
| | | |
| | | // 测试服务 |
| | | // String spkStr = "ir.module";//产品spk |
| | | // String macStr = "AA000000000000AF";//设备唯一MAC地址 |
| | | // String secret = "44b360eb74b7ba64";//通过spk和mac提交云端认证后分配的secret |
| | | |
| | | // 正式服务器 |
| | | String spkStr = "screen.mirror";//产品spk |
| | | String macStr = "AA00000000000100";//设备唯一MAC地址 |
| | | String secret = "e186beeb7974998e";//通过spk和mac提交云端认证后分配的secret |
| | | |
| | | String mac_key = stringToMD5(stringToMD5(macStr + secret)); |
| | | String versionString = "HDL_V1.0.1";// |
| | | String time = String.valueOf(System.currentTimeMillis()); |
| | | HDLLinkConfig.getInstance().getDeviceInfoBean().setDeviceMAC(macStr); |
| | | |
| | | //1.设置认证信息 |
| | | AuthenticateRequest.RequestBean requestBean = new AuthenticateRequest.RequestBean(); |
| | | requestBean.setMAC(macStr); |
| | | requestBean.setSupplier("WISE"); |
| | | requestBean.setFirmwareVersion(versionString); |
| | | requestBean.setHardwareModel("1956F"); |
| | | AuthenticateRequest.AuthBean authbean = new AuthenticateRequest.AuthBean(); |
| | | authbean.setSpk(spkStr); |
| | | authbean.setMACKey(mac_key); |
| | | authbean.setRequest(requestBean); |
| | | //HDLLinkConfig.getInstance().getDeviceInfoBean()这个初始化的时候要先设置好 |
| | | AuthenticateRequest request = new AuthenticateRequest(IdUtils.getUUId(), time, HDLLinkConfig.getInstance().getDeviceInfoBean(), authbean); |
| | | HDLLink.getInstance().startAuthenticateRequest(request, new HDLLinkCallBack() { |
| | | @Override |
| | | public void onError(HDLLinkException e) { |
| | | tv.setText("认证失败"); |
| | | responseTv.setText(e.getMsg()); |
| | | Log.i("TAG", "onError: 认证失败"); |
| | | } |
| | | |
| | | @Override |
| | | public void onSuccess(String msg) { |
| | | tv.setText("认证成功"); |
| | | responseTv.setText(msg.toString()); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | String stringToMD5(String text) { |
| | | byte[] hash; |