# HG changeset patch # User Da Risk # Date 1240339715 -7200 # Node ID eb0c7004090c05d66b0ccc2fd94e6b606a0dffac # Parent a223ee5e7faa2c8d8f6cc885436f11d3e65a466e Besoin de changement sur BeemApplication diff -r a223ee5e7faa -r eb0c7004090c src/com/beem/project/beem/BeemApplication.java --- 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; } + } /** diff -r a223ee5e7faa -r eb0c7004090c src/com/beem/project/beem/ui/ChangeStatus.java --- 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; diff -r a223ee5e7faa -r eb0c7004090c src/com/beem/project/beem/ui/ContactList.java --- 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 */ diff -r a223ee5e7faa -r eb0c7004090c src/com/beem/project/beem/ui/SendIM.java --- 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