Wear에서 입력 방식 편집기(IME) 만들기

Wear OS by Google에서는 Android 입력 방식 편집기(IME) 프레임워크를 확장하여 음성 이외의 입력 방법을 추가로 지원합니다. IME 프레임워크는 사용자가 키 클릭, 필기 입력, 동작 등의 형태로 텍스트를 입력할 수 있는 가상의 터치 키보드 지원을 제공합니다.

Wear 사용자는 원격 입력에서 제공하는 다양한 입력 옵션 중에서 선택할 수 있습니다. 이러한 옵션은 다음과 같습니다.

  • 음성기록
  • 이모티콘
  • 미리 준비된 답변
  • 스마트 답장
  • 기본 IME

그림 1. 샘플 입력 방법

Wear는 시스템 기본 입력 방식 편집기(IME)와 함께 제공되며, IME API를 이용해 타사 개발자는 Wear용 맞춤형 IME를 만들 수 있습니다. Wear 기기에 사용되는 IME API는 다른 폼 팩터와 동일하지만, 제한된 화면 공간 때문에 사용법이 약간 다릅니다.

이 문서에서는 Wear용 IME를 만드는 데 도움이 될 수 있는 지침을 제공합니다.

Wear용 입력 방법 만들기

Android 플랫폼은 IME를 만들기 위한 표준 프레임워크를 제공합니다. Wear용 IME를 만들려면 제한된 화면 크기에 맞게 IME를 최적화해야 합니다.

Wear용 입력 방법을 만드는 방법을 알아보려면 핸드셋에서 입력 방법 만들기에 관한 가이드를 따르고, 매니페스트 파일에 다음 Google Play 필터를 추가하여 이를 Wear용 IME로 만듭니다.

Wear용 IME 필터

  • API 수준

    Wear용 IME를 개발 중인 경우 Android 6.0(API 레벨 23) 이상의 플랫폼 버전에서만 이 기능이 지원된다는 점을 기억하세요. 음성 외 입력 방법을 지원하는 웨어러블에만 IME를 설치할 수 있도록 하려면 앱의 매니페스트에 다음을 추가하세요.

        <uses-sdk android:minSdkVersion="23" />
        

    이는 앱에 Android 6.0 이상이 필요함을 나타냅니다. 자세한 내용은 API 수준<uses-sdk> 요소에 관한 문서를 참조하세요.

  • 기기 기능 세트

    Wear IME를 지원하지 않는 기기(예: 스마트폰)에서 앱이 필터링되는 방식을 제어하려면 앱의 매니페스트에 다음을 추가하세요.

        <uses-feature android:required="true" android:name="android.hardware.type.watch" />
        

입력 방법 호출

Wear는 설치된 IME 목록에서 여러 IME를 사용 설정할 수 있는 시계 사용자 설정을 제공합니다. 사용자는 IME를 사용 설정한 후 다음에서 호출할 수 있습니다.

  • RemoteInput API를 사용하는 알림 또는 앱
  • EditText 필드가 있는 Wear 앱은 입력란을 터치하면 커서가 나타나며 IME가 자동으로 표시됩니다.

일반적인 IME 고려 사항

Wear용 IME를 구현할 때 고려해야 할 몇 가지 사항이 있습니다.

  • 기본 작업 설정

    RemoteInput 및 Wear 앱에는 단선형 텍스트 입력만 가능합니다. ENTER 키는 항상 sendDefaultEditorAction으로의 호출을 트리거해야 하며 이때 앱은 키보드를 닫고 다음 단계 또는 작업으로 계속 진행합니다.

  • 전체 화면 모드 IME 사용

    Wear의 입력 방법은 화면 대부분을 차지하므로 앱이 거의 보이지 않습니다. 전체 화면 모드를 사용하면 앱 UI와 관계없이 최적의 사용자 환경을 제공할 수 있습니다. 전체 화면 모드에서 ExtractEditText는 편집 중인 텍스트 필드의 미러링된 뷰를 제공하며, 입력 방법 UI의 나머지 부분과 잘 어우러지도록 스타일 지정이 가능합니다. 전체 화면 모드에 관한 자세한 내용은 InputMethodService를 참조하세요.

  • InputType 플래그 처리

    개인정보 보호를 위해 IME에서 최소한 InputType 플래그 TYPE_TEXT_VARIATION_PASSWORD를 처리해야 합니다. IME가 비밀번호 모드인 경우 키보드가 단일 키 누름에 맞게 최적화되어 있는지 확인하세요(자동 맞춤법 검사, 자동 완성 및 동작 입력이 사용 중지됨). 가장 중요한 사항으로, 비밀번호 모드의 키보드는 입력 언어와 상관없이 ASCII 기호를 지원해야 합니다. 자세한 내용은 입력 방법 유형 지정을 참조하세요.

  • 다음 입력 방법으로 전환하기 위한 키 제공

    Android에서는 사용자가 플랫폼에서 지원하는 모든 IME 간에 쉽게 전환할 수 있습니다. IME 구현 시 IME에서 전환 메커니즘을 지원할 수 있도록 부울 supportsSwitchingToNextInputMethod = true를 설정합니다(그러면 앱에서 플랫폼에서 지원하는 다음 IME로 전환할 수 있음). IME 간 전환 구현 방법에 관해 자세히 알아보려면 IME 하위유형 간 전환을 참조하세요.