ממשקי ה-API של שכבת הנתונים של Wear OS מורכבים מכמה סוגים שונים של לקוחות, שמתאימים לסוגים שונים של נתונים ולתנאי קישוריות שונים.
בדף הזה נציג את כל סוגי הלקוחות, וגם טבלה שמשווה בין היכולות של הלקוחות השונים. בעזרת המידע הזה, אתם יכולים לבחור את סוגי הלקוחות שהכי מתאימים לאפליקציה שלכם.
מתי כדאי להשתמש ב-Data Layer API
השתמשו ב-Data Layer API כשהאינטראקציה היא אך ורק בין השעון המקומי לטלפון המקומי. דוגמאות מפורטות זמינות במאמר תרחישים נפוצים לדוגמה של שכבת נתונים.
לקוח נתונים
אובייקט DataClient מאפשר לקרוא או לכתוב ב-DataItem או ב-Asset:
כל
DataItemהיא יחידת מידע שמשודרת ומסונכרנת בכל המכשירים הסמוכים שבבעלות המשתמש.DataItemנשמר באופן קבוע, והמכשיר יכול לקרוא את התוכן שלו עד שפריט הנתונים נמחק.Assetמיועד למטעני נתונים גדולים יותר, כמו תמונות או קובצי מדיה.
תוכנת אימייל
אובייקט MessageClient יכול לשלוח הודעות והוא מתאים לקריאות לשירות מרוחק (RPC), כמו שימוש במכשיר Wear OS כדי לשלוט בגרסת האפליקציה שמותקנת במכשיר שניתן להחזיק ביד.
הודעות הן דרך מצוינת לשלוח בקשות חד-כיווניות באמצעות sendMessage(), או לתקשורת במודל של בקשה ותגובה באמצעות sendRequest(). בניגוד ללקוחות נתונים, לקוחות הודעות צריכים שהצמתים יהיו מחוברים לרשת כדי לשלוח הודעות.
ה-method sendMessage() מנסה כמיטב יכולתה להעביר את ההודעה לצומת המרוחק, ואין בה מנגנון מובנה לניסיון חוזר. אם מכשיר היעד מתנתק לפני שההעברה ברשת מתחילה, השיטה מחזירה את הערך TARGET_NODE_NOT_CONNECTED.
לקוח של ערוץ
אובייקט ChannelClient מספק תקשורת מבוססת-סטרימינג בין מכשירים. ערוץ הוא צינור תקשורת דו-כיווני בין שני צמתים, שמועיל בתרחישים לדוגמה כמו:
- להעביר קובצי נתונים בין שני מכשירים מחוברים או יותר כשאין חיבור לאינטרנט.
ChannelClientחוסך מקום בכונן בהשוואה ל-DataClient, שיוצר עותק של הנכסים במכשיר המקומי לפני הסנכרון עם המכשירים המחוברים. - לשלוח באופן מהימן קובץ שגדול מדי לשליחה באמצעות
MessageClient. - להעביר נתונים בסטרימינג, כמו נתונים שנאספים בזיהוי קולי מהמיקרופון.
אחרי שפותחים ערוץ, אפשר לשלוח ולקבל נתונים ברצף בייטים מתמשך, במקום ביחידות DataItem נפרדות שנדרשות על ידי לקוחות הנתונים.
אתם אחראים לנהל את זרימת הנתונים ולשמור על עקביות הנתונים. לקוחות ערוץ לא מציעים את אותה רמה של סנכרון נתונים אוטומטי כמו לקוחות נתונים.
השוואה בין לקוחות
בטבלה הבאה מוצגת השוואה בין היכולות של הלקוחות השונים:
| סוג הלקוח | שמירת נתונים | תמיכה בנתונים גדולים מ-100KB? | הרשת שבה רוצים להשתמש | עובד באופן לא מקוון? |
|---|---|---|---|---|
| לקוח נתונים | הנתונים נשמרים ללא הגבלת זמן | כן (באמצעות אובייקטים מסוג Asset) |
עדיפות ל-Bluetooth. הנתונים מגובים בענן. אם יש חיבור Bluetooth, הגיבוי מתבצע באופן אסינכרוני. | כן, גם לקריאה וגם לכתיבה |
| שליחת הודעה ללקוח | אין שמירה ואין ניסיון חוזר | לא | עדיף Bluetooth, אבל אפשר להשתמש ב-Wi-Fi אם זה סוג החיבור היחיד שזמין | לא |
| לקוח של ערוץ | ללא התמדה (מבוסס-חיבור) | כן | עדיף Bluetooth, אבל אפשר להשתמש ב-Wi-Fi אם זה סוג החיבור היחיד שזמין | לא |
למידע נוסף על עבודה עם ממשקי ה-API של שכבת הנתונים, עיינו במדריך סנכרון נתונים. במדריך חיסכון בחשמל מוסבר איך לחסוך בחשמל כשמשתמשים בממשקי ה-API של שכבת הנתונים.