کلیدهای ثبت نام و API

برای استفاده از API مربوط به Google Awareness، باید یک کلید API گوگل به برنامه خود اضافه کنید. نوع کلید API مورد نیاز شما، کلید API اندروید است.

تمام برنامه‌های اندروید با یک گواهی دیجیتال که کلید خصوصی آن را در اختیار دارید، امضا می‌شوند. برای اطلاعات بیشتر در مورد گواهی‌های دیجیتال، به راهنمای اندروید در مورد نحوه امضای برنامه خود مراجعه کنید.

کلیدهای API اندروید به جفت‌های خاصی از گواهی-بسته مرتبط هستند. شما فقط برای هر گواهی به یک کلید نیاز دارید، مهم نیست چند کاربر برای برنامه دارید.

برای دریافت کلید برنامه خود، چندین مرحله لازم است. این مراحل در این راهنما به تفصیل شرح داده شده و به شرح زیر خلاصه می‌شوند:

  1. اطلاعات مربوط به گواهی برنامه خود را دریافت کنید.
  2. یک پروژه را در کنسول توسعه‌دهندگان گوگل ثبت کنید و رابط برنامه‌نویسی کاربردی زمینه کاربر (User Context API) را به عنوان سرویسی برای پروژه اضافه کنید.
  3. درخواست کلید.
  4. کلید را به برنامه خود اضافه کنید. برای انجام این کار، یک عنصر به مانیفست برنامه خود اضافه کنید.

اطلاعات گواهی برنامه خود را پیدا کنید

کلید API بر اساس فرم کوتاهی از گواهی دیجیتال برنامه شما، که به عنوان اثر انگشت SHA-1 شناخته می‌شود، ساخته شده است. برای نمایش اثر انگشت SHA-1 برای گواهی خود، ابتدا مطمئن شوید که از گواهی صحیح استفاده می‌کنید. ممکن است دو گواهی زیر برای انتخاب داشته باشید:

  • گواهی اشکال‌زدایی : ابزارهای SDK اندروید این گواهی را به‌طور خودکار هنگام ساخت اشکال‌زدایی تولید می‌کنند. فقط از این گواهی با برنامه‌هایی که آزمایش می‌کنید استفاده کنید. سعی نکنید برنامه‌ای را که با گواهی اشکال‌زدایی امضا شده است منتشر کنید. گواهی اشکال‌زدایی با جزئیات بیشتر در بخش «امضای ساخت اشکال‌زدایی» در مستندات توسعه‌دهنده اندروید توضیح داده شده است.
  • گواهی انتشار : ابزارهای Android SDK این گواهی را هنگام ساخت نسخه منتشر شده تولید می‌کنند. همچنین می‌توانید این گواهی را با برنامه keytool تولید کنید. از این گواهی زمانی استفاده کنید که آماده انتشار برنامه خود به جهان هستید.

برای اطلاعات بیشتر در مورد keytool ، به مستندات Oracle آن مراجعه کنید.

گواهی اشکال‌زدایی

نمایش اثر انگشت گواهی اشکال‌زدایی

از برنامه keytool به همراه پارامتر -v برای نمایش اثر انگشت SHA-1 یک گواهی استفاده کنید. برای انجام این کار، مراحل زیر را انجام دهید:

  1. فایل debug keystore خود را پیدا کنید. نام فایل debug.keystore است و در اولین باری که پروژه خود را می‌سازید ایجاد می‌شود. به طور پیش‌فرض، در همان دایرکتوری فایل‌های دستگاه مجازی اندروید (AVD) شما ذخیره می‌شود:

    • سیستم‌عامل‌های OS X و لینوکس : ~/.android/
    • ویندوز ویستا و ویندوز ۷ : C:\Users\your_user_name\.android\
  2. اثر انگشت SHA-1 را فهرست کنید:

    • برای لینوکس یا OS X، یک پنجره ترمینال باز کنید و موارد زیر را وارد کنید:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • برای ویندوز ویستا و ویندوز ۷، دستور زیر را اجرا کنید:

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

باید خروجی مشابه زیر را ببینید:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
گواهی انتشار

اثر انگشت گواهی انتشار را نمایش دهید

از برنامه keytool به همراه پارامتر -v برای نمایش اثر انگشت SHA-1 یک گواهی استفاده کنید. برای انجام این کار، مراحل زیر را انجام دهید:

  1. فایل کلید گواهی انتشار خود را پیدا کنید. هیچ مکان یا نام پیش‌فرضی برای کلید انتشار وجود ندارد. اگر هنگام ساخت برنامه خود برای انتشار، آن را مشخص نکنید، .apk شما بدون امضا باقی می‌ماند و قبل از انتشار باید آن را امضا کنید. برای گواهی انتشار، به نام مستعار گواهی، رمزهای عبور کلید و خود گواهی نیز نیاز دارید.
  2. برای فهرست کردن نام‌های مستعار برای تمام کلیدهای موجود در یک keystore، دستور زیر را وارد کنید:

    keytool -list -keystore your_keystore_name
          
  3. your_keystore_name با مسیر و نام کامل keystore جایگزین کنید. پسوند .keystore را نیز اضافه کنید. در صورت درخواست، رمز عبور keystore را وارد کنید. سپس، keytool تمام نام‌های مستعار موجود در keystore را نمایش می‌دهد.
  4. دستور زیر را در ترمینال یا خط فرمان وارد کنید:

          keytool -list -v -keystore your_keystore_name -alias your_alias_name
          
  5. به جای your_keystore_name مسیر و نام کامل keystore را وارد کنید. پسوند .keystore را نیز اضافه کنید.
  6. your_alias_name با نام مستعاری که هنگام ایجاد گواهی به آن اختصاص داده‌اید، جایگزین کنید.

باید خروجی مشابه زیر را ببینید:

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

خطی که با SHA1 شروع می‌شود، حاوی اثر انگشت SHA-1 گواهی است. این اثر انگشت، توالی 20 عدد دو رقمی هگزادسیمال است که با دونقطه از هم جدا شده‌اند.

دریافت کلید API از کنسول توسعه‌دهندگان گوگل

برای شروع کار با API آگاهی گوگل، روی دکمه «دریافت کلید» کلیک کنید. این دکمه به کنسول توسعه‌دهندگان گوگل متصل می‌شود که شما را در طول فرآیند راهنمایی کرده و API آگاهی را به طور خودکار فعال می‌کند.

یک کلید بگیرید

روش دیگر، برای دریافت کلید API، این مراحل را دنبال کنید:

  1. به کنسول توسعه‌دهندگان گوگل بروید.
  2. یک پروژه انتخاب کنید، یا یک پروژه جدید ایجاد کنید.
  3. برای فعال کردن Awareness API روی ادامه کلیک کنید.
  4. در صفحه «اعتبارنامه‌ها»، یک کلید اندروید ایجاد کنید و اعتبارنامه‌های API را تنظیم کنید.

  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.awareness-example
    
  6. روی ایجاد کلیک کنید. کلید API اندروید جدید شما در لیست کلیدهای API پروژه شما ظاهر می‌شود. یک کلید API رشته‌ای از کاراکترها است، مانند موارد زیر:

    AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
    

حالا که کلید API را دارید، می‌توانید آن را به مانیفست برنامه خود اضافه کنید، همانطور که در راهنمای شروع به کار توضیح داده شده است.

فعال کردن API های اضافی

API آگاهی (Awareness API) به شما امکان می‌دهد به انواع مختلفی از داده‌های زمینه‌ای، مانند beacons ، دسترسی داشته باشید. برای استفاده از این نوع داده‌ها، باید APIهای مربوطه را در کنسول توسعه‌دهندگان گوگل (Google Developers Console) فعال کنید.

خدمات روش‌های API آگاهی‌بخشی API برای فعال کردن
چراغ‌ها SnapshotApi.getBeaconState() ، FenceApi.BeaconFence API پیام‌های نزدیک