fix:新建工单车牌查询异常选中车牌报错

asv2022.3.1
wanghao 22 hours ago
parent ca48e7b947
commit 4631bade10

@ -8,11 +8,7 @@ import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.graphics.Color; import android.graphics.Color;
import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.os.SystemClock; import android.os.SystemClock;
import android.text.Html; import android.text.Html;
import android.util.Log; import android.util.Log;
@ -25,15 +21,14 @@ import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.android.hdhe.uhf.reader.UhfReader; import com.android.hdhe.uhf.reader.UhfReader;
import com.android.hdhe.uhf.readerInterface.TagModel; import com.android.hdhe.uhf.readerInterface.TagModel;
import com.example.tyre.entity.AjaxResult; import com.example.tyre.databinding.ActivityTyresearchBinding;
import com.example.tyre.entity.BaseTyre; import com.example.tyre.entity.BaseTyre;
import com.example.tyre.entity.EPC; import com.example.tyre.entity.EPC;
import com.example.tyre.entity.Tyre;
import com.example.tyre.util.CommonDialog;
import com.example.tyre.util.MyUrl; import com.example.tyre.util.MyUrl;
import com.example.tyre.util.PlayMusic;
import com.example.tyre.util.Util; import com.example.tyre.util.Util;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonArray; import com.google.gson.JsonArray;
@ -45,20 +40,13 @@ import com.lzy.okgo.OkGo;
import com.lzy.okgo.callback.StringCallback; import com.lzy.okgo.callback.StringCallback;
import com.lzy.okgo.model.Response; import com.lzy.okgo.model.Response;
import java.lang.ref.WeakReference;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import androidx.appcompat.app.AppCompatActivity;
import cn.pda.serialport.Tools; import cn.pda.serialport.Tools;
import com.example.tyre.databinding.ActivityTyresearchBinding;
import org.json.JSONObject;
public class TyreSearchActivity extends AppCompatActivity { public class TyreSearchActivity extends AppCompatActivity {
private ActivityTyresearchBinding binding;
EditText inSantext; EditText inSantext;
Button basemessage; Button basemessage;
Button button; Button button;
@ -71,11 +59,13 @@ public class TyreSearchActivity extends AppCompatActivity {
TextView shengyuhuawen; TextView shengyuhuawen;
TextView zhuangtai; TextView zhuangtai;
TextView qiya; TextView qiya;
long lastTime;
long nextTime;
private ActivityTyresearchBinding binding;
private int power = 0; private int power = 0;
private int area = 0; private int area = 0;
private SharedPreferences shared; private SharedPreferences shared;
private EditText textVersion; private EditText textVersion;
private boolean runFlag = true; private boolean runFlag = true;
private boolean startFlag = false; private boolean startFlag = false;
private UhfReader manager; private UhfReader manager;
@ -83,6 +73,11 @@ public class TyreSearchActivity extends AppCompatActivity {
private ArrayList<String> listepc = new ArrayList<String>(); private ArrayList<String> listepc = new ArrayList<String>();
private ProgressDialog progressDialog; private ProgressDialog progressDialog;
private LinearLayout llTimelineContainer; private LinearLayout llTimelineContainer;
private long exitTime = 0;
private Toast mToast;
private Toast toast;
private KeyReceiver keyReceiver;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@ -100,6 +95,7 @@ public class TyreSearchActivity extends AppCompatActivity {
} }
private void renderTimeline(List<TimelineItem> data) { private void renderTimeline(List<TimelineItem> data) {
LayoutInflater inflater = LayoutInflater.from(this); LayoutInflater inflater = LayoutInflater.from(this);
llTimelineContainer.removeAllViews(); llTimelineContainer.removeAllViews();
@ -128,6 +124,7 @@ public class TyreSearchActivity extends AppCompatActivity {
llTimelineContainer.addView(itemView); llTimelineContainer.addView(itemView);
} }
} }
private void bindViews() { private void bindViews() {
inSantext = binding.inSantext; inSantext = binding.inSantext;
// basemessage = binding.basemessage; // basemessage = binding.basemessage;
@ -156,8 +153,6 @@ public class TyreSearchActivity extends AppCompatActivity {
}); });
} }
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
@ -168,18 +163,6 @@ public class TyreSearchActivity extends AppCompatActivity {
} }
registerReceiver(); registerReceiver();
} }
// TyreSearchActivity.java (内部类或单独文件)
public class TimelineItem {
public String time;
public String title;
public CharSequence content;
public TimelineItem(String time, String title, CharSequence content) {
this.time = time;
this.title = title;
this.content = content;
}
}
@Override @Override
public void onPause() { public void onPause() {
@ -211,46 +194,7 @@ public class TyreSearchActivity extends AppCompatActivity {
qiya = binding.qiya; qiya = binding.qiya;
listEPC = new ArrayList<EPC>(); listEPC = new ArrayList<EPC>();
} }
private long exitTime = 0;
private Toast mToast;
private Toast toast;
class InventoryThread extends Thread {
private List<TagModel> tagList;
byte[] accessPassword = Tools.HexString2Bytes("00000000");
@Override
public void run() {
super.run();
while (runFlag) {
if (startFlag) {
tagList = manager.inventoryRealTime();
if (tagList != null && !tagList.isEmpty()) {
Util.play(1, 0);
for (TagModel tag : tagList) {
if (tag == null) {
String epcStr = "";
addToList(listEPC, epcStr, (byte) -1);
} else {
String epcStr = Tools.Bytes2HexString(tag.getmEpcBytes(), tag.getmEpcBytes().length);
byte rssi = tag.getmRssi();
addToList(listEPC, epcStr, rssi);
}
}
}
tagList = null;
try {
Thread.sleep(20);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
private void addToList(final List<EPC> list, final String epc, final byte rssi) { private void addToList(final List<EPC> list, final String epc, final byte rssi) {
runOnUiThread(new Runnable() { runOnUiThread(new Runnable() {
@Override @Override
@ -300,8 +244,7 @@ public class TyreSearchActivity extends AppCompatActivity {
} }
clearData(); clearData();
} }
long lastTime;
long nextTime;
private void setButtonClickable(Button button, boolean flag) { private void setButtonClickable(Button button, boolean flag) {
button.setClickable(flag); button.setClickable(flag);
if (flag) { if (flag) {
@ -311,7 +254,6 @@ public class TyreSearchActivity extends AppCompatActivity {
} }
} }
private void showToast(String message) { private void showToast(String message) {
if (mToast == null) { if (mToast == null) {
mToast = Toast.makeText(TyreSearchActivity.this, message, Toast.LENGTH_SHORT); mToast = Toast.makeText(TyreSearchActivity.this, message, Toast.LENGTH_SHORT);
@ -321,12 +263,12 @@ public class TyreSearchActivity extends AppCompatActivity {
mToast.show(); mToast.show();
} }
} }
private void clearData() { private void clearData() {
listEPC.removeAll(listEPC); listEPC.removeAll(listEPC);
listepc.removeAll(listepc); listepc.removeAll(listepc);
} }
private KeyReceiver keyReceiver;
private void registerReceiver() { private void registerReceiver() {
keyReceiver = new KeyReceiver(); keyReceiver = new KeyReceiver();
IntentFilter filter = new IntentFilter(); IntentFilter filter = new IntentFilter();
@ -339,33 +281,6 @@ public class TyreSearchActivity extends AppCompatActivity {
unregisterReceiver(keyReceiver); unregisterReceiver(keyReceiver);
} }
private class KeyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
int keyCode = intent.getIntExtra("keyCode", 0);
if (keyCode == 0) {
keyCode = intent.getIntExtra("keycode", 0);
}
boolean keyDown = intent.getBooleanExtra("keydown", false);
if (keyDown) {
if (toast == null) {
} else {
}
switch (keyCode) {
case KeyEvent.KEYCODE_F1:
case KeyEvent.KEYCODE_F2:
case KeyEvent.KEYCODE_F3:
case KeyEvent.KEYCODE_F4:
case KeyEvent.KEYCODE_F5:
case 136:
startFlag = true;
//binding.scanButton.callOnClick();
break;
}
}
}
}
private void find(String epc) { private void find(String epc) {
OkGo.<String>post(MyUrl.url + "/tyre/tyre/pdaQueryTyreTimeLine").tag(this) OkGo.<String>post(MyUrl.url + "/tyre/tyre/pdaQueryTyreTimeLine").tag(this)
.params("keyParam", epc) .params("keyParam", epc)
@ -424,29 +339,47 @@ public class TyreSearchActivity extends AppCompatActivity {
} }
List<TimelineItem> data = new ArrayList<>(); List<TimelineItem> data = new ArrayList<>();
if (dataObject.has("bizMaintenanceOrder") && !dataObject.get("bizMaintenanceOrder").isJsonNull()) { if (dataObject.has("bizMaintenanceOrder") && !dataObject.get("bizMaintenanceOrder").isJsonNull()) {
JsonObject maintenanceOrderObj = dataObject.get("bizMaintenanceOrder").getAsJsonObject(); JsonObject maintenanceOrderObj =
dataObject.get("bizMaintenanceOrder").getAsJsonObject();
if (maintenanceOrderObj.has("bizOrderTireDetailList") && !maintenanceOrderObj.get("bizOrderTireDetailList").isJsonNull()) { if (maintenanceOrderObj.has("bizOrderTireDetailList") && !maintenanceOrderObj.get("bizOrderTireDetailList").isJsonNull()) {
JsonArray detailListArray = maintenanceOrderObj.get("bizOrderTireDetailList").getAsJsonArray(); JsonArray detailListArray =
maintenanceOrderObj.get("bizOrderTireDetailList").getAsJsonArray();
String mileage = "0";
String inputmileage = "0";
try {String mileage = maintenanceOrderObj.has("lastMileage") ? maintenanceOrderObj.get("lastMileage").getAsString() : ""; try {
String inputmileage = maintenanceOrderObj.has("inputMileage") ? maintenanceOrderObj.get("inputMileage").getAsString() : "";
}catch (Exception e){}
String mileage = maintenanceOrderObj.has("lastMileage") ? maintenanceOrderObj.get("lastMileage").getAsString() : "";
String type = maintenanceOrderObj.has("typeCode") ? maintenanceOrderObj.get("typeCode").getAsString() : ""; mileage =
String teams = maintenanceOrderObj.has("factoryName") ? maintenanceOrderObj.get("factoryName").getAsString() : ""; maintenanceOrderObj.has("lastMileage") ? maintenanceOrderObj.get("lastMileage").getAsString() : "";
String plateNumber = maintenanceOrderObj.has("plateNumber") ? maintenanceOrderObj.get("plateNumber").getAsString() : "";
inputmileage =
maintenanceOrderObj.has("inputMileage") ? maintenanceOrderObj.get("inputMileage").getAsString() : "";
} catch (Exception e) {
}
String type =
maintenanceOrderObj.has("typeCode") ? maintenanceOrderObj.get("typeCode").getAsString() : "";
String teams =
maintenanceOrderObj.has("factoryName") ? maintenanceOrderObj.get("factoryName").getAsString() : "";
String plateNumber =
maintenanceOrderObj.has("plateNumber") ? maintenanceOrderObj.get("plateNumber").getAsString() : "";
for (JsonElement element : detailListArray) { for (JsonElement element : detailListArray) {
// 3. 将每个元素转为 JsonObject方便通过键名取值 // 3. 将每个元素转为 JsonObject方便通过键名取值
JsonObject itemObject = element.getAsJsonObject(); JsonObject itemObject = element.getAsJsonObject();
// 4. 提取你需要的字段(假设里面有 "warehouseId" 和 "status" 字段) // 4. 提取你需要的字段(假设里面有 "warehouseId" 和 "status" 字段)
String tyreNo = itemObject.has("tireCode") ? itemObject.get("tireCode").getAsString() : ""; String tyreNo =
String time = itemObject.has("createTime") ? itemObject.get("createTime").getAsString() : ""; itemObject.has("tireCode") ? itemObject.get("tireCode").getAsString() : "";
String user = itemObject.has("createBy") ? itemObject.get("createBy").getAsString() : ""; String time =
String wheel = itemObject.has("positionName") ? itemObject.get("positionName").getAsString() : ""; itemObject.has("createTime") ? itemObject.get("createTime").getAsString() : "";
String tirePress = itemObject.has("tirePress") ? itemObject.get("tirePress").getAsString() : ""; String user =
itemObject.has("createBy") ? itemObject.get("createBy").getAsString() : "";
String wheel =
itemObject.has("positionName") ? itemObject.get("positionName").getAsString() : "";
String tirePress =
itemObject.has("tirePress") ? itemObject.get("tirePress").getAsString() : "";
// 直接获取,如果为 null 或不存在,自动返回 "" // 直接获取,如果为 null 或不存在,自动返回 ""
String depth = itemObject.has("treadDepth") && !itemObject.get("treadDepth").isJsonNull() String depth =
itemObject.has("treadDepth") && !itemObject.get("treadDepth").isJsonNull()
? itemObject.get("treadDepth").getAsString() ? itemObject.get("treadDepth").getAsString()
: ""; : "";
if (type.equals("1")) { if (type.equals("1")) {
@ -468,8 +401,7 @@ public class TyreSearchActivity extends AppCompatActivity {
"<br>剩余花纹深度: " + depth + "mm" + "<br>剩余花纹深度: " + depth + "mm" +
"<br>胎压: " + tirePress))); "<br>胎压: " + tirePress)));
shengyuhuawen.setText(depth); shengyuhuawen.setText(depth);
} } else if (type.equals("3")) {
else if (type.equals("3")){
data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams + data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams +
"<br>车辆信息: " + plateNumber + "<br>车辆信息: " + plateNumber +
"<br>当前车辆里程: " + mileage + " KM" + "<br>当前车辆里程: " + mileage + " KM" +
@ -478,8 +410,7 @@ public class TyreSearchActivity extends AppCompatActivity {
"<br>剩余花纹深度: " + depth + "mm" + "<br>剩余花纹深度: " + depth + "mm" +
"<br>胎压: " + tirePress))); "<br>胎压: " + tirePress)));
shengyuhuawen.setText(depth); shengyuhuawen.setText(depth);
} } else if (type.equals("4")) {
else if (type.equals("4")){
data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams + data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams +
"<br>车辆信息: " + plateNumber + "<br>车辆信息: " + plateNumber +
"<br>当前车辆里程: " + mileage + " KM" + "<br>当前车辆里程: " + mileage + " KM" +
@ -488,8 +419,7 @@ public class TyreSearchActivity extends AppCompatActivity {
"<br>剩余花纹深度: " + depth + "mm" + "<br>剩余花纹深度: " + depth + "mm" +
"<br>胎压: " + tirePress))); "<br>胎压: " + tirePress)));
shengyuhuawen.setText(depth); shengyuhuawen.setText(depth);
} } else if (type.equals("5")) {
else if (type.equals("5")){
data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams + data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams +
"<br>车辆信息: " + plateNumber + "<br>车辆信息: " + plateNumber +
"<br>当前车辆里程: " + mileage + " KM" + "<br>当前车辆里程: " + mileage + " KM" +
@ -498,8 +428,7 @@ public class TyreSearchActivity extends AppCompatActivity {
"<br>剩余花纹深度: " + depth + "mm" + "<br>剩余花纹深度: " + depth + "mm" +
"<br>胎压: " + tirePress))); "<br>胎压: " + tirePress)));
shengyuhuawen.setText(depth); shengyuhuawen.setText(depth);
} } else if (type.equals("6")) {
else if (type.equals("6")){
data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams + data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams +
"<br>车辆信息: " + plateNumber + "<br>车辆信息: " + plateNumber +
"<br>当前车辆里程: " + mileage + " KM" + "<br>当前车辆里程: " + mileage + " KM" +
@ -508,8 +437,7 @@ public class TyreSearchActivity extends AppCompatActivity {
"<br>剩余花纹深度: " + depth + "mm" + "<br>剩余花纹深度: " + depth + "mm" +
"<br>胎压: " + tirePress))); "<br>胎压: " + tirePress)));
shengyuhuawen.setText(depth); shengyuhuawen.setText(depth);
} } else if (type.equals("7")) {
else if (type.equals("7")){
data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams + data.add(new TimelineItem(time, "二级保养", Html.fromHtml("操作人:" + user + "<br>场站: " + teams +
"<br>车辆信息: " + plateNumber + "<br>车辆信息: " + plateNumber +
"<br>当前车辆里程: " + mileage + " KM" + "<br>当前车辆里程: " + mileage + " KM" +
@ -532,18 +460,27 @@ public class TyreSearchActivity extends AppCompatActivity {
// 3. 将每个元素转为 JsonObject方便通过键名取值 // 3. 将每个元素转为 JsonObject方便通过键名取值
JsonObject itemObject = element.getAsJsonObject(); JsonObject itemObject = element.getAsJsonObject();
// 4. 提取你需要的字段(假设里面有 "warehouseId" 和 "status" 字段) // 4. 提取你需要的字段(假设里面有 "warehouseId" 和 "status" 字段)
String tyreNo = itemObject.has("tyreNo") ? itemObject.get("tyreNo").getAsString() : ""; String tyreNo =
String type = itemObject.has("type") ? itemObject.get("type").getAsString() : ""; itemObject.has("tyreNo") ? itemObject.get("tyreNo").getAsString() : "";
String time = itemObject.has("createTime") ? itemObject.get("createTime").getAsString() : ""; String type =
String user = itemObject.has("createBy") ? itemObject.get("createBy").getAsString() : ""; itemObject.has("type") ? itemObject.get("type").getAsString() : "";
String wheel = itemObject.has("wheelPostion") ? itemObject.get("wheelPostion").getAsString() : ""; String time =
String mileage = itemObject.has("mileage") ? itemObject.get("mileage").getAsString() : ""; itemObject.has("createTime") ? itemObject.get("createTime").getAsString() : "";
String carNo = itemObject.has("carNo") ? itemObject.get("carNo").getAsString() : ""; String user =
itemObject.has("createBy") ? itemObject.get("createBy").getAsString() : "";
String wheel =
itemObject.has("wheelPostion") ? itemObject.get("wheelPostion").getAsString() : "";
String mileage =
itemObject.has("mileage") ? itemObject.get("mileage").getAsString() : "";
String carNo =
itemObject.has("carNo") ? itemObject.get("carNo").getAsString() : "";
// 直接获取,如果为 null 或不存在,自动返回 "" // 直接获取,如果为 null 或不存在,自动返回 ""
String depth = itemObject.has("patternDepth") && !itemObject.get("patternDepth").isJsonNull() String depth =
itemObject.has("patternDepth") && !itemObject.get("patternDepth").isJsonNull()
? itemObject.get("patternDepth").getAsString() ? itemObject.get("patternDepth").getAsString()
: ""; : "";
String stageMileage = itemObject.has("stageMileage") && !itemObject.get("stageMileage").isJsonNull() String stageMileage =
itemObject.has("stageMileage") && !itemObject.get("stageMileage").isJsonNull()
? itemObject.get("stageMileage").getAsString() ? itemObject.get("stageMileage").getAsString()
: ""; : "";
if (type.equals("0")) { if (type.equals("0")) {
@ -574,10 +511,14 @@ public class TyreSearchActivity extends AppCompatActivity {
// 3. 将每个元素转为 JsonObject方便通过键名取值 // 3. 将每个元素转为 JsonObject方便通过键名取值
JsonObject itemObject = element.getAsJsonObject(); JsonObject itemObject = element.getAsJsonObject();
// 4. 提取你需要的字段(假设里面有 "warehouseId" 和 "status" 字段) // 4. 提取你需要的字段(假设里面有 "warehouseId" 和 "status" 字段)
String tyreNo = itemObject.has("tyreNo") ? itemObject.get("tyreNo").getAsString() : ""; String tyreNo =
String type = itemObject.has("type") ? itemObject.get("type").getAsString() : ""; itemObject.has("tyreNo") ? itemObject.get("tyreNo").getAsString() : "";
String time = itemObject.has("createTime") ? itemObject.get("createTime").getAsString() : ""; String type =
String user = itemObject.has("createBy") ? itemObject.get("createBy").getAsString() : ""; itemObject.has("type") ? itemObject.get("type").getAsString() : "";
String time =
itemObject.has("createTime") ? itemObject.get("createTime").getAsString() : "";
String user =
itemObject.has("createBy") ? itemObject.get("createBy").getAsString() : "";
// 打印或处理你的数据 // 打印或处理你的数据
if (type.equals("0")) { if (type.equals("0")) {
data.add(new TimelineItem(time, "轮胎入库", Html.fromHtml("操作人:" + user + "<br>场站: " + team + data.add(new TimelineItem(time, "轮胎入库", Html.fromHtml("操作人:" + user + "<br>场站: " + team +
@ -592,7 +533,6 @@ public class TyreSearchActivity extends AppCompatActivity {
} }
renderTimeline(data); renderTimeline(data);
data.clear(); data.clear();
} }
@ -604,6 +544,7 @@ public class TyreSearchActivity extends AppCompatActivity {
return; return;
} }
} }
@Override @Override
public void onError(Response<String> response) { public void onError(Response<String> response) {
super.onError(response); super.onError(response);
@ -613,9 +554,11 @@ public class TyreSearchActivity extends AppCompatActivity {
}); });
} }
private String safeGetString(String value) { private String safeGetString(String value) {
return value == null || "null".equals(value) ? "" : value; return value == null || "null".equals(value) ? "" : value;
} }
private void showLoadingDialog() { private void showLoadingDialog() {
if (progressDialog == null) { if (progressDialog == null) {
progressDialog = new ProgressDialog(this); progressDialog = new ProgressDialog(this);
@ -626,9 +569,87 @@ public class TyreSearchActivity extends AppCompatActivity {
progressDialog.show(); progressDialog.show();
} }
} }
private void hideLoadingDialog() { private void hideLoadingDialog() {
if (progressDialog != null && progressDialog.isShowing()) { if (progressDialog != null && progressDialog.isShowing()) {
progressDialog.dismiss(); progressDialog.dismiss();
} }
} }
// TyreSearchActivity.java (内部类或单独文件)
public class TimelineItem {
public String time;
public String title;
public CharSequence content;
public TimelineItem(String time, String title, CharSequence content) {
this.time = time;
this.title = title;
this.content = content;
}
}
class InventoryThread extends Thread {
byte[] accessPassword = Tools.HexString2Bytes("00000000");
private List<TagModel> tagList;
@Override
public void run() {
super.run();
while (runFlag) {
if (startFlag) {
tagList = manager.inventoryRealTime();
if (tagList != null && !tagList.isEmpty()) {
Util.play(1, 0);
for (TagModel tag : tagList) {
if (tag == null) {
String epcStr = "";
addToList(listEPC, epcStr, (byte) -1);
} else {
String epcStr =
Tools.Bytes2HexString(tag.getmEpcBytes(), tag.getmEpcBytes().length);
byte rssi = tag.getmRssi();
addToList(listEPC, epcStr, rssi);
}
}
}
tagList = null;
try {
Thread.sleep(20);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
private class KeyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
int keyCode = intent.getIntExtra("keyCode", 0);
if (keyCode == 0) {
keyCode = intent.getIntExtra("keycode", 0);
}
boolean keyDown = intent.getBooleanExtra("keydown", false);
if (keyDown) {
if (toast == null) {
} else {
}
switch (keyCode) {
case KeyEvent.KEYCODE_F1:
case KeyEvent.KEYCODE_F2:
case KeyEvent.KEYCODE_F3:
case KeyEvent.KEYCODE_F4:
case KeyEvent.KEYCODE_F5:
case 136:
startFlag = true;
// binding.scanButton.callOnClick();
break;
}
}
}
}
} }

@ -58,16 +58,16 @@
app:layout_constraintTop_toBottomOf="@+id/textView" /> app:layout_constraintTop_toBottomOf="@+id/textView" />
<TextView <TextView
android:layout_width="100dp" android:layout_width="96dp"
android:layout_height="45dp" android:layout_height="45dp"
android:layout_marginEnd="16dp" android:layout_marginEnd="14dp"
android:background="@drawable/bg_order_state_selector" android:background="@drawable/bg_order_state_selector"
android:gravity="center" android:gravity="center"
android:letterSpacing="0.1" android:letterSpacing="0.1"
android:text='@{item.status.equals("COMPLETED")?"已完成":"未完成"}' android:text='@{item.status.equals("COMPLETED")?"已完成":"未完成"}'
android:selected='@{item.status.equals("COMPLETED")}' android:selected='@{item.status.equals("COMPLETED")}'
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="16sp" android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"

Loading…
Cancel
Save