i am writing a bluetooth app communicating with a bluetooth module. Actually it works very well. But i want the connection to stay established also while the app is in background and other apps are used, so that another activity like incoming sms or something else can trigger my app in background to send messages to my device.
Until now i am very confused how to do this. Can anyone give me advice?
I also checked this: Background Bluetooth App - Threading? but it doesn't help me.
Here is my code so far:
http://pastebin.com/C7Uynuan
Side information: there is a connect button, which establishs the connection and then there are 3 other buttons sending different messages to my device.
In OnResume i reconnect to my device, but this should be not necessary when having a stable connection.
Thanks,
progNewfag
EDIT: Now i am pretty sure that i need to use an IntentService, but not sure how.
You Have to learn the service first
Here is the Example of Service
Create a new Class and Name it for Exmaple: MyService
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.widget.Toast;
public class MyService extends Service {
public MyService() {
}
@Override
public IBinder onBind(Intent intent) {
return Null;
}
@Override
public void onCreate() {
Toast.makeText(this, "The new Service was Created", Toast.LENGTH_LONG).show();
}
@Override
public void onStart(Intent intent, int startId) {
// For time consuming an long tasks you can launch a new thread here...
// Do your Bluetooth Work Here
Toast.makeText(this, " Service Started", Toast.LENGTH_LONG).show();
}
@Override
public void onDestroy() {
Toast.makeText(this, "Service Destroyed", Toast.LENGTH_LONG).show();
}
}
Now in your main activity you can start the service through this code
startService(new Intent(this, MyService.class));
For Stopping the service put this code in MainActivity
stopService(new Intent(this, MyService.class));
See this Post
Connection between Activity and Service
Also See this link
http://www.javacodegeeks.com/2014/01/android-service-tutorial.html
http://examples.javacodegeeks.com/android/core/service/android-service-example/
EDIT:
Example: Communication between Activity and Service using Messaging
http://www.intertech.com/Blog/using-localbroadcastmanager-in-service-to-activity-communications/