update
This commit is contained in:
parent
d75a8bb2b2
commit
50518c5035
@ -1,13 +1,19 @@
|
||||
package com.rookiedev.hexapod
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.app.AlertDialog
|
||||
import android.content.DialogInterface
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.view.*
|
||||
import android.widget.ImageView
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import com.rookiedev.hexapod.network.TCPClient
|
||||
import com.rookiedev.hexapod.network.TCPClient.OnConnectEstablished
|
||||
import com.rookiedev.hexapod.network.TCPClient.OnMessageReceived
|
||||
import com.rookiedev.hexapod.network.TCPClient.OnDisconnected
|
||||
import kotlinx.coroutines.*
|
||||
import kotlin.math.PI
|
||||
import kotlin.math.atan2
|
||||
@ -196,9 +202,17 @@ class ControlActivity : AppCompatActivity() {
|
||||
// udpClient.start()
|
||||
println("connected")
|
||||
}
|
||||
}, object : OnDisconnected{
|
||||
override fun onDisconnected() {
|
||||
Handler(Looper.getMainLooper()).post {
|
||||
alertDialog(0)
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
this.tcpClient!!.start()
|
||||
|
||||
// alertDialog(0)
|
||||
}
|
||||
|
||||
|
||||
@ -226,6 +240,23 @@ class ControlActivity : AppCompatActivity() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun alertDialog(type: Int) {
|
||||
val alert: AlertDialog = AlertDialog.Builder(this).create()
|
||||
when (type) {
|
||||
0 -> {
|
||||
alert.setTitle("Failed to connect")
|
||||
alert.setMessage("Failed to connect to the Hexapod"
|
||||
)
|
||||
alert.setOnCancelListener(DialogInterface.OnCancelListener { finish() })
|
||||
alert.setButton(AlertDialog.BUTTON_POSITIVE,
|
||||
"OK",
|
||||
DialogInterface.OnClickListener { dialog, which -> finish() })
|
||||
}
|
||||
}
|
||||
alert.show()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -15,7 +15,8 @@ class TCPClient(
|
||||
ip: String?,
|
||||
port: Int,
|
||||
messagelistener: OnMessageReceived?,
|
||||
onconnected: OnConnectEstablished?
|
||||
onconnected: OnConnectEstablished?,
|
||||
ondisconnect: OnDisconnected?
|
||||
) :
|
||||
Thread() {
|
||||
private val controller: ControlActivity = c
|
||||
@ -28,6 +29,7 @@ class TCPClient(
|
||||
private var TCPMessage: String? = null
|
||||
private var mMessageListener: OnMessageReceived? = null
|
||||
private var onConnected: OnConnectEstablished? = null
|
||||
private var onDisconnected: OnDisconnected?=null
|
||||
private var isConnected = false
|
||||
private var pause = false // if the thread is paused by system
|
||||
private var isNewData = false
|
||||
@ -61,6 +63,8 @@ class TCPClient(
|
||||
} catch (e: Exception) {
|
||||
// controller.cancelProgressDialog(java.lang.ModuleLayer.Controller.SERVERALERT)
|
||||
println("unable to connect")
|
||||
// controller.alertDialog(0)
|
||||
onDisconnected!!.onDisconnected()
|
||||
}
|
||||
}
|
||||
|
||||
@ -102,10 +106,15 @@ class TCPClient(
|
||||
fun onConnected()
|
||||
}
|
||||
|
||||
interface OnDisconnected {
|
||||
fun onDisconnected()
|
||||
}
|
||||
|
||||
init {
|
||||
SERVERPORT = port
|
||||
mMessageListener = messagelistener
|
||||
onConnected = onconnected
|
||||
onDisconnected = ondisconnect
|
||||
try {
|
||||
SERVERIP = InetAddress.getByName(ip)
|
||||
serverAddr = InetSocketAddress(SERVERIP, SERVERPORT)
|
||||
|
@ -117,4 +117,5 @@
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_control_circle" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</LinearLayout>
|
Loading…
x
Reference in New Issue
Block a user