我的应用程序使用USB主机模式从FTDI读取数据。我一次又一次地从缓冲区读取数据时会收到Android运行时错误。发生错误的行总是类似unitVIDLSB=buffer[8];
,其中unitVIDLSB
已初始化为byte
且buffer
为byte []
。我只想尝试获取每个字节,因为它们每个字节包含一组信息。它完全在30%的时间内起作用。我也尝试将波特率更改为9600之类的速度,但它没有改变成功率。
读取过程在其自己的线程中处理,并在有接收消息时接收,并指示消息的适当长度(这一直运行良好)。从那里它检查前四个字节并通过case语句级联以识别接收的消息并从其上执行处理。消息处理程序从线程运行。
我调查了DataInputStreams
,但它与使用字节数组看起来并没有什么不同。
任何帮助或建议表示赞赏!谢谢!
这是我的阅读帖子:
class ReadThread extends Thread {
final int USB_DATA_BUFFER = 8192;
public void run() {
byte[] usbdata = new byte[USB_DATA_BUFFER];
int readcount;
int iWriteIndex = 0;
int startIndex = 0;
byte status;
bReadThreadEnable = true;
while (bReadThreadEnable) {
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
readcount = ftDev.getQueueStatus();
if (readcount > 0) {
if (readcount > USB_DATA_BUFFER) {
readcount = USB_DATA_BUFFER;
}
ftDev.read(usbdata, readcount);
shortBuffer = new byte[readcount];
for (int j = 0; j < readcount; j++) {
shortBuffer[j] = usbdata[j];
if (usbdata[j] == (byte) 0xFE) { //if byte[0] isnt the starting byte, find it
startIndex = j;
}
}
if (shortBuffer[startIndex] == (byte) 0xFE && shortBuffer[startIndex + 1] == (byte) 0x19) { //sync, message received
MessageHandler(shortBuffer);
shortBuffer = null;
}
}
}
}
}
这是MessageHandler:
void MessageHandler(byte[] buffer) {
bReadThreadEnable = false;
switch (buffer[3]) { //get first message ID byte
case (byte) 0x10:
switch (buffer[2]) { //get second message ID byte
case (byte) 0x02:
numberOfUnits = buffer[8];
inChannels = buffer[9];
outChannels = buffer[10];
dataChannelLinks = buffer[11]; //errors: 1
bPSIReceived = true;
break;
case (byte) 0x03:
bPSIFailed = true;
break;
case (byte) 0x05:
unitVIDLSB = buffer[8];
unitVIDMSB = buffer[9];
unitPIDLSB = buffer[10];//errors: 1
unitPIDMSB = buffer[11];
unitSNLSB = buffer[12];
unitSNMSB = buffer[13];
unitTypeLSB = buffer[14];
unitTypeMSB = buffer[15];
unitProfileLSB = buffer[17];
unitProfileMSB = buffer[18];
//Reduce to one variable, for commodity of printing and debugging
unitVID = ((unitVIDMSB & 0xff) << 8) | (unitVIDLSB & 0xff);
unitPID = ((unitPIDMSB & 0xff) << 8) | (unitPIDLSB & 0xff);
unitSN = ((unitSNMSB & 0xff) << 8) | (unitSNLSB & 0xff);
unitType = ((unitTypeMSB & 0xff) << 8) | (unitTypeLSB & 0xff);
unitProfile = ((unitProfileMSB & 0xff) << 8) | (unitProfileLSB & 0xff);
unitNumberOfChannels = buffer[19];
bUIReceived = true;
break;
case (byte) 0x06:
break;
case (byte) 0x08:
unitVIDLSB = buffer[8];//errors: 2
unitVIDMSB = buffer[9];
unitPIDLSB = buffer[10];
unitPIDMSB = buffer[11];
unitSNLSB = buffer[12];//errors: 1
unitSNMSB = buffer[13];
channelIndex = buffer[14];
dataCTLSB = buffer[15];//errors: 1
dataCTMSB = buffer[16];
dataChannelPLSB = buffer[17];
dataChannelPMSB = buffer[18];
dataChannelTT = buffer[19];
unitVID = ((unitVIDMSB & 0xff) << 8) | (unitVIDLSB & 0xff);
unitPID = ((unitPIDMSB & 0xff) << 8) | (unitPIDLSB & 0xff);
unitSN = ((unitSNMSB & 0xff) << 8) | (unitSNLSB & 0xff);
dataChannelType = ((dataCTMSB & 0xff) << 8) | (dataCTLSB & 0xff);
dataChannelProfile = ((dataChannelPMSB & 0xff) << 8) | (dataChannelPLSB & 0xff);
bDCIReceived = true;
break;
case (byte) 0x09:
break;
case (byte) 0x0B:
OunitVIDLSB = buffer[8];
OunitVIDMSB = buffer[9];
OunitPIDLSB = buffer[10];
OunitPIDMSB = buffer[11];
OunitSNLSB = buffer[12]; //errors: 1
OunitSNMSB = buffer[13]; //errors: 1
OchannelIndex = buffer[14];
IunitVIDLSB = buffer[15];
IunitVIDMSB = buffer[16];
IunitPIDLSB = buffer[17];
IunitPIDMSB = buffer[18];
IunitSNLSB = buffer[19];
IunitSNMSB = buffer[20];
IchannelIndex = buffer[21];
linkStatus = buffer[22];
OunitVID = ((OunitVIDMSB & 0xff) << 8) | (OunitVIDLSB & 0xff);
OunitPID = ((OunitPIDMSB & 0xff) << 8) | (OunitPIDLSB & 0xff);
OunitSN = ((OunitSNMSB & 0xff) << 8) | (OunitSNLSB & 0xff);
IunitVID = ((IunitVIDMSB & 0xff) << 8) | (IunitVIDLSB & 0xff);
IunitPID = ((IunitPIDMSB & 0xff) << 8) | (IunitPIDLSB & 0xff);
IunitSN = ((IunitSNMSB & 0xff) << 8) | (IunitSNLSB & 0xff);
bDCLIReceived = true;
break;
case (byte) 0x0C:
break;
}
break;
case (byte) 0x11:
switch (buffer[2]) { //get second message ID byte
case (byte) 0x02:
byte[] temp = new byte[16];
bPDCReceived = true;
bPDCFailed = false;
break;
case (byte) 0x03:
bPDCFailed = true;
break;
case (byte) 0x05:
break;
case (byte) 0x06:
break;
}
break;
case (byte) 0x12:
switch (buffer[2]) { //get second message ID byte
case (byte) 0x02:
break;
case (byte) 0x03:
break;
}
break;
case (byte) 0x20:
switch (buffer[2]) { //get second message ID byte
case (byte) 0x02:
break;
case (byte) 0x03:
break;
}
break;
case (byte) 0x21:
switch (buffer[2]) { //get second message ID byte
case (byte) 0x02:
break;
case (byte) 0x03:
break;
case (byte) 0x05:
break;
case (byte) 0x06:
break;
}
break;
}
bReadThreadEnable = true;
}
catlog是这样的:
04-04 16:05:23.246 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/resume]
04-04 16:05:23.256 I/E5E (15741): onResume - reconnect
04-04 16:05:24.307 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/recreate]
04-04 16:05:24.327 I/E5E (15741): onResume - reconnect
04-04 16:05:24.377 I/WindowManager(845): Screen frozen for +252ms due to Window{42f8cf70 u0 com.testapps.potato.e5e_app/com.testapps.potato.e5e_app.Startup}
04-04 16:05:26.489 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/pause]
04-04 16:05:28.321 I/E5E (15741): onResume - reconnect
04-04 16:05:28.331 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/resume]
04-04 16:05:28.631 V/WindowManager(845): #2: Token{42f29618 ActivityRecord{42f33ae0 u0 com.testapps.potato.e5e_app/.Startup t124}}
04-04 16:05:28.631 V/WindowManager(845): #6: Window{42f8cf70 u0 com.testapps.potato.e5e_app/com.testapps.potato.e5e_app.Startup}
04-04 16:05:29.562 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/pause]
04-04 16:05:29.592 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/create]
04-04 16:05:29.652 I/E5E (15741): onResume - reconnect
04-04 16:05:43.636 I/E5E (15741): onResume - reconnect
04-04 16:05:43.646 D/UsbSettingsManager(845): hasPermission: UsbDevice[mName=/dev/bus/usb/002/003,mVendorId=1027,mProductId=24577,mClass=0,mSubclass=0,mProtocol=0,mInterfaces=[Landroid.os.Parcelable;@4388e5e0]for {10422=true}
04-04 16:05:43.796 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/resume]
04-04 16:05:44.597 I/NotificationService(845): cancelToast pkg=com.testapps.potato.e5e_app callback=android.app.ITransientNotification$Stub$Proxy@42f591a0
04-04 16:05:45.527 I/E5E (15741): db created!
04-04 16:05:45.598 I/E5E (15741): writing PDCP SYS INFO
04-04 16:05:45.598 I/E5E (15741): sending:FE 19 01 10 00 00 00 00
04-04 16:05:45.618 I/E5E (15741): readcount:14
04-04 16:05:45.618 I/E5E (15741): Start index is0
04-04 16:05:45.618 I/E5E (15741): Message Received!
04-04 16:05:45.618 I/E5E (15741): hex string is:FE 19 02 10 00 06 00 00 02 02 04 00 00 00
04-04 16:05:45.618 I/E5E (15741): No. of Devices: 2
04-04 16:05:45.618 I/E5E (15741): No. of inchannels: 2
04-04 16:05:45.618 I/E5E (15741): No. of outchannels: 4
04-04 16:05:45.618 I/E5E (15741): No. of datachannels: 0
04-04 16:05:49.261 I/E5E (15741): writing GET UNIT INFO
04-04 16:05:49.261 I/E5E (15741): sending:FE 19 04 10 00 03 00 00 01 00 00
04-04 16:05:49.281 I/E5E (15741): readcount:22
04-04 16:05:49.281 I/E5E (15741): Start index is0
04-04 16:05:49.281 I/E5E (15741): Message Received!
04-04 16:05:49.291 I/E5E (15741): hex string is:FE 19 05 10 00 0E 00 00 63 00 0E 00 09 00 00 01 00 01 00 03 00 00
04-04 16:05:49.291 I/E5E (15741): Get Unit Info Received!
04-04 16:05:51.423 I/E5E (15741): writing GET PARAM INFO(1)
04-04 16:05:51.423 I/E5E (15741): sending:FE 19 01 11 00 0A 00 00 63 00 0E 00 09 00 00 07 00 00
04-04 16:05:51.733 I/E5E (15741): waiting for PARAM INFO (1)
04-04 16:05:51.733 I/E5E (15741): Got Param!
04-04 16:05:51.764 I/E5E (15741): Number of Channels (for loop) 3
04-04 16:05:51.774 I/E5E (15741): Channel index is:1
04-04 16:05:52.314 I/E5E (15741): readcount:11
04-04 16:05:52.314 I/E5E (15741): Start index is0
04-04 16:05:52.314 I/E5E (15741): Message Received!
04-04 16:05:52.324 I/E5E (15741): hex string is:FE 19 03 11 00 03 00 00 00 00 00
04-04 16:05:52.324 E/E5E (15741): Get Parameter Data Failed!
04-04 16:05:53.765 I/E5E (15741): Writing DATA CHANNEL INFO
04-04 16:05:53.765 I/E5E (15741): sending:FE 19 07 10 00 09 00 00 63 00 0E 00 09 00 01 00 00
04-04 16:05:53.785 I/E5E (15741): readcount:1
04-04 16:05:53.785 I/E5E (15741): Start index is0
04-04 16:05:53.785 E/AndroidRuntime(15741): Process: com.testapps.potato.e5e_app, PID: 15741
04-04 16:05:53.785 E/AndroidRuntime(15741): at com.testapps.potato.e5e_app.Startup$ReadThread.run(Startup.java:302)
04-04 16:05:53.796 W/ActivityManager(845): Force finishing activity com.testapps.potato.e5e_app/.Startup
04-04 16:05:53.876 D/CrashAnrDetector(845): processName: com.testapps.potato.e5e_app
04-04 16:05:53.876 D/CrashAnrDetector(845): broadcastEvent : com.testapps.potato.e5e_app data_app_crash
04-04 16:05:53.876 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/pause]
04-04 16:05:54.076 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:54.226 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:54.376 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:54.526 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:54.676 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:54.827 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:54.977 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:55.127 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:55.277 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:55.427 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:55.577 I/E5E (15741): waiting for DATA CHANNEL INFO
04-04 16:05:55.637 I/ActivityManager(845): Process com.testapps.potato.e5e_app (pid 15741) (adj 1) has died.
04-04 16:05:55.637 I/WindowState(845): WIN DEATH: Window{439179f0 u0 com.testapps.potato.e5e_app/com.testapps.potato.e5e_app.Startup}
04-04 16:06:40.011 D/Launcher.Workspace(1508): changeState NORMAL -> EDIT, animated: true, delay: 0, item: Item(id=290 folderId=-1 screen=5 cell=11 title=E5E_app componentName=ComponentInfo{com.testapps.potato.e5e_app/com.testapps.potato.e5e_app.Startup} unavailable=false)
04-04 16:06:41.392 W/PackageManager(845): Couldn't delete native library directory /data/app-lib/com.testapps.potato.e5e_app
04-04 16:06:41.642 D/PackageManager(845): Sending to user 0: act=android.intent.action.PACKAGE_REMOVED dat=package:com.testapps.potato.e5e_app flg=0x4000000 Bundle[{android.intent.extra.REMOVED_FOR_ALL_USERS=true, android.intent.extra.UID=10422, android.intent.extra.DATA_REMOVED=true, android.intent.extra.user_handle=0}]
04-04 16:06:41.672 D/PackageManager(845): Sending to user 0: act=android.intent.action.PACKAGE_FULLY_REMOVED dat=package:com.testapps.potato.e5e_app flg=0x4000000 Bundle[{android.intent.extra.REMOVED_FOR_ALL_USERS=true, android.intent.extra.UID=10422, android.intent.extra.DATA_REMOVED=true, android.intent.extra.user_handle=0}]
04-04 16:06:41.692 D/ContainerEventsRelayManager(1475): <<< Intent data is >>> : package:com.testapps.potato.e5e_app
04-04 16:06:41.712 I/elm (3585): MainReceiver.onReceive() : Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.testapps.potato.e5e_app flg=0x4000010 cmp=com.sec.esdk.elm/.receiver.MainReceiver (has extras) }
04-04 16:06:41.792 D/ContainerEventsRelayManager(1475): <<< Intent data is >>> : package:com.testapps.potato.e5e_app
04-04 16:06:41.832 I/elm (3585): MainReceiver.onReceive() END - - - - - : Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.testapps.potato.e5e_app flg=0x4000010 cmp=com.sec.esdk.elm/.receiver.MainReceiver (has extras) }
04-04 16:06:42.033 D/BackupManagerService(845): Received broadcast Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.testapps.potato.e5e_app flg=0x4000010 (has extras) }
04-04 16:06:42.453 I/CrashAnrDetector(845): onPackageRemoved : com.testapps.potato.e5e_app
04-04 16:06:42.913 D/CapabilityManagerService New(17703): The package(com.testapps.potato.e5e_app) removed
04-04 16:06:43.324 D/PackageBroadcastService(1998): Received broadcast action=android.intent.action.PACKAGE_REMOVED and uri=com.testapps.potato.e5e_app
04-04 16:06:43.324 D/AccountUtils(1998): Clearing selected account for com.testapps.potato.e5e_app
04-04 16:06:43.354 I/LocationSettingsChecker(1998): Removing dialog suppression flag for package com.testapps.potato.e5e_app
04-04 16:06:43.614 I/ConfigFetchService(1998): onStartCommand Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.testapps.potato.e5e_app cmp=com.google.android.gms/.config.ConfigFetchService (has extras) }
04-04 16:06:43.654 I/Icing (1998): doRemovePackageData com.testapps.potato.e5e_app
04-04 16:06:43.864 I/UpdateIcingCorporaServi(2769): Updating corpora: APPS=com.testapps.potato.e5e_app, CONTACTS=MAYBE
04-04 16:06:48.619 D/PackageManager(845): PackageURI{file:///data/local/tmp/com.testapps.potato.e5e_app}
04-04 16:06:50.191 D/PackageManager(845): Sending to user 0: act=android.intent.action.PACKAGE_ADDED dat=package:com.testapps.potato.e5e_app flg=0x4000000 Bundle[{android.intent.extra.UID=10423, android.intent.extra.user_handle=0}]
04-04 16:06:50.221 D/ContainerEventsRelayManager(1475): <<< Intent data is >>> : package:com.testapps.potato.e5e_app
04-04 16:06:50.541 D/BackupManagerService(845): Received broadcast Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.testapps.potato.e5e_app flg=0x4000010 (has extras) }
04-04 16:06:50.571 D/ECS_EnterpriseContainerService(845): <<< Intent data is >>> : package:com.testapps.potato.e5e_app
04-04 16:06:51.272 D/FileShare-Server(18117): ServerBroadcastReceiver.onReceive - action android.intent.action.PACKAGE_ADDED // package:com.testapps.potato.e5e_app
04-04 16:06:51.452 I/CrashAnrDetector(845): onPackageAdded : com.testapps.potato.e5e_app
04-04 16:06:51.452 D/PackageBroadcastService(1998): Received broadcast action=android.intent.action.PACKAGE_ADDED and uri=com.testapps.potato.e5e_app
04-04 16:06:51.492 V/ApplicationPolicy(845): isApplicationStateBlocked userId 0 pkgname com.testapps.potato.e5e_app
04-04 16:06:51.532 I/ConfigFetchService(1998): onStartCommand Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.testapps.potato.e5e_app cmp=com.google.android.gms/.config.ConfigFetchService (has extras) }
04-04 16:06:51.642 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/create]
04-04 16:06:51.722 I/E5E (18172): onResume - reconnect
04-04 16:06:51.982 I/UpdateIcingCorporaServi(2769): Updating corpora: APPS=com.testapps.potato.e5e_app, CONTACTS=MAYBE
04-04 16:06:59.389 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/pause]
04-04 16:07:01.772 I/E5E (18172): onResume - reconnect
04-04 16:07:01.832 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/resume]
04-04 16:07:02.262 I/NotificationService(845): cancelToast pkg=com.testapps.potato.e5e_app callback=android.app.ITransientNotification$Stub$Proxy@44e73bb0
04-04 16:07:03.213 I/E5E (18172): db created!
04-04 16:07:03.273 I/E5E (18172): writing PDCP SYS INFO
04-04 16:07:03.273 I/E5E (18172): sending:FE 19 01 10 00 00 00 00
04-04 16:07:03.293 I/E5E (18172): readcount:14
04-04 16:07:03.293 I/E5E (18172): Start index is0
04-04 16:07:03.293 I/E5E (18172): Message Received!
04-04 16:07:03.293 I/E5E (18172): hex string is:FE 19 02 10 00 06 00 00 02 02 04 00 00 00
04-04 16:07:03.293 I/E5E (18172): No. of Devices: 2
04-04 16:07:03.293 I/E5E (18172): No. of inchannels: 2
04-04 16:07:03.293 I/E5E (18172): No. of outchannels: 4
04-04 16:07:03.293 I/E5E (18172): No. of datachannels: 0
04-04 16:07:06.927 I/E5E (18172): writing GET UNIT INFO
04-04 16:07:06.927 I/E5E (18172): sending:FE 19 04 10 00 03 00 00 01 00 00
04-04 16:07:06.947 I/E5E (18172): readcount:22
04-04 16:07:06.947 I/E5E (18172): Start index is0
04-04 16:07:06.947 I/E5E (18172): Message Received!
04-04 16:07:06.947 I/E5E (18172): hex string is:FE 19 05 10 00 0E 00 00 63 00 0E 00 09 00 00 01 00 01 00 03 00 00
04-04 16:07:06.947 I/E5E (18172): Get Unit Info Received!
04-04 16:07:09.079 I/E5E (18172): writing GET PARAM INFO(1)
04-04 16:07:09.089 I/E5E (18172): sending:FE 19 01 11 00 0A 00 00 63 00 0E 00 09 00 00 07 00 00
04-04 16:07:09.389 I/E5E (18172): waiting for PARAM INFO (1)
04-04 16:07:09.389 I/E5E (18172): Got Param!
04-04 16:07:09.439 I/E5E (18172): Number of Channels (for loop) 3
04-04 16:07:09.439 I/E5E (18172): Channel index is:1
04-04 16:07:09.960 I/E5E (18172): readcount:11
04-04 16:07:09.960 I/E5E (18172): Start index is0
04-04 16:07:09.960 I/E5E (18172): Message Received!
04-04 16:07:09.970 I/E5E (18172): hex string is:FE 19 03 11 00 03 00 00 00 00 00
04-04 16:07:09.970 E/E5E (18172): Get Parameter Data Failed!
04-04 16:07:11.441 I/E5E (18172): Writing DATA CHANNEL INFO
04-04 16:07:11.441 I/E5E (18172): sending:FE 19 07 10 00 09 00 00 63 00 0E 00 09 00 01 00 00
04-04 16:07:11.471 I/E5E (18172): readcount:22
04-04 16:07:11.471 I/E5E (18172): Start index is0
04-04 16:07:11.471 I/E5E (18172): Message Received!
04-04 16:07:11.471 I/E5E (18172): hex string is:FE 19 08 10 00 0E 00 00 63 00 0E 00 09 00 01 01 00 01 00 01 00 00
04-04 16:07:11.471 I/E5E (18172): Get Data Channel Info Received!
04-04 16:07:13.603 I/E5E (18172): Adding Params!
04-04 16:07:13.683 I/E5E (18172): At channel switch!
04-04 16:07:15.685 I/E5E (18172): writing GET DATA CHAN LINK INFO
04-04 16:07:15.685 I/E5E (18172): sending:FE 19 0A 10 00 09 00 00 63 00 0E 00 09 00 01 00 00
04-04 16:07:15.715 I/E5E (18172): readcount:25
04-04 16:07:15.715 I/E5E (18172): Start index is0
04-04 16:07:15.715 I/E5E (18172): Message Received!
04-04 16:07:15.715 I/E5E (18172): hex string is:FE 19 0B 10 00 11 00 00 00 00 00 00 00 00 00 63 00 0E 00 09 00 01 00 00 00
04-04 16:07:15.715 I/E5E (18172): Get Data Channel Link Info Received!
04-04 16:07:17.837 I/E5E (18172): Adding more Parameters!
04-04 16:07:18.048 I/E5E (18172): Done adding Parameters!
04-04 16:07:18.048 I/E5E (18172): Channel index is:2
04-04 16:07:20.050 I/E5E (18172): Writing DATA CHANNEL INFO
04-04 16:07:20.050 I/E5E (18172): sending:FE 19 07 10 00 09 00 00 63 00 0E 00 09 00 02 00 00
04-04 16:07:20.070 I/E5E (18172): readcount:12
04-04 16:07:20.070 I/E5E (18172): Start index is0
04-04 16:07:20.070 I/E5E (18172): Message Received!
04-04 16:07:20.070 I/E5E (18172): hex string is:FE 19 08 10 00 0E 00 00 63 00 0E 00
04-04 16:07:20.070 I/E5E (18172): Get Data Channel Info Received!
04-04 16:07:20.070 E/AndroidRuntime(18172): Process: com.testapps.potato.e5e_app, PID: 18172
04-04 16:07:20.070 E/AndroidRuntime(18172): at com.testapps.potato.e5e_app.Startup.MessageHandler(Startup.java:379)
04-04 16:07:20.070 E/AndroidRuntime(18172): at com.testapps.potato.e5e_app.Startup$ReadThread.run(Startup.java:310)
04-04 16:07:20.080 W/ActivityManager(845): Force finishing activity com.testapps.potato.e5e_app/.Startup
04-04 16:07:20.170 D/CrashAnrDetector(845): processName: com.testapps.potato.e5e_app
04-04 16:07:20.170 D/CrashAnrDetector(845): broadcastEvent : com.testapps.potato.e5e_app data_app_crash
04-04 16:07:20.170 V/SmartFaceService - 3rd party pause(845): onReceive [android.intent.action.ACTIVITY_STATE/com.testapps.potato.e5e_app/pause]
04-04 16:07:20.360 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:20.530 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:20.680 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:20.830 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:20.981 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:21.131 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:21.281 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:21.431 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:21.581 I/E5E (18172): waiting for DATA CHANNEL INFO
04-04 16:07:21.611 I/WindowState(845): WIN DEATH: Window{42f35680 u0 com.testapps.potato.e5e_app/com.testapps.potato.e5e_app.Startup}
04-04 16:07:21.621 I/ActivityManager(845): Process com.testapps.potato.e5e_app (pid 18172) (adj 11) has died.