본문 바로가기

안드로이드 앱개발

안드로이드로 아두이와 서버통신 제어하기(WIFI D1 R1, ESP8266, 모터제어, JSON)(2)

반응형

저번 글입니다.

https://pinlib.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C%EB%A1%9C-%EC%95%84%EB%91%90%EC%9D%B4%EC%99%80-%EC%84%9C%EB%B2%84%ED%86%B5%EC%8B%A0-%EC%A0%9C%EC%96%B4%ED%95%98%EA%B8%B0WIFI-D1-R1-ESP8266-%EB%AA%A8%ED%84%B0%EC%A0%9C%EC%96%B4-JSON

 

안드로이드로 아두이와 서버통신 제어하기(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

이번에는 전에 말씀드린대로 안드로이드 앱 구현부분에 대해 설명드리겠습니다.

 

전에 어쩌다보니 안드로이드 앱을 작성하는 방법을 올린적이 있는데 거기에 있는 부분을 제외하고 설명해드리겠습니다.

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%ED%95%98%EA%B8%B0

 

안드로이드 앱을 통해 아두이노 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 개념정리? 올릴거 같네요. 

수고하세요

반응형