저번 글입니다.
안드로이드로 아두이와 서버통신 제어하기(WIFI D1 R1, ESP8266, 모터제어, JSON)
저번에는 arduino nano33 iot를 이용해서 LED를 제어했었습니다. https://pinlib.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EC%95%B1%EC%9D%84-%ED%86%B5%ED%95%B4-%EC%95%84%EB%91%90%EC%9D%B4%EB%85%B8-led-%EC%A0%9C%EC%96%B4%E
pinlib.tistory.com
이번에는 전에 말씀드린대로 안드로이드 앱 구현부분에 대해 설명드리겠습니다.
전에 어쩌다보니 안드로이드 앱을 작성하는 방법을 올린적이 있는데 거기에 있는 부분을 제외하고 설명해드리겠습니다.
안드로이드 앱을 통해 아두이노 led 제어하기
처음으로 실습관련 이야기를 작성하게 되는 거 같습니다. 현재 전 직장 동료인 친구와 side project 하나를 준비중에 있습니다. 그런데 제가 아두이노를 손을 안댄지도 오래되었고 살짝 야매로 배
pinlib.tistory.com
인스타그램과 같은 SNS게시물을 보면 화면을 아래로 drag하면 화면이 갱신이 되는데
이를 구현하는 방법을 알려드리겠습니다.
우선 build.gradle의 module수준에서
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
를 추가해줍니다.
이후에는 사용을 원하는 activity에서
binding.refreshLayout.setOnRefreshListener {
val call = SmartFarmObject.getRetrofitSmartFarmService.getText()
call.enqueue(object : Callback<ViewModel> {
override fun onResponse(call: Call<ViewModel>, response: Response<ViewModel>) {
if (response.isSuccessful) {
val text = response.body()
Log.d("TAG", "Sensor: ${text?.sensor}, Value: ${text?.value}")
//Log.d("please",text.toString())
// handle the result here
} else {
Log.d("read","read false")
}
}
override fun onFailure(call: Call<ViewModel>, t: Throwable) {
// handle the error here
Log.e("TAG", "Error: ${t.message}")
}
})
binding.refreshLayout.isRefreshing=false
}
}
이렇게 사용을 하면 됩니다.
해당 코드의 경우 json data값을 sever로 부터 받아오는 코드입니다.
다음 글은 아마도 java 개념정리? 올릴거 같네요.
수고하세요
'안드로이드 앱개발' 카테고리의 다른 글
Retrofit2를 이용한 안드로이드와 스프링 서버 통신(안드로이드편)(안드로이드 서버통신) (3) | 2024.10.03 |
---|---|
Kotlin Coruoutins과 비동기에 관하여 (1) | 2024.10.02 |
Android Room 사용하기 (4) | 2024.09.28 |
Jetpack Compose에서 UI 화면 구성과 전환(scaffold, box, navHost) (0) | 2024.09.26 |
Jetpack Compose와 Hilt 이해와 사용 (0) | 2024.09.25 |