package com.hdl.sdk.ttl_sdk.activity;
|
|
import android.os.Handler;
|
import android.os.Message;
|
import android.support.v7.app.AppCompatActivity;
|
import android.os.Bundle;
|
import android.text.TextUtils;
|
import android.view.View;
|
import android.widget.Button;
|
import android.widget.EditText;
|
import android.widget.RelativeLayout;
|
import android.widget.TextView;
|
|
import com.hdl.sdk.ttl.HDLDeviceManger.Bean.RemarkTimes;
|
import com.hdl.sdk.ttl.HDLDeviceManger.Core.HDLSerialPortCore;
|
import com.hdl.sdk.ttl.HDLDeviceManger.Core.HDLTtlSdk;
|
import com.hdl.sdk.ttl.Utils.LogUtils.HDLLog;
|
import com.hdl.sdk.ttl.Utils.SPUtils.SPUtils;
|
import com.hdl.sdk.ttl_sdk.R;
|
import com.hdl.sdk.ttl_sdk.base.BaseActivity;
|
|
import java.io.IOException;
|
|
import static com.hdl.sdk.ttl.Config.Configuration.LIGHT_CTRL_COMMAND;
|
import static com.hdl.sdk.ttl.HDLDeviceManger.Core.HDLCommand.cusSendCommand;
|
|
public class SendTestActivity extends BaseActivity {
|
/**Topbar*/
|
private RelativeLayout topBarBack;
|
private TextView topBarTitle;
|
private Button btn_start,btn_end;
|
private TextView tv_message;
|
private EditText et_count;
|
|
private boolean isSend;
|
private SendTestThread sendTestThread = new SendTestThread();
|
private int count = 10000;
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
setContentView(R.layout.activity_send_test);
|
initToolbar();
|
initView();
|
setOnClick();
|
|
}
|
@Override
|
protected void onDestroy() {
|
super.onDestroy();
|
endHDLThread();
|
}
|
/**
|
* 初始化Toolbar
|
*/
|
private void initToolbar() {
|
topBarBack = findViewById(R.id.ll_top_b_left);
|
setViewVisible(topBarBack);
|
topBarTitle = findViewById(R.id.tv_top_b_header_title);
|
topBarBack.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
finish();
|
}
|
});
|
topBarTitle.setText("修改子网号和设备号");
|
}
|
|
private void initView() {
|
btn_start = findViewById(R.id.btn_start);
|
btn_end = findViewById(R.id.btn_end);
|
tv_message = findViewById(R.id.tv_message);
|
et_count = findViewById(R.id.et_count);
|
}
|
|
|
private void setOnClick() {
|
btn_start.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
String countStr = et_count.getText().toString();
|
if (TextUtils.isEmpty(countStr) ) {
|
count = 10000;
|
}else {
|
count= Integer.parseInt(countStr);
|
}
|
|
startHDLThread();
|
}
|
});
|
|
btn_end.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
endHDLThread();
|
}
|
});
|
}
|
|
/**
|
* 启动串口 发送和接收线程
|
*/
|
private void startHDLThread() {
|
sendTestThread = new SendTestThread();
|
sendTestThread.start();
|
}
|
public void endHDLThread() {
|
try {
|
isSend = false;
|
if (sendTestThread != null) sendTestThread.interrupt();
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
|
Handler handler = new Handler() {
|
@Override
|
public void handleMessage(Message msg) {
|
super.handleMessage(msg);
|
if (msg.what == 1){
|
tv_message.setText(msg.obj.toString());
|
}
|
}
|
};
|
|
|
/**
|
* 发送测试线程
|
*/
|
class SendTestThread extends Thread {
|
int sendCount;
|
@Override
|
public void run() {
|
super.run();
|
HDLLog.I("测试发送线程 开启");
|
sendCount = 0;
|
isSend = true;
|
while (isSend && sendCount<count) {
|
try {
|
|
cusSendCommand(LIGHT_CTRL_COMMAND,
|
1, 10, new byte[]{0x01, 0x00, 0x00, 0x00});
|
|
sendCount++;
|
Message msg = new Message();
|
msg.what = 1;
|
msg.obj = ""+sendCount;
|
handler.sendMessage(msg);
|
Thread.sleep(100);//间隔10 0ms
|
|
} catch (Exception e) {
|
e.printStackTrace();
|
HDLLog.I("error:" + e.getMessage());
|
}
|
}
|
HDLLog.I("测试发送线程 关闭");
|
}
|
}
|
|
|
}
|