'חיבורים בקרבת מקום' הוא API לרשת מקצה לקצה (P2P) שמאפשר לאפליקציות לגלות נתונים עם מכשירים בקרבת מקום, להתחבר אליהם ולהחליף ביניהם בקלות בזמן אמת, בלי קשר לקישוריות של הרשת.
תרחישים לדוגמה:
- לוח אינטראקטיבי שיתופי:כתיבת רעיונות בלוח העריכה הווירטואלי המשותף עם המשתתפים שנמצאים בקרבת מקום.
- משחק רב-משתתפים מקומי: תוכלו להגדיר משחק רב-משתתפים ולהזמין משתמשים אחרים בקרבת מקום להצטרף.
- משחקים עם מספר מסכים:השתמשו בטלפון או בטאבלט בתור שלט לגיימינג, כדי לשחק במשחקים שמוצגים במכשיר Android עם מסך גדול בקרבת מקום, כמו Android TV.
- העברת קבצים אופליין: אפשר לשתף במהירות תמונות, סרטונים או כל סוג אחר של נתונים, בלי צורך בחיבור לרשת.
מבוא
Connections של חיבורים בקרבת מקום מאפשרים פרסום, גילוי וחיבור בין מכשירים קרובים באופן מלא ובמצב לא מקוון. החיבורים בין המכשירים הם ברוחב פס גבוה, עם זמן אחזור קצר והם מוצפנים באופן מלא כדי לאפשר העברות נתונים מהירות ומאובטחות.
המטרה העיקרית של ה-API היא לספק פלטפורמה פשוטה, אמינה ובעלת ביצועים טובים. מאחורי הקלעים, ה-API משתמש בשילוב של טכנולוגיות Bluetooth, BLE ו-Wi-Fi תוך ניצול היתרונות של כל אחת מהן תוך עקיפת חולשות. כך תוכלו להפחית את צריכת ה-Bluetooth וה-Wi-Fi במגוון פלטפורמות וגרסאות של מערכות הפעלה, וכך המפתחים יוכלו להתמקד בתכונות החשובות למשתמשים שלהם.
סקירה כללית על ממשקי API
השימוש ב-API כולל שני שלבים: חיבור מראש וחיבור משני.
בשלב החיבור מראש, המפרסמים מפרסמים את עצמם בזמן ש-Discover מגלה מפרסמים בקרבת מקום ושולח בקשות קישור. בקשת חיבור בין חשבון Discover למפרסם יוצרת תהליך אימות סימטרי. שני הצדדים מקבלים את בקשת החיבור בנפרד (או דוחים אותה).
אחרי ששני הצדדים מאשרים את בקשת החיבור, החיבור נחשב ליצירת והמכשירים נכנסים לשלב לאחר ההתחברות, ושני הצדדים יכולים להחליף נתונים.
פרסום וגילוי
כשמפרסמים חדשים נחשפים או מפרסמים שאבדים, הם נחשפים לגילויים אחרים.
מתבצע חיבור
כשמגלה רוצה להתחבר למפרסם שנמצא בקרבת מקום, הוא יכול לבקש חיבור.
לשני הצדדים תהיה הודעה על תהליך החיבור ושני הצדדים יוכלו לאשר או לדחות את החיבור.
אחרי ששני הצדדים יגיבו, נודיע להם על התוצאה. אם שני הצדדים אישרו את החיבור, החיבור נחשב כמתאים והעברת הנתונים יכולה להתחיל.
העברת נתונים
אחרי יצירת החיבור, השימוש הנוסף ב-API סימטרי, כך שאין יותר הבחנה בין המפרסם ל-Discover.
עכשיו שני הצדדים יכולים להחליף נתונים. יש 3 סוגים של מטענים ייעודיים (payloads) נתמכים:
- בייטים: מערכי בייטים מוגבלים ל-32k; הם טובים לשליחת דברים כמו מטא-נתונים או הודעות בקרה.
- קובץ: קבצים בכל הגדלים – הם מועברים מהאפליקציה לממשק הרשת עם העתקה מינימלית בהתאם לגבולות התהליך.
- סטרימינג: מקור נתונים שנוצר תוך כדי תנועה, כמו באודיו או בווידאו, בלי לציין גודל סופי מראש.
מקבלי המידע יקבלו הודעה על נתונים נכנסים חדשים ועל עדכונים, ביטולים או כשלים בתהליך ההתקדמות.
החיבורים שנוצרו הם דו-צדדיים, כך שמפרסמים וגילויים יכולים לשלוח ולקבל נתונים בו-זמנית.
איסוף נתונים
כשמשתמשים ב-SDK של Google Play Services בקרבת מקום, מתבצע ניתוח נתונים של השימוש כדי לשפר את החוויה.
- מדדי ביצועים: זמן האחזור של הגילוי והחיבור, האמינות ורמת התפוקה נאספים כשסורקים מכשירים ומתחברים אליהם באמצעות ה-SDK בקרבת מקום.
- פרטי המכשיר: הנתונים של דגם המכשיר, המדינה, גרסת ה-build ושם חבילת האפליקציה נאספים ומשויכים למדדי הביצועים כדי לזהות פילוחים אזוריים וספציפיים למכשיר.
משתמשי קצה יכולים לאשר או לדחות את האיסוף על ידי מעבר אל 'הגדרות' > Google > 'שימוש ואבחון'.