라이브 카드

API 수준 XE12에 추가되었습니다.
공개 클래스

LiveCard

이 클래스를 사용하면 활성 카드를 만들어 타임라인에 게시할 수 있습니다.

라이브 카드를 만드는 방법에 대한 자세한 내용은 다음을 참조하세요. 라이브 카드 개발자 가이드

라이브 카드 수명

라이브 카드를 사용하려면 장기간 실행되는 컨텍스트가 있어야 합니다. 백그라운드 Service에서 관리해야 합니다. 그런 다음 서비스가 시작되자마자 또는 서비스 모니터입니다 마찬가지로 카드가 더 이상 관련이 없거나 서비스가 소멸됩니다

라이브 카드를 게시할 때 사용자에게 미치는 영향을 선택할 수 있습니다. 무음으로 게시하는 경우 카드가 아무런 눈에 띄는 영향 없이 타임라인에 삽입됩니다. 카드를 삽입해야 합니다. 또한 라이브 카드가 조회되는 즉시 자동으로 표시되도록 설정할 수도 있습니다. 게시되었습니다. 애플리케이션의 기본 사용자 인터페이스가 라이브 카드일 때 유용한 경우가 많습니다. 활동이 아니라

라이브 카드에 콘텐츠 표시

라이브 카드는 레이아웃 리소스의 콘텐츠를 표시하거나 코드를 렌더링하도록 허용하여 콘텐츠를 표시할 수 있습니다. 바로 놓는 것입니다. 애플리케이션 환경을 기반으로 애플리케이션에 가장 적합한 방법을 카드의 콘텐츠를 얼마나 자주 업데이트해야 하는지, 위젯이나 자유 형식 그래픽이 포함될 수 있습니다.

원격 뷰를 사용하여 레이아웃 확장

애플리케이션이 표준 위젯만 필요로 하고 업데이트 빈도가 매우 낮은 경우 (약 몇 초 또는 더 길어짐) RemoteViews 클래스를 사용하여 카드를 만듭니다. RemoteViews 객체를 사용하면 Glass 타임라인을 사용 설정할 수 있으며, 이 타임라인은 생성한 레이아웃을 확장할 수 있습니다.

     LiveCard liveCard; // initialized elsewhere
     RemoteViews views = new RemoteViews(context.getPackageName(),
             R.layout.my_layout);
     liveCard.setViews(views);
 

RemoteViews를 사용하는 카드가 게시되면 set* 메서드를 호출하는 작업은 명시적으로 호출하지 않는 한 타임라인에 표시되지 않습니다. 라이브 카드에서 다시 setViews를 눌러 강제로 업데이트합니다.

라이브 카드 표면에 직접 그리기

애플리케이션을 더 자주 업데이트하거나 (초당 여러 번) 더 자주 렌더링해야 하는 경우 정교한 그래픽을 구현하는 경우 직접 렌더링을 사용하고 SurfaceHolder.Callback를 카드 표면으로 전달합니다.

     LiveCard liveCard; // initialized elsewhere
     liveCard.setDirectRenderingEnabled(true);
     liveCard.getSurfaceHolder().addCallback(callback);
 

그런 다음 백그라운드 스레드의 표면에 직접 또는 외부 이벤트 (예: 센서 또는 위치 업데이트)를 정의합니다. surfaceCreated 및 카드가 다음과 같을 때 렌더링 로직을 시작하고 중지하는 surfaceDestroyed 메서드 표시됩니다.

노출 영역 홀더의 콜백 메서드는 기본 UI 스레드에서 호출되지 않습니다.

라이브 카드 선택 처리

라이브 카드는 작업 (활동을 시작하는 PendingIntent, 서비스를 하거나 방송을 수행). 이 과정은 사용자가 탭하여 카드를 선택할 때 실행됩니다. 일반적으로 이 작업은 옵션 메뉴를 표시하거나 애플리케이션의 다른 부분으로 사용자를 연결합니다. 적어도 사용자가 직접 선택할 수 있는 타임라인에서 라이브 카드를 삭제할 수 있습니다.

     LiveCard liveCard; // initialized elsewhere
     Intent intent = new Intent(context, MyActivity.class);
     liveCard.setAction(PendingIntent.getActivity(context, 0, intent, 0));
 

작업이 없는 라이브 카드는 표시되지 않습니다.

중첩된 클래스
enum LiveCard.PublishMode 게시 시 사용자에게 카드가 표시되는 방식을 결정합니다.
상수
String EXTRA_FROM_LIVECARD_VOICE Intent가 라이브 카드에서 음성으로 활성화되었음을 나타내는 불리언 추가 항목입니다.
공개 생성자
LiveCard(컨텍스트 컨텍스트, 문자열 태그)
공개 메서드
LiveCard
attach(서비스 서비스)
SurfaceHolder
부울
void
void
LiveCard
LiveCard
setDirectRenderingEnabled(불리언 사용 설정)
LiveCard
setRenderer(GlRenderer 렌더기)
LiveCard
LiveCard
setVoiceActionEnabled(불리언 사용 설정)
void
상속된 메서드

상수

API 수준 XE21에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 정적 최종 문자열 EXTRA_FROM_LIVECARD_VOICE

Intent가 라이브 카드에서 음성으로 활성화되었음을 나타내는 불리언 추가 항목입니다.

상수 값: <ph type="x-smartling-placeholder"></ph> &quot;android.intent.extra.EXTRA_FROM_LIVECARD&quot;

공개 생성자

API 수준 XE16에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 를 통해 개인정보처리방침을 정의할 수 있습니다. LiveCard (컨텍스트 컨텍스트, 문자열 태그)

지정된 태그로 라이브 카드를 만듭니다.

명시적으로 게시되기 전에는 카드가 표시되지 않습니다.

매개변수
context 애플리케이션의 컨텍스트
태그 카드에 대한 null이 아닌 태그입니다. 디버깅을 위한 것입니다

공개 메서드

API 수준 XE16에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 LiveCard 첨부 (서비스 서비스)

배경 Service을 추가하여 이 카드가 게시된 경우, 제공된 서비스는 포그라운드에서 실행되도록 설정됩니다.

이렇게 하면 서비스가 포그라운드에서 자동으로 삭제됩니다. 라이브 카드가 게시 취소되었습니다.

매개변수
서비스 앞부분에서 실행되도록 설정됩니다
반환 값
  • 호출 체이닝을 위한 이 객체
API 수준 XE12에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 SurfaceHolder getSurfaceHolder ()

직접 렌더링이 사용 설정되면 그릴 Surface에 대한 액세스 권한을 부여합니다.

반환된 SurfaceHolder는 관리형 노출 영역입니다 노출 영역의 모양과 유형을 변경하는 메서드는 노옵스(no-ops)입니다.

또한 이 객체에 대한 콜백은 UI 스레드에서 실행되지 않습니다.

API 수준 XE12에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 불리언 를 통해 개인정보처리방침을 정의할 수 있습니다. isPublished ()

카드가 현재 게시되어 있으면 true를 반환합니다.

API 수준 XE16에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 무효 를 통해 개인정보처리방침을 정의할 수 있습니다. 길 안내 ()

타임라인에서 사용자를 이 카드로 안내합니다.

생성 값
IllegalStateException 카드가 게시되지 않은 경우
API 수준 XE12에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 무효 를 통해 개인정보처리방침을 정의할 수 있습니다. 게시 (LiveCard.PublishMode 모드)

이 카드를 타임라인에 게시합니다.

작업에 작업이 있고 직접 렌더링이 사용 설정되어 있거나 설정할 수 있습니다.

매개변수
모드 카드가 사용자에게 표시되는 방식을 결정합니다.
API 수준 XE12에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 LiveCard setAction (PendingIntent 인텐트)

카드가 선택되었을 때 수행되는 작업을 변경합니다.

매개변수
인텐트 카드를 선택하면 실행됩니다.
반환 값
  • 호출 체이닝을 위한 이 객체
API 수준 XE12에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 LiveCard setDirectRenderingEnabled (불리언 사용 설정)

직접 렌더링을 사용 설정합니다.

이 모드에서는 카드 콘텐츠를 Surface로 직접 렌더링해야 합니다.

이 메서드는 카드가 게시되지 않은 경우에만 호출할 수 있으며 예외가 발생합니다.

매개변수
사용 설정 직접 렌더링의 사용 설정 여부
반환 값
  • 호출 체이닝을 위한 이 객체
더보기
API 수준 XE16에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 LiveCard setRenderer (GlRenderer 렌더기)

OpenGL 기반 렌더기를 추가합니다.

렌더기는 직접 요청을 위해 (자동으로) 요청된 표면에 그리는 데 사용됩니다. 있습니다.

반환 값
  • 호출 체이닝을 위한 이 객체
API 수준 XE12에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 LiveCard setViews (RemoteViews 뷰)

이 카드의 UI를 표시하는 데 사용되는 RemoteViews를 변경합니다.

이 메서드는 원격 뷰를 직접 변경한 후에도 호출되어야 합니다. 변경사항이 타임라인에 반영되지 않을 수 있습니다.

직접 렌더링이 사용 설정되어 있으면 이 메서드는 효과가 없습니다.

매개변수
조회수 카드 UI
반환 값
  • 호출 체이닝을 위한 이 객체
API 수준 XE21에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 LiveCard setVoiceActionEnabled (불리언 사용 설정)

카드가 타임라인에 표시되면 음성 작업을 사용 설정합니다.

설정되면 카드가 'ok Glass'를 수신합니다. 타임라인에 표시되고 이 보호 문구를 말할 때 setAction(PendingIntent) 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다. 인텐트가 컨텍스트 기반 음성 메뉴를 구현하는 경우, 이 활동은 자동으로 첫 번째 메뉴 항목에서 열기 (예: 활동 내에서 "ok Glass"라고 말하는 것처럼). 있습니다. 이 기능을 사용하면 라이브 카드에 문맥 음성 메뉴를 구현할 수 있습니다.

매개변수
사용 설정 음성 액션 사용 설정 여부
반환 값
  • 호출 체이닝을 위한 이 객체
API 수준 XE12에 추가되었습니다.

<ph type="x-smartling-placeholder"></ph> 공개 무효 를 통해 개인정보처리방침을 정의할 수 있습니다. 게시 취소 ()

이 카드를 타임라인에서 게시 취소합니다.