--- a/src/com/beem/project/beem/BeemApplication.java Tue Apr 21 19:46:44 2009 +0200
+++ b/src/com/beem/project/beem/BeemApplication.java Tue Apr 21 20:48:35 2009 +0200
@@ -5,7 +5,6 @@
import java.util.LinkedList;
import java.util.List;
-
import android.app.Activity;
import android.app.Application;
import android.app.ProgressDialog;
@@ -13,15 +12,12 @@
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
-import android.content.res.Configuration;
import android.content.res.Resources;
import android.os.Handler;
import android.os.IBinder;
import android.os.Message;
import android.os.RemoteException;
import android.util.Log;
-import android.widget.Toast;
-
import com.beem.project.beem.service.aidl.IBeemConnectionListener;
import com.beem.project.beem.service.aidl.IXmppConnection;
import com.beem.project.beem.service.aidl.IXmppFacade;
@@ -127,10 +123,12 @@
}
public synchronized void unbindBeemService() {
+
if (mIsConnected) {
mApplicationContext.unbindService(mServConn);
mIsConnected = false;
}
+
}
/**
--- a/src/com/beem/project/beem/ui/ChangeStatus.java Tue Apr 21 19:46:44 2009 +0200
+++ b/src/com/beem/project/beem/ui/ChangeStatus.java Tue Apr 21 20:48:35 2009 +0200
@@ -5,7 +5,6 @@
import android.os.Bundle;
import android.os.Handler;
import android.os.RemoteException;
-import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
@@ -16,7 +15,6 @@
import com.beem.project.beem.BeemApplication;
import com.beem.project.beem.BeemService;
import com.beem.project.beem.R;
-import com.beem.project.beem.R.string;
import com.beem.project.beem.service.aidl.IXmppFacade;
import com.beem.project.beem.utils.Status;
--- a/src/com/beem/project/beem/ui/ContactList.java Tue Apr 21 19:46:44 2009 +0200
+++ b/src/com/beem/project/beem/ui/ContactList.java Tue Apr 21 20:48:35 2009 +0200
@@ -72,7 +72,6 @@
@Override
protected void onStart() {
super.onStart();
- mBeemApplication.startBeemService();
}
@Override
@@ -85,6 +84,7 @@
@Override
protected void onResume() {
super.onResume();
+ mBeemApplication.startBeemService();
/*
* @TODO: A ameliorer apres listener de nikita
*/
--- a/src/com/beem/project/beem/ui/SendIM.java Tue Apr 21 19:46:44 2009 +0200
+++ b/src/com/beem/project/beem/ui/SendIM.java Tue Apr 21 20:48:35 2009 +0200
@@ -104,21 +104,35 @@
if (mContact == null)
mContact = getIntent().getParcelableExtra("contact");
setViewHeader();
- mBeemApplication.startBeemService();
mService = mBeemApplication.getXmppFacade();
- try {
- mChatManager = mService.getChatManager();
- mChatManager.addChatCreationListener(mChatManagerListener);
- mChat = mChatManager.createChat(mContact, mMessageListener);
- String text = mChat.getLastMessages();
- if (!"".equals(text)) {
- mText.append(text);
- mChat.clearLastMessages();
+
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+ mBeemApplication.startBeemService();
+ mBeemApplication.callWhenConnectedToServer(mHandler, new Runnable(){
+
+ @Override
+ public void run() {
+ mService = mBeemApplication.getXmppFacade();
+ try {
+ mChatManager = mService.getChatManager();
+ mChatManager.addChatCreationListener(mChatManagerListener);
+ mChat = mChatManager.createChat(mContact, mMessageListener);
+ String text = mChat.getLastMessages();
+ if (!"".equals(text)) {
+ mText.append(text);
+ mChat.clearLastMessages();
+ }
+ } catch (RemoteException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
}
- } catch (RemoteException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
+ });
+
}
@Override