Android

안드로이드 Mqtt 통신

로픽 2017. 11. 20. 17:54
300x250

안드로이드 Mqtt 통신

기존에 aws에 구성되어 있는 mqtt broker 서버를 구축하고

서버를 통해서 안드로이드와 라즈베리파이, 아두이노 사이의 통신이 가능합니다.

그 중에서 안드로이드에서 mqtt 통신을 하는 코드입니다.


github를 통해서 얻은 자바 코드를 안드로이드에 적용하여 만들었습니다.


 ** 먼저 앱 libs에 paho-mqtt-client.jar 파일을 넣습니다.( 구글을 통해 찾으면 jar파일을 찾을 수 있습니다.)


 ** mqtt 관련 변수 선언



브로커아이피의 경우 tcp://IP:포트번호  이렇게 설정합니다.


그리고 mqttclient를 선언해줍니다.



** 통신 스레드를 만들어 줍니다.


안드로이드의 경우 통신시 별도의 스레드를 생성해야 하므로 통신용 스레드를 생성합니다.




위와 같이 Mqtt클라이언트에서 브로커아이피를 넣고, 아이디생성 메소드, 메모리 지속성 객체를 넣고 connect를 통해서 연결합니다.


publishMessage 메소드 경우 설정한 토픽과 메시지 값을 가져와 getTopic 메소드를 통해서 토픽을 설정하고


mqttMessage를 통해서 메시지를 전송합니다.



** 그리고 스레드를 작동시키면 정상적으로 mqtt클라이언트 통신 스레드가 돌아갑니다.




반응형