Skip to content

Instantly share code, notes, and snippets.

@yasincidem
Created February 13, 2019 09:43
Show Gist options
  • Save yasincidem/0b976f435dca63b4141282867cdf39aa to your computer and use it in GitHub Desktop.
Save yasincidem/0b976f435dca63b4141282867cdf39aa to your computer and use it in GitHub Desktop.
class ThreadActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_thread)
val thread = Thread {
val person = getPersonInfoById(5)
runOnUiThread {
progress_bar.visibility = View.GONE
name.text = person.name
username.text = person.username
email.text = person.email
phone.text = person.phone
}
}
thread.start()
}
fun getPersonInfoById(userId: Int): Person {
val url = "https://jsonplaceholder.typicode.com/users/$userId"
val inputStream: BufferedReader
val jsonUrl = URL(url)
val dc = jsonUrl.openConnection()
inputStream = BufferedReader(
InputStreamReader(
dc.getInputStream()
)
)
var string = ""
inputStream.readLines().forEach{ string += it }
val jo = JSONObject(string)
return Person(
jo.getString("name"),
jo.getString("username"),
jo.getString("email"),
jo.getString("phone")
)
}
inner class Person(val name: String, val username: String, val email: String, val phone: String)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment