בחירת סוג לקוח

ממשקי ה-API של שכבת הנתונים ל-Wear OS מורכבים מכמה סוגים שונים של לקוחות, הם שימושיים לסוגים שונים של נתונים ובמהלך קישוריות שונה את התנאים וההגבלות.

בדף הזה מוצגים כל סוגי הלקוחות, וכולל טבלה שמשווה בין של הלקוחות השונים. בעזרת המידע הזה, אפשר לבחור קבוצת סוגי הלקוחות שהכי מתאימה לאפליקציה שלכם.

לקוח נתונים

אובייקט DataClient מאפשר לקרוא או לכתוב ב-DataItem או Asset:

  • כל DataItem הוא יחידת מידע שמשודרת ומסונכרנת בכל המכשירים בקרבת מקום שבבעלות המשתמש. DataItem נשמר באופן קבוע, והמכשיר יוכל לקרוא את התוכן שלו עד שפריט הנתונים יימחק.

  • Asset מיועד למטענים ייעודיים (payloads) גדולים יותר של נתונים, כמו תמונות או קובצי מדיה.

לקוח שליחת הודעות

אובייקט MessageClient יכול לשלוח הודעות והוא מתאים לניהול מרחוק שיחות (RPC), למשל שימוש במכשיר Wear OS כדי לשלוט בגרסת האפליקציה שמותקן במכשיר נישא.

ההודעות מתאימות במיוחד לבקשות חד-כיווניות באמצעות sendMessage(), או מודל תקשורת של בקשה ותגובה באמצעות sendRequest(). בניגוד לנתונים לקוחות הודעות צריכים שהצמתים יהיו מחוברים לרשת כדי לשלוח הודעות.

השיטה sendMessage() היא הפתרון הטוב ביותר לספק לצומת המרוחק, וגם היא לא מכילה מנגנון מובנה של ניסיונות חוזרים. אם מכשיר היעד מתנתק לפני תחילת ההעברה ברשת, ה-method מחזירה TARGET_NODE_NOT_CONNECTED

לקוח הערוץ

אובייקט ChannelClient מספק תקשורת מוכוונת-סטרימינג בין מכשירים. ערוץ הוא צינור תקשורת דו-כיווני בין שני צמתים, שימושי לתרחישים לדוגמה הבאים:

  • העברת קובצי נתונים בין שני מכשירים מחוברים או יותר כשיש חיבור לאינטרנט לא זמין. ChannelClient חוסך מקום בכונן של יותר מ-DataClient, כלומר יוצר עותק של הנכסים במכשיר המקומי לפני הסנכרון עם של מכשירים מחוברים.
  • אפשר לשלוח באופן מהימן קובץ גדול מדי לשליחה באמצעות MessageClient.
  • העברת נתונים שמועברים בסטרימינג, כמו נתונים קוליים מהמיקרופון.

לאחר פתיחת ערוץ, ניתן לשלוח ולקבל נתונים בבייט רציף זרם נתונים, ולא יחידות DataItem הנפרדות שנדרשות ללקוחות הנתונים.

אתם אחראים לניהול זרימת הנתונים ולשמירה על העקביות של הנתונים. הלקוחות של הערוץ לא מציעים רמה זהה של סנכרון נתונים אוטומטי שלקוחות הנתונים עושים.

השוואת לקוחות

בטבלה הבאה ניתן לראות השוואה בין היכולות של הלקוחות השונים:

סוג הלקוח עקביות נתונים יש תמיכה בנתונים שגדולים מ-100KB? הרשת לשימוש עובד באופן לא מקוון?
לקוח נתונים הנתונים נשמרים ללא הגבלת זמן כן (יש להשתמש Asset אובייקטים) העדפה ל-Bluetooth. הנתונים מגובים בענן. אם חיבור ה-Bluetooth הוא זמין, הגיבוי הזה מתבצע באופן אסינכרוני כן, גם לקריאה וגם לכתיבה
לקוח הודעות ללא עקביות וללא ניסיון חוזר לא עדיף להשתמש ב-Bluetooth, אבל אפשר להשתמש ב-Wi-Fi אם זה הסוג היחיד של חיבור זמין לא
לקוח ראשי ללא עקביות (ממוקד חיבור) כן עדיף להשתמש ב-Bluetooth, אבל אפשר להשתמש ב-Wi-Fi אם זה הסוג היחיד של חיבור זמין לא