Başla

Bu belgede, Android'de Nearby Messages API ile nasıl geliştirmeye başlayabileceğiniz açıklanmaktadır. Yakındaki Mesajlar API'si, Google Play Hizmetleri'nin bir parçasıdır.

1. Adım: Google Play hizmetlerini edinin

Nearby Messages API, Google Play Hizmetleri 7.8.0 veya sonraki sürümlere sahip Android cihazlarda kullanılabilir. Android 2.3 veya üzerini çalıştıran ve Google Play Store uygulamasına sahip cihazlar, Google Play hizmetlerinin güncellemelerini otomatik olarak alır. Cihazınızda Google Play hizmetlerinin hangi sürümünün yüklü olduğunu kontrol etmek için Ayarlar > Uygulamalar > Google Play Hizmetleri'ne gidin.

Geliştirme barındırıcınızda, Google Play hizmetleri için en güncel istemci kitaplığının bulunduğundan emin olun:

  1. Android SDK Yöneticisi'ni açın.
  2. Görünüm ve Davranış > Sistem Ayarları > Android SDK > SDK Araçları altında, aşağıdaki paketlerin yüklü olduğundan emin olun:

    • Google Play Hizmetleri
    • Google Kod Deposu

2. Adım: Bir Google hesabı edinin

Nearby Messages API'lerini kullanmak için bir Google Hesabınızın olması gerekir. Böylece, geliştirici olarak bir sonraki adımda Nearby API'yi etkinleştirebilirsiniz (kullanıcılarınızın Google Hesabı olması gerekmez). Zaten bir hesabınız varsa hazırsınız demektir. Test amacıyla ayrı bir Google Hesabı da kullanmak isteyebilirsiniz.

3. Adım: API anahtarı alın

Android için Google Nearby Messages API'yi etkinleştirmek ve API anahtarı almak için şu adımları uygulayın:

  1. Google Developers Console'a gidin.
  2. Uygulamanızı kaydetmek için bir proje oluşturun veya seçin.
  3. API'yi etkinleştirmek için Devam'ı tıklayın.
  4. Kimlik Bilgileri sayfasında yeni bir Android anahtarı oluşturun (ve API Kimlik Bilgilerini ayarlayın).
    Not: Mevcut bir Android anahtarınız varsa bu anahtarı kullanabilirsiniz.
  5. Açılan iletişim kutusunda, uygulamanızın SHA-1 dijital parmak izini ve paket adını girin. Örneğin:
    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. Yeni Android API anahtarınız, projenizin API anahtarları listesinde görünür. API anahtarı, karakterlerden oluşan bir dizedir. Örnek:
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

Sertifikanızın SHA1 parmak izini edinin

Android uygulamanıza yönelik yeni bir API anahtarı oluşturmak için APK'nızı imzalamak amacıyla kullandığınız sertifikanın SHA1 dijital parmak izine ihtiyacınız vardır. Yalnızca aynı projedeki API anahtarlarıyla imzalanmış uygulamalar arasında mesaj alışverişi yapılabilir.

Bu parmak izini almak için:

  1. Anahtar deponuzun konumunu bulun.
  2. Terminalde JDK'dan keytool yardımcı programını çalıştırın. Örneğin, `debug` anahtar deposunu kullanıyorsanız:
  3. $ keytool -alias \
    androiddebugkey -keystore \
    ~/.android/debug.keystore -list -v
    

    Not: Hata ayıklama anahtar deposu için şifre android şeklindedir. Mac OS ve Linux'ta hata ayıklama anahtar deposu genellikle ~/.android/debug.keystore konumunda bulunur. Windows'da, genellikle %USERPROFILE%\.android\debug.keystore konumunda bulunur.

  4. keytool komutunun çıkışı, sertifikanın SHA1 dijital parmak izini içerir.

4. Adım: Projenizi yapılandırın

Android Studio, Nearby Messages API'si için proje oluşturmayı kolaylaştırır. Yeni bir proje oluşturmak için Proje Oluşturma bölümünde açıklanan adımları izleyin. Android Studio'da modülünüz için build.gradle dosyasını açın ve Google Play Hizmetleri istemci kitaplığını bağımlılık olarak ekleyin:

apply plugin: 'android'
...

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

Ardından, manifestinizi bir önceki adımda oluşturulan API anahtarıyla yapılandırın:

<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. Adım: Yayınlama ve abone olma

Uygulamanızda, Nearby Messages API'yi kullanmaya başlayın.

@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'si için kullanıcı izni gerekir. Yayınlama veya abone olma özelliği ilk kez çağrıldığında, Etrafımda özelliği bir etkinleştirme iletişim kutusu gösterir.