ok
This commit is contained in:
parent
1328b33876
commit
aac4a7457d
176
main.kt
Normal file
176
main.kt
Normal file
|
@ -0,0 +1,176 @@
|
|||
package com.example.appimage
|
||||
|
||||
import android.graphics.Bitmap
|
||||
import android.graphics.BitmapFactory
|
||||
import android.graphics.Color
|
||||
import android.os.AsyncTask
|
||||
import android.os.Bundle
|
||||
import android.util.Base64
|
||||
import android.util.JsonReader
|
||||
import android.util.Log
|
||||
import android.view.View
|
||||
import android.widget.Button
|
||||
import android.widget.EditText
|
||||
import android.widget.ImageView
|
||||
import android.widget.Toast
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import org.json.JSONObject
|
||||
import org.json.JSONStringer
|
||||
import org.xml.sax.Parser
|
||||
import java.io.BufferedReader
|
||||
import java.io.InputStream
|
||||
import java.io.InputStreamReader
|
||||
import java.lang.Exception
|
||||
import java.lang.StringBuilder
|
||||
import java.net.HttpURLConnection
|
||||
import java.net.URL
|
||||
import java.net.URLEncoder
|
||||
|
||||
|
||||
class MainActivity : AppCompatActivity() {
|
||||
|
||||
var urlRes : String = ""
|
||||
var urlConfirm : String = ""
|
||||
var btnShowImage1: Button? = null
|
||||
var btnShowImage2: Button? = null
|
||||
var im1: ImageView? = null
|
||||
var im2: ImageView? = null
|
||||
|
||||
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.activity_main)
|
||||
|
||||
btnShowImage1 = findViewById<Button>(R.id.btnShowImage1)
|
||||
btnShowImage2 = findViewById<Button>(R.id.btnShowImage2)
|
||||
im1 = findViewById(R.id.im1)
|
||||
im2 = findViewById(R.id.im2)
|
||||
|
||||
btnShowImage1!!.isEnabled = false
|
||||
btnShowImage2!!.isEnabled = false
|
||||
|
||||
btnShowImage1!!.setOnClickListener {
|
||||
var url = urlRes + "1&timeout=6"
|
||||
// Log.d("URL : ", url)
|
||||
sendAPIDetail(url)
|
||||
}
|
||||
|
||||
btnShowImage2!!.setOnClickListener {
|
||||
Log.d("urlConfirm : ", urlConfirm)
|
||||
sendAPIDetail(urlConfirm)
|
||||
}
|
||||
}
|
||||
|
||||
fun sendAPIDetail(url: String) {
|
||||
var readContentURL: ReadContentURL = ReadContentURL()
|
||||
readContentURL.execute(url)
|
||||
}
|
||||
|
||||
fun onConnect(view: View) {
|
||||
var textID = findViewById<EditText>(R.id.edEnterID);
|
||||
var id = textID.text.toString()
|
||||
var url = "http://192.168.3.94:5000/get-ip-box?id=" + id
|
||||
this.sendAPIDetail(url)
|
||||
}
|
||||
|
||||
|
||||
inner class ReadContentURL : AsyncTask<String, Void, String> () {
|
||||
|
||||
var content: String = String()
|
||||
var url : URL? = null
|
||||
var urlConnection: HttpURLConnection? = null
|
||||
var inputStream : InputStream? = null
|
||||
var inputStreamReader : InputStreamReader? = null
|
||||
var bufferedReader: BufferedReader? = null
|
||||
var line: String = ""
|
||||
|
||||
|
||||
override fun onPreExecute() {
|
||||
super.onPreExecute()
|
||||
}
|
||||
|
||||
override fun doInBackground(vararg params: String?): String {
|
||||
try {
|
||||
|
||||
url = URL(params[0])
|
||||
urlConnection = url!!.openConnection() as HttpURLConnection
|
||||
inputStream = urlConnection!!.inputStream
|
||||
inputStreamReader = InputStreamReader(inputStream)
|
||||
bufferedReader = BufferedReader(inputStreamReader)
|
||||
try {
|
||||
do {
|
||||
line = bufferedReader!!.readLine()
|
||||
if (line != null) {
|
||||
content += line
|
||||
|
||||
}
|
||||
} while (line != null)
|
||||
} catch (e:Exception) {
|
||||
Log.d("AAA", e.toString())
|
||||
}
|
||||
return content
|
||||
} catch (e: Exception) {
|
||||
Log.d("ERROR:", e.toString())
|
||||
}finally {
|
||||
bufferedReader!!.close()
|
||||
inputStreamReader!!.close()
|
||||
inputStream!!.close()
|
||||
urlConnection!!.disconnect()
|
||||
}
|
||||
return "{\"error\":\"1001\"}"
|
||||
}
|
||||
|
||||
override fun onPostExecute(result: String?) {
|
||||
super.onPostExecute(result)
|
||||
btnShowImage2!!.isEnabled = false
|
||||
try {
|
||||
var obj = JSONObject(result.toString())
|
||||
if (obj.has("url")) {
|
||||
urlRes = obj["url"].toString()
|
||||
btnShowImage1!!.isEnabled = true
|
||||
}
|
||||
else if (obj.has("data")) {
|
||||
var jArray = obj.getJSONArray("data")
|
||||
var code = obj["code"]
|
||||
// Log.d("Code : ", code.toString())
|
||||
for (i in 0 until jArray.length())
|
||||
{
|
||||
val row = jArray.getJSONObject(i)
|
||||
var base64 = row.getString("base64")
|
||||
var type = row.getString("type")
|
||||
if(type == "CD" && (code.toString() == "1" || code.toString() != "2")) {
|
||||
im1!!.setImageBitmap(decodeBase64(base64))
|
||||
}
|
||||
if (type == "MT" && (code.toString() == "1" || code.toString() != "3")) {
|
||||
im2!!.setImageBitmap(decodeBase64(base64))
|
||||
}
|
||||
}
|
||||
|
||||
if (code.toString() == "2") {
|
||||
btnShowImage2!!.isEnabled = true
|
||||
urlConfirm = urlRes + "2&timeout=6"
|
||||
im1!!.setImageResource(android.R.color.transparent)
|
||||
Toast.makeText(this@MainActivity, "Lỗi khi chụp chân dung", Toast.LENGTH_SHORT).show()
|
||||
} else if (code.toString() == "3") {
|
||||
btnShowImage2!!.isEnabled = true
|
||||
urlConfirm = urlRes + "3&timeout=6"
|
||||
im2!!.setImageResource(android.R.color.transparent)
|
||||
Toast.makeText(this@MainActivity, "Lỗi khi chụp chứng minh thư", Toast.LENGTH_SHORT).show()
|
||||
}
|
||||
}
|
||||
} catch (e : Exception) {
|
||||
Toast.makeText(this@MainActivity, "Lỗi...", Toast.LENGTH_LONG).show()
|
||||
// btnShowImage2!!.isEnabled = false
|
||||
im1!!.setImageResource(android.R.color.transparent)
|
||||
im2!!.setImageResource(android.R.color.transparent)
|
||||
}
|
||||
}
|
||||
|
||||
fun decodeBase64(input: String): Bitmap {
|
||||
val decodedBytes = Base64.decode(input, 0)
|
||||
return BitmapFactory.decodeByteArray(decodedBytes, 0, decodedBytes.size)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user