ממשקי API של Android 4.0.3

רמת ה-API: 15

Android 4.0.3‏ (ICE_CREAM_SANDWICH_MR1) הוא גרסה מצטברת של משפחת הפלטפורמות Android 4.0‏ (ICE_CREAM_SANDWICH). הגרסה הזו כוללת תכונות חדשות למשתמשים ולמפתחים, שינויים ב-API ותיקוני באגים שונים.

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

סקירה כללית על ממשקי API

בקטעים הבאים מופיעה סקירה כללית טכנית על ממשקי API חדשים ב-Android 4.0.3.

Social stream API ב-Contacts Provider

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

טבלת מסד הנתונים שמכילה את הפיד החברתי של איש קשר מסוים מוגדרת על ידי android.provider.ContactsContract.StreamItems, כאשר ה-Uri של הטבלה נמצא בתוך הספרייה ContactsContract.RawContacts שאליה שייכים פריטי הפיד. כל טבלה של פיד חברתי כוללת כמה עמודות של מטא-נתונים לגבי כל פריט בפיד, כמו סמל שמייצג את המקור (אווטאר), תווית של הפריט, תוכן הטקסט הראשי, תגובות על הפריט (כמו תשובות מאנשים אחרים) ועוד. תמונות שמשויכות לסטטוס מאוחסנות בטבלה אחרת, שמוגדרת על ידי android.provider.ContactsContract.StreamItemPhotos, שזמינה כספריית משנה של ה-Uri android.provider.ContactsContract.StreamItems.

מידע נוסף זמין במאמרים android.provider.ContactsContract.StreamItems ו-android.provider.ContactsContract.StreamItemPhotos.

כדי לקרוא או לכתוב פריטים בסטרים של רשתות חברתיות של איש קשר, האפליקציה צריכה לבקש הרשאה מהמשתמש על ידי הצהרה על <uses-permission android:name="android.permission.READ_SOCIAL_STREAM"> ו/או <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM"> בקובצי המניפסט שלה.

ספק היומן

ווידג'טים במסך הבית

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

בדיקת איות

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

    אפליקציות שמחוברות למסנן האיות יכולות להשתמש בדגל RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS בשילוב עם מאפייני הצעות אחרים, וגם בשיטות getSuggestionsAttributes() ו-getSuggestionsCount(), כדי לקבוע אם לסמן מילות קלט כטעויות הקלדה ולהציע הצעות.

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

‫Bluetooth

השיטות הציבוריות החדשות fetchUuidsWithSdp() ו-getUuids() מאפשרות לאפליקציות לקבוע אילו תכונות (מזהי UUID) נתמכות במכשיר מרוחק. במקרה של fetchUuidsWithSdp(), המערכת מבצעת גילוי שירות במכשיר המרוחק כדי לקבל את מזהי ה-UUID הנתמכים, ואז משדרת את התוצאה בכוונה ACTION_UUID.

ערכת כלים לבניית ממשק משתמש

השיטות החדשות setUserVisibleHint() ו-getUserVisibleHint() מאפשרות להגדיר בחלקיק רמז לגבי החשיפה שלו למשתמשים. המערכת משהה את הטעינה של קטעי קוד שלא גלויים למשתמשים עד שהמטענים של קטעי הקוד הגלויים יפעלו. הערך של הטיפים לגבי החשיפה הוא 'true' כברירת מחדל.

גרפיקה

נגישות

  • לקוחות של RemoteViews יכולים עכשיו להשתמש בשיטה setContentDescription() כדי להגדיר ולקבל את תיאור התוכן של כל תצוגה (View) בפריסה המורחבת.
  • השיטות getMaxScrollX(),‏ getMaxScrollY(),‏ setMaxScrollX() ו-setMaxScrollY() מאפשרות לאפליקציות לקבל ולהגדיר את ההזזה המקסימלית בגלילה של אובייקט AccessibilityRecord.
  • כשמצב הניווט במגע מופעל, הגדרה מאובטחת חדשה ACCESSIBILITY_SPEAK_PASSWORD מציינת אם המשתמש מבקש מ-IME לקרוא טקסט שהוזן בשדות של סיסמאות, גם אם לא משתמשים באוזניות. כברירת מחדל, הטקסט של הסיסמה לא מוקרא אלא אם משתמשים באוזניות.

טקסט לדיבור

  • הוספת השיטה החדשה getFeatures() לשליחת שאילתות ולהפעלת תמיכה ב-TTS ברשת.
  • הוספה של סוג חדש של מאזין, UtteranceProgressListener, שמנועי חיפוש יכולים להירשם אליו כדי לקבל התראות על שגיאות בסנתז דיבור.

מסד נתונים

  • סוג חדש של CrossProcessCursorWrapper מאפשר לספקים של תוכן להחזיר תוצאות לשאילתה חוצת-תהליכים בצורה יעילה יותר. הכיתה החדשה היא אבן בניין שימושית לעטיפות של סמלי הסמן שיישלחו לתהליכים מרחוק. הוא יכול גם להמיר אובייקטים רגילים מסוג Cursor לאובייקטים מסוג CrossProcessCursor באופן שקוף.

    בכיתה CrossProcessCursorWrapper מתוקנות בעיות ביצועים נפוצות ובאגים שנתקלו בהם אפליקציות במהלך הטמעת ספקי תוכן.

  • ה-constructor של CursorWindow(java.lang.String) מקבל עכשיו מחרוזת שם כקלט. המערכת כבר לא מבדילה בין חלונות של סמן מקומי לבין חלונות של סמן מרוחק, ולכן CursorWindow(boolean) הוצא משימוש.

כוונות

נוספו קטגוריות חדשות לטירגוט של סוגים נפוצים של אפליקציות במכשיר, כמו CATEGORY_APP_BROWSER,‏ CATEGORY_APP_CALENDAR,‏ CATEGORY_APP_MAPS ועוד.

מצלמה

הרשאות

אלה ההרשאות החדשות:

  • android.Manifest.permission#READ_SOCIAL_STREAM ו-android.Manifest.permission#WRITE_SOCIAL_STREAM: מאפשרות למתאם סנכרון לקרוא ולכתוב נתונים של פיד חברתי לאיש קשר בספק אנשי הקשר המשותף.

בדוח ההבדלים בין ממשקי ה-API תוכלו למצוא פירוט של כל השינויים ב-API ב-Android 4.0.3 (רמת API 15).

רמת ה-API

ל-Android 4.0.3 API מוקצה מזהה שלם – 15 – שנשמר במערכת עצמה. המזהה הזה, שנקרא 'רמת ה-API', מאפשר למערכת לקבוע בצורה נכונה אם אפליקציה תואמת למערכת, לפני התקנת האפליקציה.

כדי להשתמש בממשקי API שהוצגו ב-Android 4.0.3 באפליקציה, צריך לקמפל את האפליקציה לפלטפורמת Android שתומכת ברמת API 15 ואילך. בהתאם לצרכים שלכם, יכול להיות שתצטרכו להוסיף גם מאפיין android:minSdkVersion="15" לאלמנט <uses-sdk>.

מידע נוסף זמין במסמך רמות API.