시작하기

이 문서에서는 Android에서 Nearby Messages API를 사용하여 개발을 시작하는 방법을 설명합니다. Nearby Messages API는 Google Play 서비스의 일부입니다.

1단계: Google Play 서비스 사용하기

Nearby Messages API는 Google Play 서비스 7.8.0 이상을 실행하는 Android 기기에서 사용할 수 있습니다. Android 2.3 이상을 실행하며 Google Play 스토어 앱이 있는 기기는 자동으로 Google Play 서비스 업데이트를 수신합니다. 기기에 설치된 Google Play 서비스의 버전을 확인하려면 설정 > 앱 > Google Play 서비스로 이동합니다.

개발 호스트에 Google Play 서비스용 최신 클라이언트 라이브러리가 있는지 확인합니다.

  1. Android SDK Manager를 엽니다.
  2. Appearance & Behavior > System Settings > Android SDK > SDK Tools에서 다음 패키지가 설치되어 있는지 확인합니다.

    • Google Play 서비스
    • Google 저장소

2단계: Google 계정 만들기

Nearby Messages API를 사용하려면 Google 계정이 필요합니다. 이렇게 하면 개발자가 다음 단계에서 Nearby API를 사용 설정할 수 있습니다 (사용자에게 Google 계정이 없어도 됨). 계정이 있는 경우 별도의 조치를 취할 필요가 없습니다. 테스트용으로 별도의 Google 계정이 필요할 수도 있습니다.

3단계: API 키 가져오기

Android용 Google Nearby Messages API를 사용 설정하고 API 키를 가져오려면 다음 단계를 따르세요.

  1. Google Developers Console로 이동합니다.
  2. 애플리케이션을 등록할 프로젝트를 만들거나 선택합니다.
  3. 계속을 클릭하여 API를 사용 설정합니다.
  4. 사용자 인증 정보 페이지에서 새 Android 키를 만들고 API 사용자 인증 정보를 설정합니다.
    참고: 기존 Android 키가 있으면 이 키를 사용할 수 있습니다.
  5. 표시되는 대화상자에서 앱의 SHA-1 디지털 지문과 패키지 이름을 입력합니다. 예:
    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    com.example.android.nearbyexample
  6. 프로젝트의 API 키 목록에 새 Android API 키가 나타납니다. API 키는 다음과 같은 문자열입니다.
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

인증서의 SHA1 디지털 지문을 가져옵니다.

Android 앱의 새 API 키를 만들려면 APK에 서명하는 데 사용하는 인증서의 SHA1 디지털 지문이 필요합니다. 동일한 프로젝트의 API 키로 서명된 앱 간에만 메시지를 교환할 수 있습니다.

지문을 얻는 방법은 다음과 같습니다.

  1. 키 저장소의 위치를 찾습니다.
  2. 터미널에서 JDK의 keytool 유틸리티를 실행합니다. 예를 들어 `debug` 키 저장소를 사용하는 경우:
  3. $ keytool -alias \
    androiddebugkey -keystore \
    ~/.android/debug.keystore -list -v
    

    참고: 디버그 키 저장소의 비밀번호는 android입니다. Mac OS 및 Linux에서 디버그 키 저장소는 일반적으로 ~/.android/debug.keystore에 있습니다. Windows의 경우 일반적으로 %USERPROFILE%\.android\debug.keystore에 있습니다.

  4. keytool 명령어의 출력에는 인증서의 SHA1 디지털 지문이 포함됩니다.

4단계: 프로젝트 구성

Android 스튜디오를 사용하면 Nearby Messages API용 프로젝트를 쉽게 만들 수 있습니다. 프로젝트 만들기에 설명된 단계에 따라 새 프로젝트를 만듭니다. Android 스튜디오에서 모듈의 build.gradle 파일을 열고 Google Play 서비스 클라이언트 라이브러리를 종속 항목으로 추가합니다.

apply plugin: 'android'
...

dependencies {
    compile 'com.google.android.gms:play-services-nearby:19.1.0'
}

그런 다음 이전 단계에서 생성한 API 키로 매니페스트를 구성합니다.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.google.sample.app" >
    <application ...>
        <meta-data
            android:name="com.google.android.nearby.messages.API_KEY"
            android:value="API_KEY" />
        <activity>
        ...
        </activity>
    </application>
</manifest>

5단계: 게시 및 구독

앱에서 Nearby Messages API를 사용하기 시작합니다.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ...
    mMessageListener = new MessageListener() {
        @Override
        public void onFound(Message message) {
            Log.d(TAG, "Found message: " + new String(message.getContent()));
        }

        @Override
        public void onLost(Message message) {
            Log.d(TAG, "Lost sight of message: " + new String(message.getContent()));
        }
    }

    mMessage = new Message("Hello World".getBytes());
}

@Override
public void onStart() {
    super.onStart();
    ...
    Nearby.getMessagesClient(this).publish(mMessage);
    Nearby.getMessagesClient(this).subscribe(mMessageListener);
}

@Override
public void onStop() {
    Nearby.getMessagesClient(this).unpublish(mMessage);
    Nearby.getMessagesClient(this).unsubscribe(mMessageListener);
    ...
    super.onStop();
}

Nearby Messages API를 사용하려면 사용자 동의가 필요합니다. 게시 또는 구독이 처음 호출되면 Nearby가 선택 대화상자를 표시합니다.