Data Layer API 개요

<ph type="x-smartling-placeholder">
</ph> 클라우드 기반 노드가 Google 소유 서버에서 제어됨
그림 1. 핸드헬드 및 플래티넘이 있는 노드 네트워크의 샘플 Wear OS 기기

Google Play 서비스의 일부인 Wearable Data Layer API는 웨어러블 장치 (예: 스마트시계)와 통신 채널을 통해 연결된 휴대기기 (일반적으로 스마트폰)입니다. 데이터를 동기화하고 장치 간에 데이터를 전송할 수 없습니다.

참고: 이 API는 Wear OS 시계 및 페어링된 Android 기기 iOS 휴대전화와 페어링된 Wear OS 시계의 경우 앱에서 다음 작업을 할 수 있습니다. 다른 클라우드 기반 API를 쿼리할 수 있습니다. 자세히 알아보기 다른 API에 대한 자세한 내용은 네트워크 액세스 및 동기화 사용 Wear OS

주의: 데이터 영역 API는 웨어러블 기기와 통신하는데 이 API만이 이 장치 간의 통신을 설정하는 데 사용됩니다. 예를 들어 하위 수준 소켓을 열어 통신 채널을 만듭니다.

일반적인 사용 사례

Data Layer API는 특히 피트니스 및 미디어 사용 사례에 유용합니다.

피트니스 앱

Wear OS 앱에서 모바일 앱 피트니스 앱으로 운동 데이터를 전송할 때 자주 해야 하는 작업 시계에서 캡처한 운동 데이터를 모바일 앱이나 건강 서비스에 기록 Connect를 클릭합니다. Data Layer API를 사용하여 데이터를 전송하는 경우 Wear OS 앱에서 모바일 앱으로 운동 데이터를 전송하는 메시지 클라이언트 헬스 커넥트에 쓰기 위한 요청을 받습니다.

집에서 운동하는 동안 휴대기기로 실시간 데이터 스트리밍

일반적인 홈 운동 시나리오는 Wear OS에서 심박수 데이터를 스트리밍하는 경우입니다. 사용자에게 최신 심박수 정보를 보여줌 모바일 기기 화면에 표시됩니다. 이 데이터를 스트리밍하려면 채널 클라이언트를 사용하세요.

미디어 앱

미디어 플레이어에서 일시중지/다시 시작/시작/종료 작업을 통해 메시지 클라이언트를 사용하세요.

커뮤니케이션 옵션

데이터는 다음 중 한 가지 방법으로 전송됩니다.

  1. 직접: 기기 간에 블루투스 연결이 설정된 경우 Wear OS 기기 및 다른 기기.
  2. LTE 또는 Wi-Fi와 같은 사용 가능한 네트워크를 통해 네트워크 노드를 중개자로 사용하는 것을 의미합니다.

모든 데이터 영역 클라이언트는 블루투스를 사용하거나 클라우드를 다운받을 수도 있습니다. 데이터가 데이터 영역을 통해 전송되는 데이터에 Google 소유 서버를 사용하는 경우도 있습니다.

블루투스

블루투스를 통해 기기가 연결되면 데이터 영역에서 이 연결을 사용합니다. 기기 간에는 표준 프로토콜을 사용하여 하나의 암호화된 채널이 있으며 Google Play 서비스에서 관리하는 블루투스 암호화입니다.

Google Cloud

블루투스를 사용할 수 없는 경우 데이터가 Google Cloud를 통해 자동으로 라우팅됩니다. Google Cloud를 통해 전송되는 모든 데이터에는 엔드 투 엔드 암호화가 적용됩니다.

통신 보안

Google Play 서비스에서는 보안을 강화하기 위해 다음과 같은 제한사항을 적용합니다. Wear OS 기기에 설치된 앱과 동일한 앱 간의 통신 근처 휴대용 기기에 설치되어 있어야 합니다.

  • 패키지 이름은 모든 기기에서 일치해야 합니다.
  • 패키지 서명은 모든 기기에서 일치해야 합니다.

연결 유형과 관계없이 다른 앱은 데이터에 액세스할 수 없습니다.

설정

Wearable Data Layer API에는 다음과 같은 종속 항목이 있습니다.

Wear 모듈의 build.gradle 파일에 다음 종속 항목을 포함합니다.

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:18.2.0")
}

초기 페어링 과정 지원

Horologist는 플랫폼 API를 기반으로 여러 도우미 라이브러리를 제공합니다. 여기에는 데이터와 레이어의 연결을 설정하는 데 도움이 되는 데이터 영역 라이브러리가 포함되어 있습니다. Wear OS 기기입니다. 또한 편리한 API를 제공하므로 다음 작업을 수행합니다.

  • 다른 기기에 앱을 설치합니다.
  • 다른 기기에서 앱을 실행합니다.
  • 다른 기기에서 특정 활동을 실행합니다.
  • 호환 앱을 실행합니다.

데이터 영역 액세스

Data Layer API를 호출하려면 Wearable 클래스를 사용하여 다양한 클라이언트 클래스(예: DataClient, MessageClient)를 사용합니다.

자세한 내용은 DataLayer 샘플을 참고하세요.

최소 클라이언트 사용

클라이언트를 만들려면 다음 예시 코드를 참고하세요.

Kotlin

val dataClient: DataClient = Wearable.getDataClient(context)

자바

DataClient dataClient = Wearable.getDataClient(context);

유효한 Android 컨텍스트라면 무엇이든 괜찮습니다. Google Maps Platform 내에서 API를 사용하는 경우 Activity의 범위를 설정하려면 WearablegetDataClient() 메서드를 사용합니다. 클래스에 대해 자세히 알아보세요. 이를 통해 특정 상호작용이 알림을 받을 수 있습니다. Play 서비스

기본적으로 리스너 콜백은 앱의 기본 UI 스레드에서 이루어집니다. 갖기 위해 WearableOptions 객체를 사용하여 맞춤 Looper를 지정합니다.

Kotlin

runBlocking {
    Wearable.getDataClient(context, options)
}

자바

WearableOptions options = new WearableOptions.Builder().setLooper(myLooper).build();
DataClient dataClient = Wearable.getDataClient(context, options);

자세한 내용은 WearableOptions.Builder 참조를 확인하세요.

필요에 따라 클라이언트 인스턴스 다시 만들기

DataClientMessageClient와 같은 Wearable API 클라이언트는 만들 수 있습니다 따라서 클라이언트를 고수하는 대신 다음과 같이 다시 만듭니다. 앱에 적합한 스타일을 사용하여 리소스를 요청할 수도 있습니다.

등록된 리스너 집합과 같은 클라이언트 상태는 모든 앱이 업데이트되는 동안 Google Play 서비스가 업데이트되어도 있습니다