Android 향상 의 BLE 개발 Android 모 바 일 검색 iBeacon 기지 국

2066 단어 Android
이 글 은 안 드 로 이 드 폰 과 BLE 단말기 간 의 통신 을 다 루 고 있 으 며,가장 흔히 볼 수 있 는 BLE 단말 기 는 애플 이 주창 하 는 아이 비 콘 기지 국 이 어야 한다.iBeacon 기술 은 BLE 를 바탕 으로 방송 을 통 해 대외 적 으로 메 시 지 를 보 내 는 것 이 특징 이다.핸드폰 은 iBeacon 기지 국 에 연결 하지 않 아 도 정 보 를 얻 을 수 있다.현 재 는 주로 실내 포 지 셔 닝 과 마 케 팅 정 보 를 전송 하 는 데 사용 되 고 BLE 에서 보 내 는 방송 에 특정한 정 보 를 가 져 와 iBeacon 으로 인식 된다.iOS 에서 iBeacon 을 사용 하려 면 passbook 을 통 해 iBeacon 의 UUID 와 해당 하 는 텍스트 프로필 을 등록 해 야 하 며,Android 에 서 는 passbook 과 같은 시스템 급 배경 블 루 투 스 검색 서비스 가 없습니다.이러한 서 비 스 는 개발 자가 직접 해결 해 야 합 니 다.이번 에는 안 드 로 이 드 모 바 일 검색 기지 국 과 아이 비 콘 기지 국 인 자 를 표시 합 니 다.
iBeacon 기지 국 을 검색 하 는 것 은 어렵 지 않 습 니 다.핵심 은 BluetoothAdapter.LeScanCallback()의 onLeScan(final BluetoothDevice device,int rssi,byte[]scanRecord)입 니 다.iBeacon 을 식별 하 는 정 보 는 scanRecord 배열 에 있 습 니 다.대로https://github.com/RadiusNetworks/android-ibeacon-service/blob/master/src/main/java/com/radiusnetworks/ibeacon/IBeacon.java,iBeacon 이 아래 에 있 는 빨 간 글 자 를 식별 할 지 여부:
// AirLocate:
// 02 01 1a 1a ff 4c 00 02 15  # Apple's fixed iBeacon advertising prefix
// e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 # iBeacon profile uuid
// 00 00 # major
// 00 00 # minor
// c5 # The 2's complement of the calibrated Tx Power
아울러 아이 비 콘 의 UUID 와 BLE 의 Service,Characteristic,Descriptor 의 UUID 는 상 관 없 으 며,아이 비 콘 의 UUID 는 라디오 에서 나 오 는 것 으로 애플 이 스스로 정의 하 는 표준 이 며,Service,Characteristic,Descriptor 는 BLE 단말 기 를 연결 해 야 받 을 수 있 는 BLE 표준 임 을 유의 해 야 한다.
본 고의 코드 운행 결 과 는 다음 과 같다.끊임없이 변화 하 는 rssi 는 거리 판단 에 사용 할 수 있 지만 이 모듈 의 txPower 는 정확 하지 않 기 때문에 거리 측정 은 의미 가 없다.

본 고의 코드 는 이것 을 눌 렀 다본 사이트 다운로드코드 는 붙 이지 않 았 고 핵심 코드 는 이것 을 눌 렀 다본 사이트 다운로드
관심 있 는 친 구 는 이 사이트 코드 를 다운로드 하여 실행 효 과 를 테스트 할 수 있 습 니 다.안 드 로 이 드 프로 그래 밍 을 배 우 는 데 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기