Здравствуйте, я получаю данные с веб-сайта, используя JSON в моем приложении для Android.Поэтому я создал AsynsTask для этого, но проблема в том, что я на самом деле получил температуру своего дома и это изменение, и я не хочу нажимать кнопку, чтобы увидеть новую температуру, которую я хочу, в режиме реального времени температуру, которая изменяется.Как я могу это сделать ?
Вот мой код:
inner class MyAsyncTask : AsyncTask<String, String, String>(){
override fun onPreExecute() {
}
override fun doInBackground(vararg p0: String?): String {
try{
test1.text = ""
val url = URL(p0[0])
val urlConnect = url.openConnection() as HttpURLConnection
urlConnect.connectTimeout = 7000
var inString = ConvertStreamToString(urlConnect.inputStream)
publishProgress(inString)
}catch(ex:Exception){}
return " "
}
override fun onProgressUpdate(vararg values: String?) {
try{
var json = JSONArray(values[0])
var temperature = json.getString(0)
test1.text = "Temperature :"+temperature
}catch(ex:Exception){}
}
override fun onPostExecute(result: String?){}
}
fun ConvertStreamToString(inputStream:InputStream):String{
val bufferReader = BufferedReader(InputStreamReader(inputStream))
var line:String
var AllString:String = ""
try{
do{
line = bufferReader.readLine()
if(line!=null){
AllString+=line
}
}while(line!=null)
inputStream.close()
}catch(ex:Exception){}
return AllString
}
Итак, как я могу сделать это, чтобы иметь в реальном времени температуру?
Спасибо большое!