Commit deaca6ea authored by Harshith Goka's avatar Harshith Goka

Handler communication threads and process

parent 5f927c00
package com.example.harshith.ddc;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.support.annotation.Nullable;
/**
* Created by harshith on 18/6/16.
*/
public class ProcessService extends Service {
@Override
public void onCreate() {
}
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
}
package com.example.harshith.ddc;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
/**
* Created by harshith on 18/6/16.
*/
public class ProcessThread extends Thread{
int[] liveReadings;
Handler handler;
GlobalClass globalClass;
public ProcessThread(GlobalClass globalClass) {
liveReadings = null;
this.globalClass = globalClass;
}
@Override
public void run() {
Looper.prepare();
handler = new Handler(){
@Override
public void handleMessage(Message msg) {
liveReadings = (int[]) msg.obj;
L.m(liveReadings.toString());
}
};
globalClass.setProcessHandler(handler);
Looper.loop();
while (true){
if(liveReadings != null){
}
}
}
}
...@@ -26,11 +26,6 @@ public class ReceiveDataThread extends Thread { ...@@ -26,11 +26,6 @@ public class ReceiveDataThread extends Thread {
this.handler = handler; this.handler = handler;
this.globalClass = globalClass; this.globalClass = globalClass;
stringBuilder = new StringBuilder(); stringBuilder = new StringBuilder();
}
public void setProcessHandler(Handler processHandler) {
this.processHandler = processHandler;
} }
@Override @Override
...@@ -48,27 +43,19 @@ public class ReceiveDataThread extends Thread { ...@@ -48,27 +43,19 @@ public class ReceiveDataThread extends Thread {
String readMessage = new String(buffer,0,bytes); String readMessage = new String(buffer,0,bytes);
stringBuilder.append(readMessage); stringBuilder.append(readMessage);
convert(); convert();
// ProcessThread processThread = new ProcessThread(globalClass);
// processThread.start();
//
// processHandler = globalClass.getProcessHandler();
while(true) { while(true) {
bytes = inputStream.read(buffer); bytes = inputStream.read(buffer);
readMessage = new String(buffer,0,bytes); readMessage = new String(buffer,0,bytes);
stringBuilder.append(readMessage); stringBuilder.append(readMessage);
convert(); convert();
// if(processHandler != null) {
// processHandler.obtainMessage(1, readings).sendToTarget();
// }
// else {
// processHandler = globalClass.getProcessHandler();
// }
}
} }
}
catch (IOException e){ catch (IOException e){
readStatus = Constants.READ_STATUS_NOT_OK; readStatus = Constants.READ_STATUS_NOT_OK;
Looper.prepare();
handler.obtainMessage(Constants.READ_STATUS,readStatus,0,null).sendToTarget();
Looper.loop();
} }
} }
...@@ -102,26 +89,6 @@ public class ReceiveDataThread extends Thread { ...@@ -102,26 +89,6 @@ public class ReceiveDataThread extends Thread {
} }
L.m(testConvert); L.m(testConvert);
stringBuilder.delete(0, endOfLineIndex + 2); stringBuilder.delete(0, endOfLineIndex + 2);
// int[] flex = new int[5];
// for (int i = 0; i != 5; i++) {
// try {
// flex[i] = readings[i];
// }
// catch (ArrayIndexOutOfBoundsException e) {
//
// }
// }
//
// int[] mpu = new int[6];
// for (int i = 0; i != 6; i++) {
// try {
// mpu[i] = readings[5 + i];
// }
// catch (ArrayIndexOutOfBoundsException e) {
//
// }
// }
} }
} }
} }
...@@ -33,13 +33,18 @@ public class ReceiveService extends Service { ...@@ -33,13 +33,18 @@ public class ReceiveService extends Service {
receiveDataThread = new ReceiveDataThread((BluetoothSocket) message.obj,handler,globalClass); receiveDataThread = new ReceiveDataThread((BluetoothSocket) message.obj,handler,globalClass);
receiveDataThread.start(); receiveDataThread.start();
} }
else if((int) message.obj == Constants.CONNECTION_STATUS_NOT_CONNECTED){ else if(message.arg1 == Constants.CONNECTION_STATUS_NOT_CONNECTED){
Toast.makeText(getApplicationContext(),"Couldn't Connect to Dextera Domini, Check whether it is switched on",Toast.LENGTH_SHORT).show(); Toast.makeText(getApplicationContext(),"Couldn't Connect to Dextera Domini, Check whether it is switched on",Toast.LENGTH_SHORT).show();
} }
} }
else if (message.what == Constants.READ_STATUS) { else if (message.what == Constants.READ_STATUS) {
if(message.arg1 == Constants.READ_STATUS_OK){
} }
else if(message.arg1 == Constants.READ_STATUS_NOT_OK){
L.s(getBaseContext(),"Connection Lost");
}
}
} }
}; };
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment