הנחת הקרקע

Peter Conn
Peter Conn

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

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

  • בועות: כלי NodeJS שמאפשר למפתחים ליצור ולבנות APK ל-Android כולל PWA קיימת. האפליקציה שנוצרה מופעלת על ידי 'פעילויות מהימנות באינטרנט', אבל היא שקופה למפתחים. לא נדרש ניסיון בפיתוח Android. כדי להתחיל, יש לעיין במסמכי התיעוד של wrapwrap.
  • android-browser-helper: ספריית Android שכוללת את הפעילויות המהימנות באינטרנט של Google. מומלץ למפתחים שמכירים את הפיתוח של Android ורוצים להשתמש באינטרנט מהימן פעילויות כאחת מהפעילויות באפליקציה ל-Android או מבצעות התאמות אישיות שלא נתמך על ידי Arrowwrap. כדי להתחיל להשתמש בכלי העזר בדפדפן Android, כדאי לעיין במסמכי התיעוד ובהדגמות שלנו.

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

סקירה כללית של הספריות

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

  • androidx.browser, ספריית Android לאינטראקציה עם הדפדפן שמותקן במכשיר של המשתמש במכשיר.
  • Android Browser עוזר, ספריה של דפדפן androidx.browser לפעילות מהימנה באינטרנט לקוחות שמספקים שיטות נוחות וברירות מחדל הגיוניות.
  • בועות, כלי ליצירת פעילויות מהימנות באינטרנט מאפליקציות PWA בלי לגעת ב-Java

בנוסף, כל אחת מהספריות/הכלים האלה מחליפה ספרייה ישנה יותר:

היסטוריה

ספריית התמיכה של Android

ספריית התמיכה של Android מרחיבה את פלטפורמת Android עם תאימות וממשקי API חדשים לבינה מלאכותית גנרטיבית. היא מחולקת למספר חבילות, כאשר ספריית התמיכה בכרטיסיות מותאמות אישית כוללת פונקציונליות לאינטראקציה עם דפדפנים במערכת של המשתמש. הפיתוח של ספריית התמיכה לכרטיסיות מותאמות אישית בוצע בעיקר ב-custom-tabs-client מאגר GitHub, והשינויים יועברו אל ספריית התמיכה של Android.

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

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

AndroidX

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

חלק מהקוד שכתבנו ב-Tabs-client מתאים לספרייה של כיתות המסייעים של הפעילות באינטרנט, אבל לא ל-Android API. קוד שעוסק בבדיקת גרסאות לא עדכניות של Chrome, ומבקש מהמשתמש לעדכן או קבלת החלטות לגבי אופן האחסון של הנתונים לא ניתן להעביר אל AndroidX. לכן יצרנו ספרייה חלופית שתכיל את החלקים האלה של custom-tabs-client, לא יכולים להיכנס ל-androidx.browser, ולכן נולדה הכלי עוזר בדפדפן Android.

הכלי Android Browser עוזר נוצר כדי להכיל קוד שיכול להיות ספציפי לדפדפנים (לא רק Chrome, אנחנו פתוחים לכתיבת קוד ספציפית לדפדפנים אחרים) ויכולים לקבל החלטות קונקרטיות שהספריות לא אמורות. השתמשנו בהזדמנות הזו כדי להפריד באופן כללי את התפקידים של שתי הספריות הבאות:

  • androidx.browser מכיל את אבני הבניין הבסיסיות לאינטראקציה עם דפדפנים במערכת של המשתמש.
  • ה-Android Browser עוזר כולל הטמעות ברירת מחדל נוחות לשימוש והגיוניות.

אתחול

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

הראשון (והישן) הוא svgomg-twa, שהוא פרויקט Android שמתארח ב-GitHub מפעיל פעילות מהימנה באינטרנט. במקור הוא תוכנן להיות פרויקט להדגמה שהתפתח לשימוש בתבנית. המשתמשים יכולים לשכפל את המאגר ולשנות את הקובץ build.gradle כך שיפנה לאתר שלהם, ליצור אותו ולהפיק פעילות מהימנה באינטרנט בלי לגעת בקוד Java. (צריך להשקיע יותר מאמץ כדי לאמת את הקישורים לנכסים דיגיטליים. מידע נוסף זמין כאן).

svgomg-twa התחיל בהתאם ל-custom-tabs-client, אבל עבר ל-Android דפדפן עוזר (ובאופן זמני androidx.browser).

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

בעתיד הקרוב

אנחנו נוציא משימוש את svgomg-twa משתי סיבות:

  • בעיקרון, בועות יוצרות פרמטר svgomg-twa מלא בשביל המפתח. היא עושה את זה באופן אינטראקטיבי ויכולה להשתמש בהגדרות מקובץ מניפסט של אפליקציית אינטרנט (שזמין כ-PWA) סביר להניח שכבר יש לכם).
  • אם מפתחים רוצים מקורות מידע על התחלת פרויקט 'פעילות מהימנה באינטרנט', מההתחלה, הם יכולים לעיין בספריית הדגמות של Android Browser Helps.

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

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