דפוס משימה מתמשך

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

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

לפני שמתחילים

המקור המלא של שעון העצר זמין ב-GitHub. כדאי להתחיל להשתמש ב-Android Studio לפני שמתחילים, כי המדריך הזה מאוד עוסק.

  1. במסך 'התחלה מהירה', לוחצים על יציאה מהגרסה 'בקרה' > Git.
  2. מעתיקים את כתובת ה-URL המשוכפלת משעון עצר.
  3. מדביקים את כתובת ה-URL המשוכפלת בכתובת ה-URL של מאגר ההמרות ולוחצים על שכפול.
  4. במסך הבא לוחצים על כן.
  5. במסך הבא לוחצים על אישור.
  6. לוחצים על הלחצן Play כדי ליצור את הפרויקט ולהריץ אותו ב-Glass המחובר אליו. יש לבדוק את README של הדוגמה לקבלת פרטי הפעלה.

מה תלמדו

כאן תלמדו איך להשתמש ברכיבים מ-Android SDK כדי לבנות את רוב הפעילות השוטפת של שעון העצר, ולאחר מכן את התמ"ג כדי להתנסות ב-Glass. הנה רשימה של נושאים שעליהם תלמד:

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

עיצוב

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

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

זרימה של ממשק המשתמש

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

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

ממשק משתמש ראשי

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

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

פקודה קולית

עליכם להבין פקודה קולית בשלב די מוקדם בתהליך העיצוב. במידת הצורך, הפקודות הקוליות מאפשרות למשתמשים להפעיל את Glassware מתוך התפריט הקולי של Glas Home (כרטיס שעון), והוא חלק חשוב מהתכנון של Glassware.

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

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

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

פריסות כרטיסים

בין אם אתם מפתחים אפליקציות עומק או כרטיסים בשידור חי, כדאי להשתמש ב-CardBuilder או ב-XML Layouts כשאפשר.

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

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

פיתוח

כדי לפתח כרטיסים בשידור חי, אתם משתמשים באותם כלים שבהם השתמשתם לפיתוח Android כדי לבנות את רוב הכלים של Glassware, ולאחר מכן להשתמש בממשקי API בתוסף GDK כדי לגשת לפונקציונליות ספציפית ל-Glass, כמו כרטיסים בשידור חי ופקודות קוליות.

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

בחלק השני של הקטע 'פיתוח' מוסבר איך פועל שעון העצר והרכיבים העיקריים של הפרויקט שייבאתם לפני כן. כדאי להשתמש ב-Android Studio כבר עכשיו כדי שתוכלו לשמור על קשר. הערות לגבי קוד המקור עצמו, ולכן במאמר הזה מתוארת המטרה הגבוהה של כל קובץ וטיפים שימושיים שאפשר ליישם ב-Glassware.

פקודה קולית

תוכלו ליצור פקודות קוליות בעזרת קובץ משאב של XML שמציין את הפקודה שבה משתמשים, ולאחר מכן לציין את משאב ה-XML בקובץ AndroidManifest.xml.

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

  • res/xml/voice_trigger_start.xml – הצהרה על הפקודה הקולית שבה רוצים להשתמש.
  • AndroidManifest.xml – הצהרה על שירות הכרטיס הפעיל כך שהפקודות הקוליות יוקראו בקול.

תצוגת ספירה לאחור

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

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

  • res/layout/card_countdown.xml - מגדיר את הפריסה של מציג הספירה לאחור
  • src/com/google/android/glass/sample/stopwatch/CountDownView.java- מגדיר את התצוגה של הספירה לאחור.

תצוגה כרונומטרית

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

  • res/layout/card_chronometer.xml - הגדרת הפריסה של תצוגת שעון העצר
  • src/com/google/android/glass/sample/stopwatch/ChronometerDrawer.java - הגדרת אופן העיבוד של התצוגה. השירות של כרטיס בזמן אמת קורא לקורס הזה כדי למשוך את שירות הכרטיסים החיים.
  • src/com/google/android/glass/sample/stopwatch/ChronometerView.java – תצוגת שעון העצר שמשתמשת בפריסה הקודמת כממשק המשתמש.

שירות שעון עצר

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

  • src/com/google/android/glass/sample/stopwatch/StopwatchService.java - ניהול הכרטיס הפעיל של שעון העצר וטיפול במחזור החיים של השירות.

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

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

  • src/com/google/android/glass/sample/stopwatch/MenuActivity.java - הצהרה על הפעילות השקופה של התפריט, שמציגה מיד את התפריט כשהפעילות גלויה.
  • res/values/styles.xml - מגדיר את הסגנון השקוף שחל על התפריט.
  • res/menu/stopwatch.xml - המשאב של התפריט שמכיל את פריט התפריט Stop הנדרש.

מניפסט Android

הקובץ AndroidManifest.xml מתאר את הרכיבים העיקריים של Glassware, כך שהמערכת יודעת כיצד להפעיל אותו. המניפסט של Charasdes מצהיר על הדברים הבאים:

  • הסמל והשם של Glassware. Glass מציג את המידע הזה בתפריט המגע הראשי, אם יותר מ-Glassware אחת מגיבה לאותה פקודה קולית.
  • כל השירותים והפעילויות המשויכים לשעון העצר. פעולה זו נדרשת כדי שהמערכת תדע איך להפעיל את הרכיבים של Glassware.
  • הפקודה הקולית ומסנן Intent שמפעילים את שירות הכרטיס בזמן אמת כשהפקודה הקולית מוקראת.
  • קוד גרסה של Glassware. צריך לעדכן את הקוד הזה (ובדרך כלל גם את שם הגרסה) בכל פעם שמועלה גרסה חדשה של ה-APK הזה ל-MyGlass.