PracticU

מצפן - Compass

בלי כתוביותעם כתוביות
PracticU › קורס PhoneGap - פיתוח אפליקציות לאנדרואיד ואייפון › מצפן - Compass
מילון מושגים:
פונקציה - קטע קוד בעל שם שמבצע משימה מוגדרת, מקבל ערכי קלט (פרמטרים) ויכול להחזיר תוצאה. מאפשרת לארגן קוד ולהשתמש בו שוב.
אובייקט - יחידה בתכנות מונחה עצמים שמאגדת נתונים (תכונות) ופעולות (מתודות). נוצר בדרך כלל ממחלקה המשמשת כתבנית.
JSON - פורמט טקסט קריא לייצוג נתונים מובְנים כזוגות מפתח-ערך, נפוץ להחלפת מידע בין שרת ללקוח.
תגית - סימון בקוד, למשל ב-HTML, שתוחם רכיב ומגדיר את תפקידו או תכונותיו. גם תווית לסימון וקיטלוג פריטים.
jQuery - ספריית JavaScript ותיקה שמפשטת את הגישה לרכיבי הדף, אירועים ואנימציות בדפדפן.
משתנה - שם שמפנה למקום בזיכרון שבו נשמר ערך שיכול להשתנות במהלך ריצת התוכנית, כמו מספר, טקסט או אובייקט.
אמולטור - תוכנה שמחקה מכשיר או סביבה אחרת, למשל כדי להריץ ולבדוק אפליקציית מובייל על המחשב.

מצפן - Compass
המצפן הוא חיישן נוסף שקיים בטלפון, ו-PhoneGap מאפשרת לקבל ממנו את כיוון הטלפון. המידע הזה שימושי למשחקים, להצגת מידע לפי כיוון ההליכה של המשתמש, ולכל אפליקציה שצריכה לדעת לאן הטלפון פונה.
השלבים העיקריים
1. קבלת כיוון חד-פעמי: הפונקציה navigator.compass.getCurrentHeading מחזירה את הכיוון המגנטי של הטלפון. היא מקבלת פונקציה להצלחה ופונקציה לכישלון, למקרה שהמצפן לא זמין.
2. הצגת התוצאה: את הכיוון המגנטי מציגים בהתראה, ובמקרה של שגיאה מציגים גם את השגיאה.
3. מעקב לאורך זמן: הפונקציה watchHeading מקבלת את אותן שתי פונקציות ואובייקט JSON שמגדיר את התדירות במילישניות. במקום התראה, הערך נכתב לתגית בעמוד באמצעות jQuery, יחד עם חותמת זמן.
4. עצירת המעקב: שומרים את מזהה ה-watch במשתנה, ובפונקציית העצירה קוראים ל-clearWatch עם המזהה ומאפסים אותו.
איך זה עובד
ערך המצפן הוא זווית בין 0 ל-360 מעלות. אפס פירושו צפון, 90 מזרח, 180 דרום ו-270 מערב. באמולטור הערך ברירת המחדל הוא 270, וניתן לשנות אותו בכלי הסימולציה.
שימו לב
הקוד של הדוגמה מציג התראה רק לקריאה הראשונה. מעקב שמציג התראה בכל שנייה אינו שימושי, ולכן מעדכנים תגית בעמוד.
בסיום השיעור אתם יודעים לקבל את כיוון הטלפון ולעדכן אותו בזמן אמת.
השיעור הבא בקורס: שימוש במצלמה של הטלפון הנייד

פרקי ההרצאה: מצפן - Compass

  1. 00:00

    הכרת חיישן המצפן ב-PhoneGap

  2. 00:38

    בניית לחצן GET HEADING

  3. 01:25

    קריאה ל-getCurrentHeading

  4. 02:33

    הצגת ה-magnetic heading

  5. 03:38

    מעקב כיוון עם watchHeading

  6. 04:21

    הצגת הכיוון בזמן אמת

תמלול ההרצאה: מצפן - Compass

הטקסט המלא של הדקות הראשונות בהרצאה «מצפן - Compass» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:01

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

  2. 00:14

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

  3. 00:35

    בואו נראה איך עושים את זה, אנחנו בונים אפליקציה, נגדיר את הכותרת כ-Compass מצפן, בואו נבנה פה איזשהו לחצן, נקרא לו getHeading, Heading זה בעצם הכיוון של המצפן של הטלפון, בדרך כלל המצפן יושב בחזית הטלפון, בראש של הטלפון בעצם, יש לנו פה function ומה שאנחנו צריכים לעשות זה פשוט

  4. 01:27

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

  5. 02:01

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

  6. 02:19

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

  7. 02:55

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

  8. 03:49

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

  9. 04:32

    בואו נסתכל שזה בדיוק השם הזה watch heading ומה שאנחנו רוצים לעשות כאן זה פעולה דומה למה שקרה מקודם אז בואו נעתיק את הקוד של מקודם ובפעם אנחנו רוצים לעשות משהו קצת שונה קודם כל אנחנו רוצים לקחת איזשהו משתנה שנקרא watchid לפתוח נ"ל המשתנה הזה בעצם מחזיק לנו איזשהו id של אותו watch או אותו timer שכל שנייה או כל פרק זמן שאנחנו מחליטים

  10. 05:16

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

  11. 05:52

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

  12. 06:25

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

לקורס המלא: קורס PhoneGap אונליין

ההרצאה הקודמת: Accelerometer

ההרצאה הבאה: שימוש במצלמה של הטלפון הנייד

הרצאות קשורות מקורסים אחרים

  • עבודה עם Compass ב- MongoDB
  • עבודה עם Compass - כממשק משתמש ל-MongoDB

קורסים נוספים במסלול

  • קורס יסודות התכנות - שפת JAVA - קורס ג'אווה למתחילים
  • קורס פיתוח אפליקציות - לאנדרואיד - Android - ב-JAVA
  • קורס פיתוח אפליקציות - לאייפון iPhone iOS - ב-Swift-Xcode
  • קורס פלאטר - Flutter - שפת DART של גוגל למובייל - פיתוח אפליקציות לאנדרואיד ואייפון