Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
jami-client-android
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Requirements
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Deploy
Releases
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
savoirfairelinux
jami-client-android
Commits
d432dc26
Commit
d432dc26
authored
Mar 17, 2016
by
Adrien Béraud
Browse files
Options
Downloads
Patches
Plain Diff
reload account list if state changed during loading
Tuleap:
#468
Change-Id: Ife050404763c530b48fb857ccd3d2caba03a57c1
parent
7533977c
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
ring-android/app/src/main/java/cx/ring/service/LocalService.java
+40
-12
40 additions, 12 deletions
...droid/app/src/main/java/cx/ring/service/LocalService.java
with
40 additions
and
12 deletions
ring-android/app/src/main/java/cx/ring/service/LocalService.java
+
40
−
12
View file @
d432dc26
...
@@ -45,6 +45,7 @@ import android.net.Uri;
...
@@ -45,6 +45,7 @@ import android.net.Uri;
import
android.os.AsyncTask
;
import
android.os.AsyncTask
;
import
android.os.Binder
;
import
android.os.Binder
;
import
android.os.IBinder
;
import
android.os.IBinder
;
import
android.os.OperationCanceledException
;
import
android.os.RemoteException
;
import
android.os.RemoteException
;
import
android.preference.PreferenceManager
;
import
android.preference.PreferenceManager
;
import
android.provider.ContactsContract
;
import
android.provider.ContactsContract
;
...
@@ -296,7 +297,7 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -296,7 +297,7 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
@Override
@Override
public
void
onCreate
()
{
public
void
onCreate
()
{
Log
.
e
(
TAG
,
"onCreate"
);
Log
.
d
(
TAG
,
"onCreate"
);
super
.
onCreate
();
super
.
onCreate
();
mediaManager
=
new
MediaManager
(
this
);
mediaManager
=
new
MediaManager
(
this
);
...
@@ -356,6 +357,7 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -356,6 +357,7 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
all_accounts
=
data
;
all_accounts
=
data
;
accounts
=
all_accounts
.
subList
(
0
,
data
.
size
()-
1
);
accounts
=
all_accounts
.
subList
(
0
,
data
.
size
()-
1
);
ip2ip_account
=
all_accounts
.
subList
(
data
.
size
()-
1
,
data
.
size
());
ip2ip_account
=
all_accounts
.
subList
(
data
.
size
()-
1
,
data
.
size
());
mAccountLoader
.
stopLoading
();
boolean
haveSipAccount
=
false
;
boolean
haveSipAccount
=
false
;
boolean
haveRingAccount
=
false
;
boolean
haveRingAccount
=
false
;
for
(
Account
acc
:
accounts
)
{
for
(
Account
acc
:
accounts
)
{
...
@@ -415,7 +417,7 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -415,7 +417,7 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
try
{
try
{
if
(
mService
.
isStarted
())
{
if
(
mService
.
isStarted
())
{
mAccountLoader
.
startLoading
();
mAccountLoader
.
startLoading
();
mAccountLoader
.
forceLoa
d
();
mAccountLoader
.
onContentChange
d
();
}
}
}
catch
(
RemoteException
e
)
{
}
catch
(
RemoteException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
...
@@ -1034,18 +1036,34 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -1034,18 +1036,34 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
super
(
context
);
super
(
context
);
Log
.
w
(
TAG
,
"AccountsLoader constructor"
);
Log
.
w
(
TAG
,
"AccountsLoader constructor"
);
}
}
private
boolean
checkCancel
()
{
if
(
isLoadInBackgroundCanceled
())
{
Log
.
w
(
TAG
,
"AccountsLoader cancelled"
);
throw
new
OperationCanceledException
();
}
if
(
isAbandoned
())
{
Log
.
w
(
TAG
,
"AccountsLoader abandoned"
);
return
true
;
}
return
false
;
}
@SuppressWarnings
(
"unchecked"
)
@SuppressWarnings
(
"unchecked"
)
@Override
@Override
public
ArrayList
<
Account
>
loadInBackground
()
{
public
ArrayList
<
Account
>
loadInBackground
()
{
Log
.
w
(
TAG
,
"AccountsLoader loadInBackground"
);
Log
.
w
(
TAG
,
"AccountsLoader loadInBackground"
);
ArrayList
<
Account
>
accounts
=
new
ArrayList
<>();
ArrayList
<
Account
>
accounts
=
new
ArrayList
<>();
Account
IP2IP
=
null
;
Account
IP2IP
=
null
;
if
(
checkCancel
())
return
null
;
try
{
try
{
ArrayList
<
String
>
accountIDs
=
(
ArrayList
<
String
>)
mService
.
getAccountList
();
ArrayList
<
String
>
accountIDs
=
(
ArrayList
<
String
>)
mService
.
getAccountList
();
Map
<
String
,
String
>
details
;
Map
<
String
,
String
>
details
;
ArrayList
<
Map
<
String
,
String
>>
credentials
;
ArrayList
<
Map
<
String
,
String
>>
credentials
;
Map
<
String
,
String
>
state
;
Map
<
String
,
String
>
state
;
for
(
String
id
:
accountIDs
)
{
for
(
String
id
:
accountIDs
)
{
if
(
checkCancel
())
return
null
;
details
=
(
Map
<
String
,
String
>)
mService
.
getAccountDetails
(
id
);
details
=
(
Map
<
String
,
String
>)
mService
.
getAccountDetails
(
id
);
state
=
(
Map
<
String
,
String
>)
mService
.
getVolatileAccountDetails
(
id
);
state
=
(
Map
<
String
,
String
>)
mService
.
getVolatileAccountDetails
(
id
);
if
(
id
.
contentEquals
(
ACCOUNT_IP2IP
))
{
if
(
id
.
contentEquals
(
ACCOUNT_IP2IP
))
{
...
@@ -1065,8 +1083,14 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -1065,8 +1083,14 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
Log
.
e
(
TAG
,
e
.
toString
());
Log
.
e
(
TAG
,
e
.
toString
());
}
}
accounts
.
add
(
IP2IP
);
accounts
.
add
(
IP2IP
);
if
(
checkCancel
())
return
null
;
return
accounts
;
return
accounts
;
}
}
@Override
protected
void
onStopLoading
()
{
cancelLoad
();
}
}
}
private
void
updateConnectivityState
()
{
private
void
updateConnectivityState
()
{
...
@@ -1186,9 +1210,8 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -1186,9 +1210,8 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
case
DRingService
.
DRING_CONNECTION_CHANGED
:
{
case
DRingService
.
DRING_CONNECTION_CHANGED
:
{
boolean
connected
=
intent
.
getBooleanExtra
(
"connected"
,
false
);
boolean
connected
=
intent
.
getBooleanExtra
(
"connected"
,
false
);
if
(
connected
)
{
if
(
connected
)
{
mAccountLoader
.
onContentChanged
();
mAccountLoader
.
startLoading
();
mAccountLoader
.
startLoading
();
mAccountLoader
.
forceLoa
d
();
mAccountLoader
.
onContentChange
d
();
}
else
{
}
else
{
Log
.
w
(
TAG
,
"DRing connection lost "
);
Log
.
w
(
TAG
,
"DRing connection lost "
);
}
}
...
@@ -1243,7 +1266,12 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -1243,7 +1266,12 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
break
;
break
;
case
ConfigurationManagerCallback
.
ACCOUNT_STATE_CHANGED
:
case
ConfigurationManagerCallback
.
ACCOUNT_STATE_CHANGED
:
Log
.
w
(
TAG
,
"Received "
+
intent
.
getAction
()
+
" "
+
intent
.
getStringExtra
(
"account"
)
+
" "
+
intent
.
getStringExtra
(
"state"
)
+
" "
+
intent
.
getIntExtra
(
"code"
,
0
));
Log
.
w
(
TAG
,
"Received "
+
intent
.
getAction
()
+
" "
+
intent
.
getStringExtra
(
"account"
)
+
" "
+
intent
.
getStringExtra
(
"state"
)
+
" "
+
intent
.
getIntExtra
(
"code"
,
0
));
//accountStateChanged(intent.getStringExtra("Account"), intent.getStringExtra("State"), intent.getIntExtra("code", 0));
if
(
mAccountLoader
.
isStarted
())
{
mAccountLoader
.
cancelLoad
();
mAccountLoader
.
stopLoading
();
mAccountLoader
.
startLoading
();
mAccountLoader
.
onContentChanged
();
}
else
{
for
(
Account
a
:
accounts
)
{
for
(
Account
a
:
accounts
)
{
if
(
a
.
getAccountID
().
contentEquals
(
intent
.
getStringExtra
(
"account"
)))
{
if
(
a
.
getAccountID
().
contentEquals
(
intent
.
getStringExtra
(
"account"
)))
{
a
.
setRegistrationState
(
intent
.
getStringExtra
(
"state"
),
intent
.
getIntExtra
(
"code"
,
0
));
a
.
setRegistrationState
(
intent
.
getStringExtra
(
"state"
),
intent
.
getIntExtra
(
"code"
,
0
));
...
@@ -1251,11 +1279,11 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
...
@@ -1251,11 +1279,11 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
break
;
break
;
}
}
}
}
}
break
;
break
;
case
ConfigurationManagerCallback
.
ACCOUNTS_CHANGED
:
case
ConfigurationManagerCallback
.
ACCOUNTS_CHANGED
:
mAccountLoader
.
onContentChanged
();
mAccountLoader
.
startLoading
();
mAccountLoader
.
startLoading
();
mAccountLoader
.
forceLoa
d
();
mAccountLoader
.
onContentChange
d
();
break
;
break
;
case
CallManagerCallBack
.
INCOMING_TEXT
:
case
CallManagerCallBack
.
INCOMING_TEXT
:
case
ConfigurationManagerCallback
.
INCOMING_TEXT
:
{
case
ConfigurationManagerCallback
.
INCOMING_TEXT
:
{
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment