البدء

يوضِّح هذا المستند كيفية بدء التطوير باستخدام واجهة برمجة التطبيقات لتطبيق "الرسائل القريبة" على Android. تعتبر واجهة برمجة التطبيقات لتطبيق "الرسائل عن قرب" جزءًا من خدمات Google Play.

الخطوة 1: الحصول على "خدمات Google Play"

تتوفّر واجهة برمجة التطبيقات لتطبيق "الرسائل عن قرب" على أجهزة Android المزوّدة بالإصدار 7.8.0 أو الإصدارات الأحدث من خدمات Google Play. تتلقى الأجهزة التي تعمل بالإصدار 2.3 من نظام التشغيل Android أو الإصدارات الأحدث والتي تتضمن تطبيق متجر Google Play تحديثات لخدمات Google Play تلقائيًا. لمعرفة إصدار خدمات Google Play المثبّت على جهازك، يمكنك الانتقال إلى الإعدادات > التطبيقات > خدمات Google Play.

تأكَّد من توفُّر أحدث مكتبة برامج لخدمات Google Play على مضيف التطوير:

  1. افتح مدير حزمة تطوير البرامج (SDK) لنظام التشغيل Android.
  2. ضمن المظهر والسلوك > إعدادات النظام > حزمة تطوير البرامج (SDK) لنظام التشغيل Android > أدوات SDK، تأكَّد من تثبيت الحِزم التالية:

    • خدمات Google Play
    • مستودع Google

الخطوة 2: الحصول على حساب على Google

لاستخدام واجهات برمجة تطبيقات "الرسائل المجاورة"، يجب أن يكون لديك حساب Google. وذلك حتى تتمكن، بصفتك المطوّر، من تفعيل واجهة برمجة التطبيقات "الأجهزة المجاورة" في الخطوة التالية (لن يحتاج المستخدمون إلى حساب على Google). إذا كنت تملك حسابًا من قبل، فقد انتهيت من إعداد حسابك. يمكنك أيضًا الحصول على حساب منفصل على Google لأغراض الاختبار.

الخطوة 3: الحصول على مفتاح واجهة برمجة التطبيقات

اتّبِع الخطوات التالية لتفعيل واجهة برمجة التطبيقات لتطبيق "الرسائل القريبة من Google" لنظام التشغيل Android والحصول على مفتاح واجهة برمجة التطبيقات:

  1. انتقِل إلى Google Developers Console.
  2. أنشِئ أو اختَر مشروعًا لتسجيل تطبيقك من خلاله.
  3. انقر على متابعة لتفعيل واجهة برمجة التطبيقات.
  4. في صفحة بيانات الاعتماد، أنشئ مفتاح Android جديدًا (وعيِّن بيانات اعتماد واجهة برمجة التطبيقات).
    ملاحظة: إذا كان لديك مفتاح 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. سيظهر مفتاح واجهة برمجة تطبيقات Android الجديد في قائمة مفاتيح واجهة برمجة التطبيقات لمشروعك. مفتاح واجهة برمجة التطبيقات هو سلسلة من الأحرف، على النحو التالي:
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

الحصول على الملف المرجعي لشهادة SHA1 لشهادتك

لإنشاء مفتاح واجهة برمجة تطبيقات جديد لتطبيق Android، ستحتاج إلى الملف المرجعي لشهادة SHA1 للشهادة التي تستخدمها لتوقيع ملف APK. لا يمكن تبادل الرسائل إلا بين التطبيقات التي تم توقيعها باستخدام مفاتيح واجهة برمجة التطبيقات من المشروع نفسه.

للحصول على بصمة الإصبع هذه:

  1. ابحث عن موقع ملف تخزين المفاتيح.
  2. في الوحدة الطرفية، شغِّل الأداة المساعدة keytool من JDK. على سبيل المثال، إذا كنت تستخدم ملف تخزين مفاتيح `debug`:
  3. $ keytool -alias \
    androiddebugkey -keystore \
    ~/.android/debug.keystore -list -v
    

    ملاحظة: بالنسبة إلى ملف تخزين مفاتيح تصحيح الأخطاء، تكون كلمة المرور هي android. في نظامي التشغيل Mac وLinux، يتم عادةً وضع ملف تخزين مفاتيح تصحيح الأخطاء في العنوان ~/.android/debug.keystore. أمّا في نظام التشغيل Windows، فيكون متوفرًا عادةً على %USERPROFILE%\.android\debug.keystore.

  4. يحتوي ناتج الأمر keytool على الملف المرجعي لشهادة SHA1 للشهادة.

الخطوة 4: ضبط مشروعك

يسهّل استوديو Android إنشاء مشروع لواجهة برمجة التطبيقات لتطبيق "الرسائل عن قرب". اتبع الخطوات الموضحة في إنشاء مشروع لإنشاء مشروع جديد. في Android Studio، افتح ملف build.gradle للوحدة وأضف مكتبة برامج "خدمات Google Play" كملحق:

apply plugin: 'android'
...

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

بعد ذلك، يمكنك ضبط ملف البيان باستخدام مفتاح واجهة برمجة التطبيقات الذي تم إنشاؤه في الخطوة السابقة:

<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: النشر والاشتراك

في تطبيقك، ابدأ باستخدام واجهة برمجة التطبيقات لتطبيق "الرسائل عن قرب".

@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();
}

تتطلّب واجهة برمجة التطبيقات لتطبيق "الرسائل القريبة" موافقة المستخدم. عند استدعاء النشر أو الاشتراك لأول مرة، ستعرض ميزة "الأجهزة المجاورة" مربع حوار تفعيل.