This commit is contained in:
马增飞
2025-11-26 16:00:19 +08:00
parent ad669e421b
commit 6d1b997145
4 changed files with 61 additions and 62 deletions
@@ -64,24 +64,24 @@ class HomeActivity : BaseActivity() {
// "${HEADER}000281C5D70A7D428A4FA67B50F7DACA241938938B4B9CBD73673E9C8E7F2E15062D${FOOTER}" // "${HEADER}000281C5D70A7D428A4FA67B50F7DACA241938938B4B9CBD73673E9C8E7F2E15062D${FOOTER}"
const val LEFT_SHELF_OPEN_CMD = const val LEFT_SHELF_OPEN_CMD =
"${HEADER}020101000000000000000000000000000000000000$FOOTER" "${HEADER}020101000000000000000000000000000000000000${FOOTER}"
const val RIGHT_SHELF_OPEN_CMD = const val RIGHT_SHELF_OPEN_CMD =
"${HEADER}020100010000000000000000000000000000000000$FOOTER" "${HEADER}020100010000000000000000000000000000000000${FOOTER}"
//const val TEMPERATURE_CMD = "${HEADER}1001${FOOTER}" //const val TEMPERATURE_CMD = "${HEADER}1001${FOOTER}"
const val DEVICE_INFO_CMD = "${HEADER}0301000000000000000000000000$FOOTER" const val DEVICE_INFO_CMD = "${HEADER}0301000000000000000000000000${FOOTER}"
//const val START_CMD= "${HEADER}0F01360000${FOOTER}" //const val START_CMD= "${HEADER}0F01360000${FOOTER}"
//const val START_CMD= "${HEADER}0F01050020${FOOTER}" //const val START_CMD= "${HEADER}0F01050020${FOOTER}"
const val ACTIVE_CMD = //const val ACTIVE_CMD = "${HEADER}000281C5D70A7D428948AD7254FADBB1516738938B4B9CBD73673E9D8E7F2E15062D$FOOTER"
"${HEADER}000281C5D70A7D428948AD7254FADBB1516738938B4B9CBD73673E9D8E7F2E15062D$FOOTER" const val ACTIVE_CMD = "${HEADER}000281C5D70A7D42894EA17650F5D0BB516838E7863C9ABD766C38958AFF0F3C062D${FOOTER}"
//开灯(开 继电器1 //开灯(开 继电器1
const val LIGHT_CLOSE = "${HEADER}020102020102020000000000000000000000000000$FOOTER" const val LIGHT_CLOSE = "${HEADER}020102020102020000000000000000000000000000${FOOTER}"
const val LIGHT_OPEN = "${HEADER}020102020002020000000000000000000000000000$FOOTER" const val LIGHT_OPEN = "${HEADER}020102020002020000000000000000000000000000${FOOTER}"
const val TEMPERATURE_CTRL = "${HEADER}0F01040000$FOOTER" const val TEMPERATURE_CTRL = "${HEADER}0F01040000${FOOTER}"
val list: MutableList<ShelfModel> = mutableListOf() val list: MutableList<ShelfModel> = mutableListOf()
val weightArray = SparseIntArray() val weightArray = SparseIntArray()
@@ -149,6 +149,7 @@ class HomeActivity : BaseActivity() {
} }
} }
} }
//sendCmd(ACTIVE_CMD)
TaskManager.startTask() TaskManager.startTask()
// var androidId = Settings.Secure.getString(contentResolver, Settings.Secure.ANDROID_ID) // var androidId = Settings.Secure.getString(contentResolver, Settings.Secure.ANDROID_ID)
@@ -260,7 +261,7 @@ class HomeActivity : BaseActivity() {
private val serialReader by lazy { StringBuilder() } private val serialReader by lazy { StringBuilder() }
private suspend fun receiveSerialPortData(srcData: String) { private fun receiveSerialPortData(srcData: String) {
log("receiveSerialPortData: $srcData") log("receiveSerialPortData: $srcData")
var data = "" var data = ""
if (srcData.startsWith(HEADER) && srcData.contains(FOOTER)) { if (srcData.startsWith(HEADER) && srcData.contains(FOOTER)) {
@@ -286,17 +287,12 @@ class HomeActivity : BaseActivity() {
when (cmd) { when (cmd) {
"0001" -> { "0001" -> {
//终端发起激活指令,拿到固定数据体(终端ID-15字节、固件版本-5字节、命令次数-1字节) //终端发起激活指令,拿到固定数据体(终端ID-15字节、固件版本-5字节、命令次数-1字节)
val reqBody = data.substring(HEADER.length + cmd.length, data.length - HEADER.length) val reqBody = data.substring(HEADER.length + cmd.length, data.length - FOOTER.length)
if (reqBody.length == 64) { if (reqBody.length == 44) {
terminalId = reqBody.substring(2, 32) terminalId = reqBody.substring(2, 32)
terminalVersion = reqBody.substring(32, 42) terminalVersion = reqBody.substring(32, 42)
log("receiveSerialPortData:收到[激活]${cmd.substring(0,2)}指令:${data},终端id:${terminalId},固件版本:${terminalVersion},发送激活命令:$ACTIVE_CMD") log("receiveSerialPortData:收到[激活]${cmd.substring(0,2)}指令:${data},终端id:${terminalId},固件版本:${terminalVersion},发送激活命令:$ACTIVE_CMD")
sendCmd(ACTIVE_CMD) sendCmd(ACTIVE_CMD)
} else {
runOnUiThread {
toast("收到终端激活指令错误")
}
sendCmd(ACTIVE_CMD)
} }
} }
@@ -356,14 +352,15 @@ class HomeActivity : BaseActivity() {
val respCmd = "${HEADER}100200$FOOTER" val respCmd = "${HEADER}100200$FOOTER"
log("receiveSerialPortData:收到[温控信息上报]${cmd.substring(0,2)}指令:${data},发送应答指令:${respCmd}") log("receiveSerialPortData:收到[温控信息上报]${cmd.substring(0,2)}指令:${data},发送应答指令:${respCmd}")
sendCmd(respCmd) sendCmd(respCmd)
//D6DADEDB1001015D020000000027001E00020000001E001C00B40000000000010000000100040000001900440003000F00000000000FFFE6000200010002FFD80044000300010005001E0001FFD80056001400280000000000000000008300090000003C00D2000000000000007F003700000000A100000031323136334238423134303233303456322E313100FFFF
} }
//"1002" -> { "1002" -> {
// log("receiveSerialPortData,温控信息上报1002数据:${data}") log("receiveSerialPortData,温控信息应答1002数据:${data}")
//} }
//"0F02" -> { "0F02" -> {
// log("receiveSerialPortData,温控信息应答数据:${data}") log("receiveSerialPortData,温控信息应答0F02数据:${data}")
//} }
else -> {} else -> {}
} }
@@ -48,6 +48,7 @@ class InitActivity : BaseActivity() {
App.deviceId = AppUtil.getUDID( this) App.deviceId = AppUtil.getUDID( this)
Log.d(TAG, "onCreate: deviceId = ${App.deviceId}")
SpTool.put(SpTool.DEVICE_ID, App.deviceId) SpTool.put(SpTool.DEVICE_ID, App.deviceId)
App.configUrl = UrlConfig.BASE_URL App.configUrl = UrlConfig.BASE_URL
App.canteenId = "0" App.canteenId = "0"
@@ -167,7 +167,8 @@ open class BaseActivity : AppCompatActivity() {
fun sendCmd(cmd:String) { fun sendCmd(cmd:String) {
lifecycleScope.launch { lifecycleScope.launch {
SerialPortManager.send(cmd) val result = SerialPortManager.send(cmd)
log("发送命令${cmd}结果:${result}")
} }
} }
@@ -406,45 +406,45 @@ public class AppUtil {
*/ */
@SuppressLint("MissingPermission") @SuppressLint("MissingPermission")
public static String getUDID(Context context) { public static String getUDID(Context context) {
return "SWZC-HG-001"; // return "SWZC-HG-001";
//"test111"; // //"test111";
// String androidID = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID); String androidID = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);
// if (!androidID.equals("")) { if (!androidID.equals("")) {
// try { try {
// if (!"9774d56d682e549c".equals(androidID)) { if (!"9774d56d682e549c".equals(androidID)) {
// androidID = UUID.nameUUIDFromBytes(androidID.getBytes("utf8")).toString(); androidID = UUID.nameUUIDFromBytes(androidID.getBytes("utf8")).toString();
// } else { } else {
// @SuppressLint("MissingPermission") final String deviceId = ((TelephonyManager) context.getSystemService(TELEPHONY_SERVICE)).getDeviceId(); @SuppressLint("MissingPermission") final String deviceId = ((TelephonyManager) context.getSystemService(TELEPHONY_SERVICE)).getDeviceId();
// androidID = deviceId != null ? UUID.nameUUIDFromBytes(deviceId.getBytes("utf8")).toString() : UUID.randomUUID().toString(); androidID = deviceId != null ? UUID.nameUUIDFromBytes(deviceId.getBytes("utf8")).toString() : UUID.randomUUID().toString();
// } }
// } catch (UnsupportedEncodingException e) { } catch (UnsupportedEncodingException e) {
// throw new RuntimeException(e); throw new RuntimeException(e);
// } }
// return androidID; return androidID;
// } }
//
// //需要权限 android.permission.READ_PHONE_STATE //需要权限 android.permission.READ_PHONE_STATE
// TelephonyManager TelephonyMgr = (TelephonyManager) context.getSystemService(TELEPHONY_SERVICE); TelephonyManager TelephonyMgr = (TelephonyManager) context.getSystemService(TELEPHONY_SERVICE);
// String szImei = TelephonyMgr.getDeviceId(); String szImei = TelephonyMgr.getDeviceId();
// if (!szImei.equals("")) { if (!szImei.equals("")) {
// return szImei; return szImei;
// } }
//
// //需要权限 android.permission.ACCESS_WIFI_STATE //需要权限 android.permission.ACCESS_WIFI_STATE
// WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
// String m_szWLANMAC = wm.getConnectionInfo().getMacAddress(); String m_szWLANMAC = wm.getConnectionInfo().getMacAddress();
// if (!m_szWLANMAC.equals("")) { if (!m_szWLANMAC.equals("")) {
// return m_szWLANMAC; return m_szWLANMAC;
// } }
//
// //需要权限 android.permission.BLUETOOTH //需要权限 android.permission.BLUETOOTH
// BluetoothAdapter m_BluetoothAdapter = null; BluetoothAdapter m_BluetoothAdapter = null;
// m_BluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); m_BluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
// String m_szBTMAC = m_BluetoothAdapter.getAddress(); String m_szBTMAC = m_BluetoothAdapter.getAddress();
// if (!m_szBTMAC.equals("")) { if (!m_szBTMAC.equals("")) {
// return m_szBTMAC; return m_szBTMAC;
// } }
// return getUniquePsuedoID(); return getUniquePsuedoID();
} }
//获得 Psuedo ID //获得 Psuedo ID