חדשות על מוצרים

העברת Androidify ל-Wear OS באמצעות Watch Face Push

משך הקריאה: 3 דקות
Garan Jenkin
מהנדס קשרי מפתחים

 

 

לפני כמה חודשים השקנו מחדש את Androidify כאפליקציה ליצירת בוטים מותאמים אישית של Android. ‫Androidify משתמש ב-Gemini וב-Imagen כדי להפוך את תמונת הסלפי שלכם לבוט Android שובב.

עם זאת, מכיוון ש-Android פועלת במגוון גורמי צורה, כולל התוספת האחרונה שלנו, XR, חשבנו איך אפשר להביא את הכיף של Androidify ל-Wear OS.

תצוגת שעון של Androidify

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

demonstration.gif

תצוגת שעון מותאמת אישית של Androidify, שנוצרה מתמונת סלפי

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

עיצוב ברמה גבוהה

image.png

זרימה מקצה לקצה ליצירה ולהתקנה של תצוגות שעון

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

קודם כול, האווטאר של המשתמש משולב עם תבנית קיימת של פורמט פני שעון, ואז הוא נארז ב-APK. הנתון הזה מאומת – מסיבות שיוסברו בהמשך. – ונשלח לשעון.

כשמקבלים את תצוגת השעון בשעון, נעשה שימוש ב-Watch Face Push API החדש – חלק מ-Wear OS 6 – כדי להתקין ולהפעיל את תצוגת השעון.

בואו נבדוק את הפרטים:

יצירת תבניות של תצוגת השעון

תצוגת השעון נוצרת מתבנית שתוכננה ב-Watch Face Designer. זהו התוסף החדש שלנו ל-Figma שמאפשר ליצור תצוגות שעון בפורמט Watch Face Format ישירות ב-Figma.

image.png

תבנית של תצוגת שעון ב-Androidify ב-Watch Face Designer

התוסף מאפשר לייצא את תצוגת השעון במגוון דרכים, כולל כמשאבים בפורמט Watch Face Format‏ (WFF). אחר כך אפשר לשלב אותם בקלות כנכסים באפליקציית Androidify, כדי ליצור באופן דינמי את תצוגת השעון הסופית.

אריזה ואימות

אחרי שמשלבים את התבנית והאווטאר, משתמשים ב-Portable Asset Compiler Kit‏ (Pack) כדי ליצור קובץ APK.

ב-Androidify, ‏ Pack משמש כספריית Native בטלפון. לפרטים נוספים על הממשק של Androidify עם ספריית Pack, אפשר לעיין במאגר GitHub.

לפני השליחה, קובץ ה-APK נבדק על ידי מאמת העברת לוחות השעון.

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

האסימון הזה נדרש כדי להתקין את השעון.

שליחת תצוגת השעון

אפליקציית Androidify ב-Wear OS משתמשת ב-WearableListenerService כדי להאזין לאירועים בשכבת הנתונים של המכשיר הלביש.

אפליקציית הטלפון מעבירה את תצוגת השעון באמצעות שילוב של MessageClient להגדרת התהליך, ואז ChannelClient להזרמת ה-APK.

התקנת תצוגת השעון בשעון

אחרי שתצוגת השעון מתקבלת במכשיר Wear OS, אפליקציית Androidify משתמשת ב-Watch Face Push API החדש כדי להתקין את תצוגת השעון:

val wfpManager = 

    WatchFacePushManagerFactory.createWatchFacePushManager(context)

val response = wfpManager.listWatchFaces()



try {

    if (response.remainingSlotCount > 0) {

        wfpManager.addWatchFace(apkFd, token)

    } else {

        val slotId = response.installedWatchFaceDetails.first().slotId

        wfpManager.updateWatchFace(slotId, apkFd, token)

    }

} catch (a: WatchFacePushManager.AddWatchFaceException) {

    return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR

} catch (u: WatchFacePushManager.UpdateWatchFaceException) {

    return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR

}

‫Androidify משתמש בשיטה addWatchFace או updateWatchFace, בהתאם לתרחיש: Watch Face Push מגדיר מושג של 'משבצות' – כמה תצוגות שעון יכולות להיות מותקנות באפליקציה נתונה בכל זמן נתון. ב-Wear OS 6, הערך הזה הוא 1.

הגישה של Androidify היא להתקין את תצוגת השעון אם יש משבצת פנויה, ואם לא, להחליף את תצוגת השעון הקיימת בתצוגה החדשה.

הגדרת תצוגת השעון הפעילה

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

התכונה 'העברת עיצובים של שעונים' מציגה הרשאה בתחילת ההפעלה חדשה, שצריך להעניק כדי שאפליקציות יוכלו לבצע את הפעולה הזו:

com.google.wear.permission.SET_PUSHED_WATCH_FACE_AS_ACTIVE

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

עם זאת, יש כמה דברים שצריך לקחת בחשבון כשמשתמשים ב-Androidify:

  • אפשר להשתמש ב-setWatchFaceAsActive רק פעם אחת.
  • אי אפשר לשלוח שוב בקשה לגישה ל-SET_PUSHED_WATCH_FACE_AS_ACTIVE אחרי שהמשתמש דחה אותה.
  • יכול להיות ש-Androidify כבר שולט בתצוגת השעון הפעילה.

פרטים נוספים זמינים במאמר בנושא הטמעת הלוגיקה של הגדרת הפעילות ב-Androidify.

איך מתחילים להשתמש בתכונה 'העברת תצוגת שעון' ל-Wear OS

‫Watch Face Push הוא API רב-תכליתי, שמתאים גם לשיפור Androidify וגם ליצירת פלטפורמות מלאות למכירת תצוגות שעון.

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

או שאולי אתם מפתחים קיימים של תצוגות שעון שרוצים ליצור קהילה וגלריה משלכם באמצעות פרסום אפליקציה לשוק?

כדאי לעיין במקורות המידע הבאים:

כדאי גם לצפות בסרטון הנלווה כדי לקבל מידע נוסף על האופן שבו הוספנו את Androidify ל-Wear OS.

אנחנו סקרנים לראות מה תיצרו באמצעות Watch Face Push.

נכתב על ידי:

להמשך הקריאה