इस दस्तावेज़ में, Android पर Nearby Messages API का इस्तेमाल करके डेवलपमेंट शुरू करने का तरीका बताया गया है. Nearby Messages API, Google Play services का हिस्सा है.
पहला चरण: Google Play services डाउनलोड करना
Nearby Messages API, Android डिवाइसों पर उपलब्ध है. इसके लिए, डिवाइसों पर Google Play services 7.8.0 या इसके बाद का वर्शन होना चाहिए. Android 2.3 या इसके बाद के वर्शन पर काम करने वाले डिवाइसों पर, Google Play services के अपडेट अपने-आप मिल जाते हैं. इन डिवाइसों पर Google Play Store ऐप्लिकेशन इंस्टॉल होना चाहिए. आपके डिवाइस पर Google Play services का कौनसा वर्शन इंस्टॉल है, यह देखने के लिए सेटिंग > ऐप्लिकेशन > Google Play services पर जाएं.
पक्का करें कि आपके डेवलपमेंट होस्ट पर, Google Play services के लिए सबसे नई क्लाइंट लाइब्रेरी हो:
- Android SDK Manager खोलें.
Appearance & Behavior > System Settings > Android SDK > SDK Tools में जाकर, पक्का करें कि ये पैकेज इंस्टॉल हों:
- Google Play सेवाएं
- Google Repository
दूसरा चरण: Google खाता बनाना
Nearby Messages API का इस्तेमाल करने के लिए, आपके पास Google खाता होना चाहिए. ऐसा इसलिए किया जाता है, ताकि डेवलपर के तौर पर आप अगले चरण में Nearby API को चालू कर सकें. हालांकि, आपके उपयोगकर्ताओं को Google खाते की ज़रूरत नहीं होगी. अगर आपके पास पहले से कोई खाता है, तो आप इसे इस्तेमाल करने के लिए तैयार हैं. आपको जांच के लिए, अलग Google खाते की ज़रूरत भी पड़ सकती है.
तीसरा चरण: एपीआई पासकोड पाना
Android के लिए Google Nearby Messages API चालू करने और एपीआई पासकोड पाने के लिए, यह तरीका अपनाएं:
- Google Developers Console पर जाएं.
- अपने ऐप्लिकेशन को रजिस्टर करने के लिए, कोई प्रोजेक्ट बनाएं या चुनें.
- एपीआई चालू करने के लिए, जारी रखें पर क्लिक करें.
- क्रेडेंशियल पेज पर जाकर, एक नया Android पासकोड बनाएं. साथ ही, एपीआई क्रेडेंशियल सेट करें.
ध्यान दें: अगर आपके पास पहले से कोई Android कुंजी है, तो उसका इस्तेमाल किया जा सकता है. - इसके बाद दिखने वाले डायलॉग में, अपने ऐप्लिकेशन का 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
- आपका नया Android API पासकोड, आपके प्रोजेक्ट के एपीआई पासकोड की सूची में दिखता है.
एपीआई पासकोड, वर्णों की एक स्ट्रिंग होती है. यह कुछ इस तरह की होती है:
AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0
अपने सर्टिफ़िकेट का SHA1 फ़िंगरप्रिंट हासिल करना
अपने Android ऐप्लिकेशन के लिए नया एपीआई पासकोड बनाने के लिए, आपको उस सर्टिफ़िकेट के SHA1 फ़िंगरप्रिंट की ज़रूरत होगी जिसका इस्तेमाल आपने अपने APK पर साइन करने के लिए किया था. मैसेज सिर्फ़ उन ऐप्लिकेशन के बीच भेजे और पाए जा सकते हैं जिन्हें एक ही प्रोजेक्ट के एपीआई पासकोड से साइन किया गया हो.
यह फ़िंगरप्रिंट पाने के लिए:
- अपने कीस्टोर की जगह ढूंढें.
- टर्मिनल में, JDK से
keytoolयूटिलिटी चलाएं. उदाहरण के लिए, अगर`debug`कीस्टोर का इस्तेमाल किया जा रहा है, तो: keytoolकमांड के आउटपुट में, सर्टिफ़िकेट का SHA1 फ़िंगरप्रिंट होता है.
$ keytool -alias \ androiddebugkey -keystore \ ~/.android/debug.keystore -list -v
ध्यान दें: डीबग कीस्टोर के लिए पासवर्ड android है. Mac OS और Linux पर, डीबग कीस्टोर आम तौर पर ~/.android/ पर मौजूद होता है. Windows में, यह आम तौर पर %USERPROFILE%\ पर मौजूद होता है.
चौथा चरण: अपना प्रोजेक्ट कॉन्फ़िगर करना
Android Studio की मदद से, Nearby Messages API के लिए प्रोजेक्ट बनाना आसान है. नया प्रोजेक्ट बनाने के लिए, प्रोजेक्ट बनाना लेख में बताया गया तरीका अपनाएं. Android Studio में, अपने मॉड्यूल के लिए build.gradle फ़ाइल खोलें और Google Play services क्लाइंट लाइब्रेरी को डिपेंडेंसी के तौर पर जोड़ें:
apply plugin: 'android'
...
dependencies {
compile 'com.google.android.gms:play-services-nearby:19.5.1'
}
इसके बाद, पिछले चरण में जनरेट किए गए एपीआई पासकोड का इस्तेमाल करके, मेनिफ़ेस्ट को कॉन्फ़िगर करें:
<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>
पांचवां चरण: पब्लिश करना और सदस्यता लेना
अपने ऐप्लिकेशन में, 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 में ऑप्ट इन करने का डायलॉग दिखेगा.