fix some issues when moving loginAnim to background.
--- a/src/com/beem/project/beem/ui/LoginAnim.java Mon Mar 21 22:07:46 2011 +0100
+++ b/src/com/beem/project/beem/ui/LoginAnim.java Wed Mar 09 20:41:58 2011 +0100
@@ -82,6 +82,7 @@
private AsyncTask<IXmppFacade, Integer, Boolean> mTask;
private Button mCancelBt;
private TextView mLoginState;
+ private boolean mBinded;
/**
* Constructor.
@@ -110,27 +111,19 @@
protected void onStart() {
super.onStart();
mLogo.startAnimation(mRotateAnim);
- }
-
- /* (non-Javadoc)
- * @see android.app.Activity#onResume()
- */
- @Override
- protected void onResume() {
- super.onResume();
if (mTask == null)
mTask = new LoginTask();
- if (mXmppFacade == null)
- bindService(LoginAnim.SERVICE_INTENT, mServConn, BIND_AUTO_CREATE);
+ if (!mBinded)
+ mBinded = bindService(LoginAnim.SERVICE_INTENT, mServConn, BIND_AUTO_CREATE);
}
/* (non-Javadoc)
* @see android.app.Activity#onPause()
*/
@Override
- protected void onPause() {
- super.onPause();
- if (mXmppFacade != null) { // and async task not en cours
+ protected void onStop() {
+ super.onStop();
+ if (mBinded && mTask.getStatus() != AsyncTask.Status.RUNNING ) {
unbindService(mServConn);
mXmppFacade = null;
}