| סוג קובץ | APK |
|---|---|
| גִרְסָה | Preview |
| מוֹצִיא לָאוֹר | |
| תאריך הוצאה | 25 באוק׳ 2017 |
| תאריך הוסף | 25 באוק׳ 2017 |
| דרישות Os | Android |
| דרישות | Only compatible with the Nexus 5X, Nexus 6P, Pixel C, Pixel, Pixel XL, Pixel 2, and Pixel 2 XL. |
| סה"כ הורדות | 1,002 |
| הורדות בשבוע | 8 |
| מחיר | Free |
תיאור
Android O מציגה מגוון תכונות ויכולות חדשות עבור משתמשים ומפתחים. מסמך זה מדגיש מה חדש עבור מפתחים.
הקפד לבדוק את Android O Behavior Changes כדי ללמוד על תחומים שבהם שינויים בפלטפורמה עשויים להשפיע על האפליקציות שלך.
API של רשתות עצביות
ה- Neural Networks API (NNAPI) מספק לאפליקציות האצת חומרה עבור פעולות למידת מכונה במכשיר. ה-API תומך ביצירה, הידור וביצוע של מודלים במכשיר. אפליקציות בדרך כלל אינן משתמשות ב-NNAPI ישירות; במקום זאת, NNAPI אמור להיקרא על ידי ספריות, מסגרות וכלים למידת מכונה המאפשרים למפתחים לאמן את הדגמים שלהם ולפרוס אותם במכשירי אנדרואיד.
למידע נוסף על ה-API של Neural Networks, עיין במסמכי העזר של Neural Networks API ובמדריך למפתחים של Neural Networks API.
התראות
Android 8.1 Developer Preview 1 כולל את השינויים הבאים בהתראות:
אפליקציות יכולות כעת להשמיע התראה רק פעם בשנייה. צלילי התראה העולים על קצב זה אינם מונחים בתור ואובדים. שינוי זה אינו משפיע על היבטים אחרים של התנהגות הודעות והודעות הודעות עדיין מתפרסמות כצפוי.
NotificationListenerService ו-ConditionProviderService אינם נתמכים במכשירים בעלי נפח אנדרואיד נמוך שמחזירים true כאשר נקרא ActivityManager.isLowRamDevice().
מיקוד משופר עבור התקני RAM נמוך
אנדרואיד 8.1 (רמת API 27) מוסיף שני קבועים חדשים של תכונות חומרה, FEATURE_RAM_LOW ו-FEATURE_RAM_NORMAL, למנהל החבילות. הקבועים האלה מאפשרים לך למקד את התפלגות האפליקציות ופיצולי ה-APK שלך להתקני RAM רגילים או נמוכים.
קבועים אלה מאפשרים לחנות Play לקדם חווית משתמש טובה יותר על ידי הדגשת אפליקציות המותאמות במיוחד ליכולות של מכשיר נתון.
עדכוני מסגרת מילוי אוטומטי
תצוגה מקדימה למפתחים של Android 8.1 (רמת API 27) מספקת מספר שיפורים למסגרת המילוי האוטומטי שתוכל לשלב באפליקציות שלך.
התצוגה המקדימה של המפתחים מוסיפה תמיכה בתיאורים מותאמים אישית שמערכת אנדרואיד מציגה בממשק השמירה של המילוי האוטומטי במקום הייצוג המקורי של הנתונים. זה שימושי, למשל, כאשר אתה רוצה להסוות מספר כרטיס אשראי ולהציג רק את ארבע הספרות האחרונות. למידע נוסף, עיין במחלקה CustomDescription.
התצוגה המקדימה של המפתחים מאפשרת לך לציין אובייקט Validator שהאפליקציה שלך יכולה להשתמש בו כדי להחליט אם מערכת אנדרואיד צריכה להציג את ממשק המשתמש לשמירה במילוי אוטומטי. פונקציונליות זו מסופקת על ידי שיטת setValidator() של המחלקה SaveInfo.Builder.
המחלקה BaseAdapter ב-Developer Preview כוללת את שיטת setAutofillOptions() המאפשרת לספק ייצוגי מחרוזת של הערכים במתאם. זה שימושי עבור פקדי ספינר שמייצרים באופן דינמי את הערכים במתאמים שלהם. לדוגמה, אתה יכול להשתמש בשיטת thesetAutofillOptions() כדי לספק ייצוג מחרוזת של רשימת השנים שהמשתמשים יכולים לבחור כחלק מתאריך תפוגה של כרטיס אשראי. שירותי מילוי אוטומטי יכולים להשתמש בייצוג המחרוזת כדי למלא כראוי את התצוגות הדורשות את הנתונים.
בנוסף, המחלקה AutofillManager כוללת את השיטה notifyViewVisibilityChanged(View, int, boolean) שניתן לקרוא לה כדי להודיע למסגרת על שינויים בנראות של תצוגה במבנה וירטואלי. יש גם עומס יתר של השיטה עבור מבנים לא וירטואליים. עם זאת, מבנים לא וירטואליים בדרך כלל אינם דורשים ממך להודיע במפורש למסגרת מכיוון שהמתודה כבר נקראת על ידי המחלקה View.
עדכון EditText
החל מרמת API 27, השיטה EditText.getText() מחזירה עריכה; בעבר זה החזיר CharSequence. שינוי זה תואם לאחור, שכן Editable מיישמת CharSequence.
הממשק הניתן לעריכה מספק פונקציונליות נוספת בעלת ערך. לדוגמה, מכיוון ש-Editable מיישם גם את ממשק Spannable, אתה יכול להחיל סימון על תוכן בתוך מופע של EditText.
פעולות גלישה בטוחה פרוגרמטית
על ידי שימוש ביישום WebView של ממשק ה-API של גלישה בטוחה, האפליקציה שלך יכולה לזהות מתי מופע של WebView מנסה לנווט לכתובת URL ש-Google סיווגה כאיום ידוע. כברירת מחדל, ה-WebView מציג מודעת ביניים, כפי שמוצג באיור 1, המזהיר את המשתמש מפני האיום הידוע ונותן לו את האפשרות לטעון את כתובת ה-URL בכל מקרה או לחזור לדף קודם בטוח.
ב-Android 8.1 Developer Preview, אתה יכול להגדיר באופן פרוגרמטי כיצד האפליקציה שלך מגיבה לאיום ידוע:
אתה יכול לשלוט אם האפליקציה שלך מדווחת על איומים ידועים לגלישה בטוחה.
אתה יכול לגרום לאפליקציה שלך לבצע פעולה מסוימת באופן אוטומטי - כמו חזרה לבטיחות - בכל פעם שהיא נתקלת בכתובת אתר שגלישה בטוחה מסווגת כאיום ידוע.
הערה: להגנה מיטבית מפני איומים ידועים, המתן עד שתתחיל את הגלישה הבטוחה לפני שתפעיל את שיטת loadUrl() של אובייקט WebView.
מחלץ תמונות ממוזערות של וידאו
למחלקה MediaMetadataRetriever יש שיטה חדשה, getScaledFrameAtTime(), שמוצאת מסגרת ליד מיקום זמן נתון ומחזירה מפת סיביות עם יחס רוחב-גובה זהה לזה של מסגרת המקור, אך מותאמת להתאים למלבן ברוחב וגובה נתונים. זה שימושי ליצירת תמונות ממוזערות מווידאו.
אנו ממליצים להשתמש בשיטה זו ולא ב-getFrameAtTime() שעלולה לבזבז זיכרון מכיוון שהיא מחזירה מפת סיביות עם אותה רזולוציה כמו סרטון המקור. לדוגמה, מסגרת מסרטון 4K תהיה מפת סיביות של 16MB, גדולה בהרבה ממה שתזדקק לתמונה ממוזערת.
API של זיכרון משותף
אנדרואיד 8.1 (API רמה 27) מציגה מחלקה חדשה של SharedMemory. מחלקה זו מאפשרת לך ליצור, למפות ולנהל זיכרון משותף אנונימי שיכול לשמש מספר תהליכים או אפליקציות.
ממשק API של צבעי טפט
תצוגה מקדימה למפתחים של Android 8.1 (רמת API 27) מוסיפה תמיכה בניהול צבעי טפטים. תכונה זו מאפשרת לך ליצור אובייקט WallpaperColors ממפת סיביות, ציור, או באמצעות שלושת הצבעים הראשונים המייצגים מבחינה ויזואלית. אתה יכול גם לאחזר פרטים של שלושת הצבעים הראשונים של טפט.
כדי ליצור אובייקט WallpaperColors, בצע אחת מהפעולות הבאות:
כדי ליצור אובייקט WallpaperColors באמצעות שלושה צבעים, צור מופע של המחלקה WallpaperColors על ידי העברת הצבע הראשי, המשני והשלישוני. אסור שהצבע הראשי יהיה ריק.
כדי ליצור אובייקט WallpaperColors ממפת סיביות, קרא למתודה fromBitmap() על ידי העברת מקור מפת הסיביות כפרמטר.
כדי ליצור אובייקט WallpaperColors מ- drawable, קרא למתודה fromDrawable() על ידי העברת המקור הניתן לצייר כפרמטר.
כדי לאחזר את פרטי הצבע הראשי, המשני או השלישוני מהטפט, התקשר לשיטות הבאות:
getPrimaryColor() מחזירה את הצבע הבולט ביותר של הטפט.
getSecondaryColor() מחזירה את הצבע השני הבולט ביותר של הטפט.
שיטת getTertiaryColor() מחזירה את הצבע השלישי הבולט ביותר של הטפט
כדי להודיע למערכת על שינויים משמעותיים בצבע, קרא למתודה notifyColorsChanged() . שיטה זו מפעילה אירוע מחזור חיים onComputeColors() שבו יש לך הזדמנות לספק אובייקט WallpaperColors חדש.
כדי להוסיף מאזין לשינויי צבע, אתה יכול לקרוא למתודה addOnColorsChangedListener() . אתה יכול גם לקרוא לשיטת getWallpaperColors() כדי לאחזר את הצבעים העיקריים של טפט.
עדכוני טביעת אצבע
המחלקה FingerprintManager הציגה את קודי השגיאה הבאים:
FINGERPRINT_ERROR_LOCKOUT_PERMANENT - המשתמש ניסה פעמים רבות מדי לבטל את נעילת המכשיר שלו באמצעות קורא טביעות האצבע.
FINGERPRINT_ERROR_VENDOR - אירעה שגיאה בקורא טביעות אצבע ספציפי לספק.