PracticU

הסבר על Location and Maps

בלי כתוביותעם כתוביות
PracticU › קורס פיתוח אפליקציות - לאנדרואיד - Android - ב-JAVA › הסבר על Location and Maps
מילון מושגים:
הרשאה - קביעה אילו פעולות ומשאבים מותרים למשתמש או לתהליך לאחר שזהותו אומתה. שולטת במי רשאי לעשות מה.
Wi-Fi - טכנולוגיה לחיבור מכשירים לרשת ולאינטרנט באופן אלחוטי, בעזרת גלי רדיו.
שירות - תוכנה שרצה ברקע ומספקת פונקציונליות לרכיבים אחרים, לרוב ללא ממשק משתמש, ומופעלת אוטומטית עם המערכת.
API - ממשק תכנותי שמגדיר כיצד תוכנה אחת פונה לאחרת ומחליפה איתה נתונים ופעולות.

הסבר על Location and Maps
הרצאת פתיחה לנושא Location and Maps: איך מוגדר מיקום על כדור הארץ, אילו Location Providers יש באנדרואיד, מה ההבדל בין הרשאות המיקום, ואילו מצבי מיקום המכשיר מאפשר.
איך מוגדר מיקום
1. Latitude: המרחק צפונה או דרומה מקו המשווה. 0 הוא קו המשווה, ערכים חיוביים עד 90 מעלות צפונה, ושליליים עד מינוס 90 דרומה.
2. Longitude: המרחק מזרחה או מערבה מה-Prime Meridian העובר בגריניץ'. 0 הוא הקו עצמו, חיובי עד 180 מזרחה ושלילי עד מינוס 180 מערבה.
3. Geographical coordinate: זוג ערכים בפורמט latitude, פסיק, longitude (לדוגמה 32.0631864, 34.7906493). הסטנדרט כולל גם גובה (Altitude או Elevation), אבל באפליקציות רגילות הוא לא משנה.
Location Providers
1. GPS Provider: משתמש בצ'יפ ובלוויינים, צריך מינימום 4 לוויינים (בדרך כלל 8) וקו ישיר לשמיים. לכן לא עובד טוב בין בניינים גבוהים או בתוך מבנה. זולל הכי הרבה סוללה, אבל המדויק ביותר, בדרך כלל כ-6 מטר. הרשאה: Access Fine Location.
2. Network Provider: משתמש ברשת סלולרית או ב-Wi-Fi, גם בתוך מבנים. צריכת סוללה נמוכה, דיוק בדרך כלל כ-60 מטר. הרשאות: Fine או Coarse.
3. Passive Provider: משתמש במיקום שאפליקציות או שירותים אחרים מבקשים. לא צורך סוללה, הכי פחות מדויק, עד 1.5 ק"מ. הרשאה: Access Fine Location.
4. Fused Provider: API של גוגל שבוחר את הפרוביידר הטוב ביותר מבין השלושה. דורש תלות ב-Google Play Services, יכול לתת את המיקום האחרון הידוע או עדכונים שוטפים. הרשאה: Access Fine Location.
Fine מול Coarse
Access Fine Location נותנת את הדיוק הגבוה ביותר, למשל לאפליקציה שמחפשת חנויות קרובות. Access Coarse Location נותנת דיוק של בלוק עירוני ועד 1.5 ק"מ, ומתאימה למשל לאפליקציית מזג אוויר. בקשת Fine כוללת את Coarse.
מצבי המיקום במכשיר
- כבוי: רק ה-Passive זמין, ועובד אם אפליקציה אחרת מדווחת מיקום.
- High accuracy: כל שלושת הפרוביידרים זמינים.
- Battery saving: רק Network ו-Passive, בלי GPS.
- Device only: רק GPS ו-Passive, בלי Network.
בהרצאות הבאות נראה איך לעבוד עם הפרוביידרים בקוד, כולל Fused, איך להציג מיקום על מפה ואיך להשתמש ב-API של גוגל להצגת פרגמנט מפה.
כעת אפשר להבין מה כל פרוביידר נותן ואיזו הרשאה נדרשת.
השיעור הבא בקורס: Location Providers

פרקי ההרצאה: הסבר על Location and Maps

  1. 00:00

    מיקום המשתמש והצגתו על מפות

  2. 00:40

    מה זה Latitude

  3. 01:15

    Longitude וקו ה-Prime Meridian

  4. 02:31

    פורמט של Geographical Coordinate

  5. 03:20

    Altitude וגובה מעל פני הים

  6. 04:17

    Location Providers באנדרואיד

  7. 05:14

    GPS Provider - דיוק וצריכת סוללה

  8. 06:37

    Network Provider ועזרה מהרשת

תמלול ההרצאה: הסבר על Location and Maps

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

  1. 00:00

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

  2. 00:18

    קודם כל, מה זה בעצם מציאת Location על כדור הארץ? ראשית, כדור הארץ מחולק למען רשת של Latitudes וLongitudes. מיקום על כדור הארץ נקבע על ידי שני הערכים האלה, Latitude וLongitude.

  3. 00:40

    קודם כל, מה זה Latitude? Latitude זה המרחק צפונה או דרומה מקו המשווה. כאשר ה-Latitude 0 זה אומר שאנחנו בדיוק על קו המשווה של כדור הארץ.

  4. 00:55

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

  5. 01:24

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

  6. 01:46

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

  7. 02:14

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

  8. 02:31

    כאשר אנחנו מזרח המעקב זה אומר שאנחנו לונגיטיוד חיובי 0 עד 180 ומערבה לונגיטיוד שלילי 0 עד מינוס 180. Geographical coordinate זאת בעצם נקודה על כדור הארץ שנוצרת על ידי שני ערכים של latitude ולונגיטיוד.

  9. 02:56

    הפורמט של נקודה גיאוגרפית על כדור הארץ זה קודם כל latitude, לאחר מכן פסיק ולאחר מכן ערך ה-longitude. לדוגמה יש לנו כאן 32.0631864, פסיק 34.7906493.

  10. 03:20

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

  11. 03:53

    אפליקציות שאנחנו כותבים אז נקודת ה-altitude או ה-elevation היא לא משנה עבורנו ואנחנו לא מתייחסים אליה. אבל הסטנדרט Geographical Coordinate כמובן כולל גם את אותו גובה שהבן אדם יכול להיות מפני כדור הארץ.

  12. 04:12

    כאן אנחנו רואים את התשלובת של ה-latitude ושל ה-longitude ביחד בכדי ליצור ולמצוא נקודה ספציפית גיאוגרפית בכדור הארץ. מבחינתנו, באפליקציית אנדרואיד קיימים Location Providers, כלומר, אלמנטים שמאפשרים להביא לנו את מיקום המשתמש.

  13. 04:36

    בכדי לקבל את ה-Latitude ואת ה-Longitude של המשתמש, אנחנו יכולים להשתמש עם אחד או יותר מה-Location Providers. יש לנו GPS Provider, יש לנו Network Provider, ויש לנו Passive Provider.

  14. 04:52

    בשלב מאוחר יותר, גוגל יצאו עם API שמכיל מעין פרווידר נוסף, שנקרא Fused Provider, Fused זה מותח או משולב, שהפרווידר של גוגל משתמש עם שלושת הפרווידרים ה-Build-in שראינו כאן למעלה, בכדי לתת לנו את ה-Latitude וה-Longitude על ידי שימוש בפרווידר הטוב ביותר שנמצא באותו הרגע במכשיר.

  15. 05:19

    GPS Provider, GPS זה קיצור של Global Positioning System, GPS משתמש בצ'יפ פנימי שנמצא בתוך המכשיר, הצ'יפ הזה משתמש במידע שמגיע מלוויינים בכדי לגלות את המיקום, בדרך כלל אנחנו צריכים מינימום 4 עלוויינים בכדי באמת לקבל את המיקום הנכון, ברוב המקרים אנחנו משתמשים בשמונה לוויינים.

  16. 05:50

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

  17. 06:18

    GPS זולל הכי הרבה סוללה, אבל הוא הכי מדויק, בדרך כלל 6 מטר דיוק. לצורך שימוש ב-GPS Provider, אנחנו צריכים הרשאה שנקראת Access Find Location. Network Provider.

  18. 06:39

    יכול להשתמש גם בצ'יפ של ה-GPS, אבל גם עזרה מהרשת, במידה כמובן שה-GPS לדוגמה לא פעיל באותו הרגע. העזרה מהרשת יכולה להיות או מהרשת הסלולרית או מווי-פיי.

  19. 06:56

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

  20. 07:14

    וההרשאות הדרושות זה Access Fine Location או Access Chorus Location.

לקורס המלא: קורס פיתוח אפליקציות לאנדרואיד

ההרצאה הקודמת: Using Only One Activity

ההרצאה הבאה: Location Providers

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

  • אובייקט Location (שורת URL)
  • מפות בזמן אמת של תקיפות סייבר שמתבצעות עכשיו - Cyber Maps

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

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