mirror of
https://github.com/yggdrasil-network/yggdrasil-android.git
synced 2025-04-28 06:05:08 +03:00
Made more reliable display of connectivity state on main screen.
This commit is contained in:
parent
054e1c9792
commit
ff23d3418e
1 changed files with 9 additions and 10 deletions
|
@ -152,15 +152,15 @@ class MainActivity : AppCompatActivity() {
|
|||
override fun onReceive(context: Context?, intent: Intent) {
|
||||
when (intent.getStringExtra("type")) {
|
||||
"state" -> {
|
||||
enabledLabel.text = if (intent.getBooleanExtra("started", false)) {
|
||||
var count = 0
|
||||
if (intent.hasExtra("peers")) {
|
||||
val peers = intent.getStringExtra("peers")
|
||||
if (peers != null && peers != "null") {
|
||||
val peerState = JSONArray(peers)
|
||||
count = peerState.length()
|
||||
}
|
||||
val peerState = JSONArray(intent.getStringExtra("peers") ?: "[]")
|
||||
var count = 0
|
||||
for (i in 0..<peerState.length()) {
|
||||
val peer = peerState.getJSONObject(i)
|
||||
if (peer.getString("IP").isNotEmpty()) {
|
||||
count += 1
|
||||
}
|
||||
}
|
||||
enabledLabel.text = if (intent.getBooleanExtra("started", false)) {
|
||||
if (count == 0) {
|
||||
enabledLabel.setTextColor(Color.RED)
|
||||
getString(R.string.main_no_connectivity)
|
||||
|
@ -175,8 +175,7 @@ class MainActivity : AppCompatActivity() {
|
|||
ipAddressLabel.text = intent.getStringExtra("ip") ?: "N/A"
|
||||
subnetLabel.text = intent.getStringExtra("subnet") ?: "N/A"
|
||||
if (intent.hasExtra("peers")) {
|
||||
val peerState = JSONArray(intent.getStringExtra("peers") ?: "[]")
|
||||
peersLabel.text = when (val count = peerState.length()) {
|
||||
peersLabel.text = when (count) {
|
||||
0 -> getString(R.string.main_no_peers)
|
||||
1 -> getString(R.string.main_one_peer)
|
||||
else -> getString(R.string.main_many_peers, count)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue