DOI QR코드

DOI QR Code

An Android BLE Emulator for Developing Wearable Apps

웨어러블 어플리케이션 개발을 위한 안드로이드 BLE 에뮬레이터

  • 문현아 (서강대학교 컴퓨터공학과) ;
  • 박수용 (서강대학교 컴퓨터공학과) ;
  • 최광훈 (전남대학교 전자컴퓨터공학부)
  • Received : 2017.10.18
  • Accepted : 2017.11.30
  • Published : 2018.02.15

Abstract

BLE (Bluetooth Low Energy) has been extensively used for communication between mobile applications and wearable devices in IoT (Internet of Things). In developing Android applications, wearable devices, on which the applications can run, should be available because the existing Android SDK does not support any BLE emulation facility. In this study, we have designed and implemented the first Android BLE emulator. Using this, we are able to develop and test BLE-based Android applications even when without wearable devices. We have also proposed an automatic generation method of Android BLE scenarios based on graph model. We have shown that the method is useful for systematically testing BLE application protocols by running the generated scenarios on the Android BLE emulator.

사물 인터넷 환경에서 모바일 어플리케이션과 웨어러블 기기를 연동하기 위해 BLE (Bluetooth Low Energy) 기반 통신을 많이 활용하고 있다. 특히 BLE 연동 안드로이드 어플리케이션을 개발할 때 개발 환경에서 BLE 에뮬레이션을 지원하지 않아 반드시 웨어러블 기기가 필요한 제약이 있다. 본 연구에서는 처음으로 안드로이드 BLE 에뮬레이터를 설계 및 구현하였다. 이를 활용하여 웨어러블 기기가 없어도 BLE 연동 어플리케이션을 개발할 수 있음을 확인하였다. 그리고 그래프 모델 기반의 안드로이드 BLE 시나리오 자동 생성 방법을 제안하고 자동 생성한 시나리오들을 제안한 안드로이드 BLE 에뮬레이터 상에서 실행하여 어플리케이션의 BLE 응용 프로토콜을 체계적으로 테스트하는데 유용함을 보였다.

Keywords

Acknowledgement

Grant : 블록체인 기반 IoT 신뢰성 제어 및 관리 기술 개발

Supported by : 정보통신기술진흥센터, 한국연구재단

References

  1. Bluetooth Low Energy Specification Adopted Documents [Online]. Available: https://www.bluetooth.org/en-us/specification/adopted-specifications/ (downloaded 2012, Sep. 10)
  2. McGrath, Will; Etemadi, Mozziyar; Roy, Shuvo; Hartmann, Bjoern, Fabryq: Using Phones as Gateways to Prototype Internet of Things Applications Using Web Scripting, EICS '15 Proceedings of the 7th ACM SIGCHI Symposium on Engineering Interactive Computing Systems, pp. 164-173, 2015.
  3. Ju-Hyeong Lee, Moon-Seog Han, "Signal Sensing System Design for Pedestrian Safety using Beacon Service," KIISE Transactions on Computing Practices, Vol. 22, No. 11, pp. 576-582, Nov. 2016. (in Korean) https://doi.org/10.5626/KTCP.2016.22.11.576
  4. Juwon Lee, Woosaeng Kim, "Location-based Mobile IoT Control System by utilizing the BLE Technique," Proc. of the KSCI Winter Conferences, Vol. 23, No. 1, pp. 231-233, Jan. 2015. (in Korean)
  5. Hyungkeun Song, Junho Yoon, Jonghyun Lee, "A Test Practice of Web Server extended Module by mocking external systems," Proc. of the KIISE Fall Conferences, Vol. 38, No. 2(B), pp. 128-131, Nov. 2011. (in Korean)
  6. CMock Mock/stub generator for C [Online]. Available: https://github.com/ThrowTheSwitch/CMock (downloaded 2017, Sep. 6)
  7. Mockito Tasty mocking framework for unit tests in Java [Online]. Available: http://site.mockito.org/ (downloaded 2017, Sep. 10)
  8. Freeman, Steve and Mackinnon, Tim and Pryce, Nat and Walnes, Joe, "jMock: Supporting Responsibility-based Design with Mock Objects," Companion to the 19th Annual ACM SIGPLAN Conference on Object-oriented Programming Systems, Languages, and Applications, pp. 4-5, 2004.
  9. Xiaoyin Wang, "An Empirical Study on the Usage of Mocking Frameworks in Software Testing Shaikh Mostafa," 14th International Conference on Quality Software, pp. 127-132, 2014.
  10. Emulate Android and Bluetooth LE hardware [Online]. Available: http://chrislarson.me/blog/emulate-android-and-bluetooth-le-hardware/(downloaded 2017, Sep. 10)
  11. Hermetic testing for BLE based Android application [Online]. Available: https://stackoverflow.com/questions/38436370/hermatic-testing-for-ble-based-android-application (downloaded 2017, Sep. 10)