오랫동안 생각만 하다가 말았던 일을 시작했습니다. 아이폰 앱을 만들어 보는 일이였는데요. 뭐 대박앱을 만들어 돈을 벌어보겠단것보단 마케팅용? 정도면 되겠다 싶은 정도만 만들어보자 라고 시작했습니다.
만들어 보려 하는 앱은 애쉴론의 스마트서버와 통신하는 앱입니다. 여러용도의 앱이 존재할 수 있을것 같습니다. 가로등 어플리케이션에서는 현재 상태값들을 볼 수 있게 하거나 설치시 전력선 통신 상태를 쉽게 확인한다든지 하는 앱이면 뭐 대단한 앱이 아니더라도 도움이 되지 않을까 싶습니다.
사실 IOS를 개발해서 실제 디바이스에서 테스트 하거나 다운받으려고 등록하려면 개발자등록을 해야합니다. 이게 공짜가 아니죠. 연간 $99을 지불해야 합니다. 뭐 취미수준 혹은 끝까지 만들어 볼지 말지도 모르는 제게는 좀 부담이 되어 미루고 미루다가 우연하게 아이폰을 얻게 되었습니다. 그래서 탈옥을 단행하고 개발자 등록없이 실제 기기에서 테스트 할 수 있게 되었습니다. 물론 시뮬레이터가 있습니다. 개발하는데만은 개발자 등록이 전혀 필요없을 수 있습니다.
근데 내가 만든걸 실제 기기에서 돌아가는걸 확인하고 싶은 맘에 아이폰이 준비되고서야 시작하게 되었습니다.
제일 먼저 고려해야 할것이 어떻게 IOS에서 SOAP통신을 하느냐는 것입니다.
아래 사이트의 글을 참조했습니다.
Consuming SOAP web services from iOS (Objective-C)
통신을 위해 NSURL delegate method를 사용해서 스마트서버와 통신을 시도합니다. 이때 XML 패킷을 만들어 줘야 합니다. 항상 스마트서버 프로그래밍을 할때 사용하던 Charles proxy debugger 를 써서 패킷을 그대로 만들어 줬습니다.
그리고 스마트서버가 응답하는 XML패킷을 파싱하는 역할이 필요합니다. 이를 위해 NSXMLParser delegate method를 사용합니다.
물론 검색해보면 XML을 파싱할 수 있는 오픈 소스들이 있습니다만 이를 시작할때만 해도 몰랐습니다. ^^ 하지만 속도라든지 여러가지 측면에서 가장 우수한 평가를 받는데 기본 라이브러리인 NSXMLParser를 사용하는게 낫겠다 싶었습니다.
위 사이트에서 받을 수 있는 기본 소스를 이용해서 스마트서버의 특정 데이타포인트를 읽고 쓰는 프로그램을 만들어 봤습니다. 이를 기반으로 여러가지 앱이 가능할 것 같습니다.
아래는 동작 동영상 입니다.
Soap test on iphone with SmartServer from Sean Cho on Vimeo.
'Network Tech > 소프트웨어' 카테고리의 다른 글
애쉴론 LonScanner 소프트웨어 라이센스 신청방법 (0) | 2016.05.11 |
---|---|
굳나잇! Cortana / SmartServer (0) | 2016.02.19 |
Neuron C 시리얼 프로그래밍 [FT5000, PL3120, PL3150] (0) | 2014.07.22 |
애쉴론 소프트웨어 운영체제 지원 리스트 (0) | 2014.05.09 |
PL칩 패리티비트 사용방법 - 시리얼 통신 (0) | 2014.04.02 |