Android 용 iBeacon SDK

아이 비콘 SDK

건물 내부에서도 위치에 따른 사용자 상호 작용을 가능하게하는 비콘의 가능한 사용 사례 및 비즈니스 모델이 현재 화제가되고 있습니다.. 매장 내 광고 및 할인, 모바일 결제, 항해, 대중 교통, 공공 건물 및 박물관의 현지화와 홈 오토메이션은 빙산의 일각 일뿐입니다. 물론 전 방향 데이터 수집 – 이제 새롭고 정확한 위치 정보. iBeacon 기술에 대해 더 배우기 전에, 우리는 또한 기사에서 iBeacon SDK를 언급 할 것입니다.

과대 광고는 무엇입니까?

Bluetooth 저에너지를 기반으로 Apple에서 개발 한 iBeacon 프로토콜은 다양한 장치에서 지원됩니다.. 이 기사는 iBeacons 및 Bluetooth Low Energy를 설명하고 위치 의존적 쇼핑 목록을위한 Android 앱 개발 예제를 사용하여 iBeacons와 앱의 위치 의존적 상호 작용을 보여줍니다.. 구현은 MOKOSmart iBeacon SDK를 기반으로합니다..

아이 비콘, 블루투스 4.0, BECAME, 똑똑한. ot?

iBeacon의 기본 기술은 Bluetooth입니다. 블루투스 저에너지 (BECAME), 블루투스 스마트 마케팅 라벨이라고도합니다., 버전에 포함되었습니다 4.0 블루투스 표준. BLE는 이전 버전의 Bluetooth Classic과 호환되지 않습니다. 블루투스 4.0 표준 호환 장치가 하나 또는 두 변형을 구현해야 함을 지정합니다., 즉. 저에너지 또는 클래식.

BLE는 iPhone과 같은 거의 모든 최신 스마트 폰에서 구현됩니다. 4+ 그리고 삼성 갤럭시 3+. iPhone은 iBeacon 신호 수신기와 – 안드로이드와 달리 – 로 봉홧불 그 자체. 안드로이드는 API 버전의 BLE 드라이버를 포함 18, 즉. 기계적 인조 인간 4.3. 부수적으로, 현재 컴퓨터도 BLE 가능. Windows에서, 하나, 드라이버는 Windows에서만 제공됩니다 8 2011 년 중반부터, BLE는 Apple 컴퓨터에서 사용 가능합니다.

BLE는 심박수 모니터 및 장난감 헬리콥터와 같은 다양한 주변 장치를 계속 지원합니다., 온도계, 피트니스 장비 및 칫솔, 예, 칫솔과 운동화.

iBeacon과 관련하여 흥미로운 것은 센서입니다

Texas Instruments의 태그, iBeacon의 기능 외에도 온도를 측정 할 수 있습니다., 습기, 압력, 그리고 가속. 센서 태그에는 자이로 스코프도 함께 제공됩니다, 자력계, 두 개의 하드웨어 버튼. 발표자의 손의 습기와 온도를 전송하고 표시하면서 프리젠 테이션을 원격으로 제어 할 수있는 이상적인 장치. 다음 샌드 핏 프로젝트는 무대 공포증이 될 것 같아요. 공식 Bluetooth 웹 사이트에서 자세한 장치 목록을 찾을 수 있습니다..

개트 준비

장치가 데이터를 교환하기 위해 사용하는 통신 모델을 GATT라고합니다. – 일반 속성 프로파일. GATT는 클라이언트와 서버의 역할을 정의합니다. 클라이언트는 서비스를 통해 서버에서 데이터를 요청합니다. 서비스는 여러 원자 키 / 값 쌍을 그룹화합니다, 이것은 특성이라고합니다. 서비스와 특성은 모두 UUID를 통해 식별되며 추가 설명도 포함 할 수 있습니다.. 서비스 및 해당 특성은 프로파일 형식으로 카탈로그됩니다; 이 사양은 건강 관리 분야에서 전체 범위를 정의합니다., 스포츠 및 피트니스 – 우리의 경우 흥미로운 – 근접 감지. 개별 프로파일과 서비스 및 특성은 Bluetooth 개발자 포털의 GATT 사양에 있습니다..

가트 ibeacon SDK

표지에 도착

그래서 iBeacons는 무엇입니까? iBeacon은 매우 간단한 기술입니다 (응용 프로그램과의 위치 의존적 상호 작용을 가능하게하는 Apple의 상표. 비콘은 BLE 호환 장치로 수신되고 설치된 응용 프로그램에서 처리 할 수있는 신호를 보냅니다. 신호에는 비콘 식별 및 수신 강도가 포함됩니다.. iBeacon 자체는, 따라서 – 언론의 부정확 한 진술과 달리 – 콘텐츠를 제공하거나 고객 행동을 추적 할 수 없음. 이것은 수신 응용 프로그램의 책임이며 따라서 개발자.

아이 비콘 IRL

독일에서 더 큰 iBeacon 배포는 오랜 시간이 걸릴 것입니다., 그러나 미국과 네덜란드에서 몇 가지 예가 있습니다.. 예를 들어, 메이저 리그 야구 장비 28 iBeacon이있는 경기장, 다른 것들 사이, MLB 앱에서 체크인 “야구장에서”.

앤트워프의 Rubens House에서 쇼케이스가 구현되었습니다., X-ray 그림 및 지오 캐싱 게임과 같은 배경 정보를 방문자에게 제공합니다..

크기 측면에서 가장 좋은 예는 Apple 자체에서 비롯된 것입니다. 위에 250 Apple Stores에 iBeacon이 장착되었습니다. Apple Store 앱과 함께, 상점에있는 구매자에게 위치 종속 메시지가 전송됩니다.. 하나, 가능한 상호 작용은 현재 상당히 제한적인 것으로 보입니다: 첫 리뷰는 서로 다른 두 가지만보고합니다 (그리고 매우 일반적인) 그들이 받았을 메시지. 근처의 개별 제품에 대한 특별 제안 또는 특정 정보가 제공되지 않았습니다.

기능성

iBeacon SDK는 별도의 BLE 프로파일을 사용하지 않습니다, 오히려 블루투스 광고 패키지, 즉. 방송 패키지, 블루투스 장치를 발견하는 데 사용되는. 패키지의 정확한 구조에 관심이 있다면, 당신은 이것을 읽을 수 있습니다, 예를 들어, Adam Warski의 블로그에서.

이러한 패키지는 GATT를 통해 구성 할 수있는 일정한 간격으로 전송됩니다.. 그것은 비콘의 UUID를 포함합니다, 일반적으로 제조업체에서 사전 구성합니다. 따라서 모든 MOKOSmart 비콘은 동일한 UUID를 보냅니다.. 주요 및 부 ID는 또한 개별 비콘을 식별하는 데 사용됩니다. 주요 ID는, 예를 들어, 프랜차이즈 체인점 또는 상점의 지점, 부 ID는 단일 선반 또는 테이블.

더욱이, 신호 강도는 광고 패키지에 포함됩니다, 비콘에서 수신기의 거리를 측정하는 데 사용할 수 있습니다. 하나, 여기서 높은 정확도를 기대할 수 없습니다, 가구나 사람과 같은 공간 장애로 인해 신호가 차단 될 수 있기 때문에.

IBeacon SDK는이 정보와 앱의 상호 작용을위한 두 가지 개념을 제공합니다: 거리 및 지역 모니터링. 범위를 정할 때, 비콘까지의 거리가 결정됩니다. 위에서 언급 한 부정확성으로 인해, 이것은 단지 세 단계로 이루어집니다. “즉시” 몇 센티미터의 거리입니다, “근처에” 몇 미터이고 “멀리” 10 미터가 넘는 거리입니다. 수신 앱이 활성화 된 경우에만 범위를 지정할 수 있습니다..

지역 모니터링에는 필요하지 않습니다. 이 모드에서, 하나 이상의 비콘으로 정의 된 영역에 들어가거나 나갈 때 비활성 앱에 알림을 보낼 수도 있습니다.. 최근에는이 기술이 광고 및 소매업에 매력적인 이유가 분명 해지고 있습니다.. 게다가, 대부분의 비콘, 현지 상황에 따라 배터리 수명을 최적화하기 위해 전송 강도와 간격을 구성 할 수 있습니다..

“대부분의 비콘” 시장에 iBeacon 제조업체가 둘 이상 있음을 나타냅니다.. 사실로, 꽤 많이 있습니다: MOKOSmart, Kontakt.io, 빙, 고맙습니다, 짐벌. 하드웨어 외에, 이 제조업체는 또한 비콘 관리를위한 iBeacon SDK 서비스 및 클라우드 솔루션을 제공합니다. 우리 애호가들은 Raspberry Pi 또는 Arduino를 사용하여 적은 노력으로 iBeacon 송신기를 스스로 설정할 수 있습니다.

깜박이는 목록

구현 예에 대해 다음 상황을 가정 해 봅시다.: 개발자는 토요일 아침에 슈퍼마켓에 있습니다.. 배고픈 아이들은 집에서 기다리고 오후에는 학교에서 빵을 판매합니다. 그래야만 주말이 정말로 시작됩니다. 서둘러야 할 좋은 이유. 운수 나쁘게, 쇼핑 목록이 길고 슈퍼마켓의 레이아웃에 적합하지 않습니다.. 슈퍼마켓에 다른 부서의 iBeacon이 장착 된 경우, 쇼핑 목록 앱은 적절한 항목을 강조 표시하고 (물론 완전히 허구) 개발자.

앱이 블루투스와 통신해야하므로, 먼저 Android 매니페스트에 BLUETOOTH 및 BLUETOOTH_ADMIN 인증이 필요합니다.. Estimote API가 제공하는 서비스를 사용하여 iBeacon과 상호 작용할 수 있도록, 또한이를 알려서 다운로드 한 API를 libs / directory에 배치해야합니다..

우리의 프로토 타입은 간단한, 미리 채워진 목록 및 미리 정의 된 영역, 즉. 우리 슈퍼마켓의 부서. 목록 항목은 자신이 할당 된 지역을 알고 있습니다. 우리의 예에서, 각 지역에 하나의 비콘 만 할당합니다. 비콘 목록을 한 지역으로 결합하는 것도 가능합니다. 주요 활동은 현재 지역을 인식하고이 정보를 어댑터에 전달합니다., 목록 항목을 강조 표시하는 책임. 게다가, 추가 하드웨어없이 UI를 테스트 할 수 있도록 비콘없이 활성 영역을 선택하는 옵션이 추가되었습니다..

활동의 작성 방법에서, 앱을 위해 MOKOSmart에서 Beacon Manager를 인스턴스화합니다. 현재 지역을 어댑터에 알리고 비콘 스캔 간격을 정의하여 지역 모니터링을위한 리스너를 사용합니다.. 예에서, 1 초를 스캔 한 다음 정의해야합니다 250 ms는 기다려야한다. 이 값은 테스트에서 빠른 결과를 얻기 위해 상대적으로 적극적으로 선택됩니다.. 실제로, 응답 성 대 어려운 균형. 배터리 수명을 충족 시키려면. 이 프로토 타입에서, 우리는 또한 더미 값으로 쇼핑 목록을 채 웁니다. 에 모니터링을 시작하거나 중지합니다 () 시작 또는 중지 () 주요 활동의 방법.

ItemList

어댑터는 android.widget.Array 어댑터의 파생으로 구현되며 get View를 대체합니다. () 방법, 표시 될 각 줄마다 호출됩니다.. 항목의 제목은 레이아웃에 정의 된 검토의 첫 번째 줄에 작성됩니다, 두 번째로 할당 된 지역.

Listing에서 볼 수 있듯이 1, 입력 된 지역은 입력 된 지역의 어댑터로 전송됩니다. () MonitoringListener의 콜백, BeaconManager에 할당 된: 품목 목록 어댑터. 분리 (부위). getView를 호출 할 때 (), 이것은 행의 항목 영역이 현재 영역과 일치하는지 확인합니다.. 만일이 경우라면, 그것은 라인의 배경을 채색합니다. 추가로 또는 대안으로, 목록을 정렬하여 처음에 현재 영역에 대한 항목을 넣을 수도 있습니다..

응용 프로그램의 코드가 명확합니다; iBeacon 신호를 수신하여 앱에서 처리하는 데 많은 노력이 들지 않습니다.. iBeacon 개념 범위 및 모니터링은 MOKOSmart iBeacon SDK에 매핑되어 직관적으로 사용할 수 있습니다. 앱의 전체 소스 코드는 GitHub에서 찾을 수 있습니다.

결론과 전망

MOKOSmart iBeacon SDK를 사용하여 iBeacon과 상호 작용하는 것이 쉽다는 것을 알았습니다. 따라서 구현 기술에 큰 장애물이 될 것으로 기대하지 않습니다., 오히려 비콘의 배치와 전송 전력의 조정에서. 이러한 매개 변수는 위치가 변경 될 때 응용 프로그램의 응답성에 직접적인 영향을 미칩니다. 어쨌든, 균형이 어려워 야한다.

특히 흥미로운, 예 :. 비. 가정 자동화 분야에서, iBeacon과 센서의 조합을 고려합니다, 위에서 언급 한 Texas Instruments의 센서 태그에서와 같이. Estimote는 Estimote Stickers을 사용하여 시장에 모션 및 온도 센서가 장착 된 모바일 비콘을 출시 할 예정입니다.. 첫 번째 개발자 미리보기는 10 월 말에 제공되어야합니다. 2014, 그러나 키트가 끝날 무렵에 배송되지 않았습니다. 2014.

이 기술을 통해 "실내 내비게이션"애플리케이션 영역을 강력하게 매핑 할 수 있는지 여부는 여전히 남아 있습니다.. 간섭 요인에 대한 Bluetooth 신호의 민감성으로 인해, 해당 지역의 iBeacon 신호를 사용한 강력한 조명 및 실내 평면도와 삼각 측량을 사용한 위치 계산이 필요합니다.. MOKOSmart에서 적절한 솔루션을 제공합니다 (실내 네비게이션 iBeacon SDK) LabWerk와 같은 다양한 다른 제조업체, 그러나 저자는 실제 보고서를 알지 못합니다.

iBeacon과 상호 작용하는 앱 개발, 보안 및 데이터 보호 측면도 고려해야합니다. 신호의 단순성으로 인해, iBeacon은 스푸핑하기 쉽습니다, 개발 중에 잊어서는 안되는. 사용자 행동을 기반으로 수집 할 수있는 현재 위치 및 이동 프로파일과 같은 데이터도 보호해야 할 필요성이 높습니다..

MOKOSMART iBeacon SDK

ibeacon SDK 솔루션