העברה לממשק DriverStatusListener
בגרסה 5 של Driver, הודענו על הוצאה משימוש של הממשק StatusListener לטובת DriverStatusListener. השנה אנחנו מוחקים באופן רשמי את הממשק של StatusListener. בStatusListener
הוצאה משימוש
יש מדריך להעברה לממשק החדש.
העברה ל-Kotlin 2.0
אם אתם משתמשים ב-Driver SDK ל-Android 6.0 ואילך, אתם צריכים לשדרג ל-Kotlin 2.0. בדף הזה מוסבר איך לעבור בקלות לגרסה החדשה של Kotlin.
תאימות של Gradle ו-AGP
ל-Kotlin 2.0 יש דרישות לגבי הגרסאות המינימליות והמקסימליות של Gradle ופלאגין של Android Gradle (AGP). חשוב לוודא שהפרויקט עומד בדרישות הבאות של Kotlin 2.0.
הגרסה המינימלית של AGP ל-Driver SDK 6.0 ואילך
מומלץ להשתמש ב-AGP 7.3 ומעלה עם Driver SDK 6.0.
מצב מלא של R8
גרסה 6 ומטה של Driver SDK לא תומכת במצב R8 מלא. אם האפליקציה שלכם מיועדת ל-AGP 8.0 ומעלה, אתם צריכים להשבית באופן מפורש את מצב R8 המלא.
# settings.gradle
android.enableR8.fullMode=false
תאימות לגרסת Kotlin
Kotlin תומכת בתאימות לאחור עם שלוש גרסאות קודמות של השפה. המשמעות היא שאם אתם כבר משתמשים ב-Kotlin בגרסה 1.7 ואילך עם Driver SDK, תוכלו לשדרג ל-Kotlin בגרסה 2.0 בלי שתצטרכו לפתור את כל השינויים שגורמים לבעיות. עם זאת, התאימות ל-Kotlin חלה רק על תכונות שפה יציבות. אם אתם משתמשים בתכונות אלפא, בטא או ניסיוניות בשפת Kotlin, יכול להיות שתצטרכו לבצע שינויים נוספים כשמשדרגים.
התרעות תאימות ל-Kotlin
כמו שצוין בקטע הקודם, כשמשדרגים את Kotlin, המערכת תומכת בעד 3 גרסאות קודמות של השפה. Kotlin מספקת שני דגלים שעוזרים להגביל שינויים שעלולים לשבור את הקוד:
גרסת השפה X.Y
הדגל הזה מחזיר שינויים שגורמים לבעיות בהתנהגות של גרסה קודמת של Kotlin.
לדוגמה, אם אתם משתמשים ב-Kotlin 1.7, אתם יכולים לציין [ -
language-version 1.7] והשינויים החדשים שגורמים לבעיות לא יחולו יותר:
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
הדגל הזה מונע שימוש בממשקי API חדשים לפני שהקוד התלוי במורד הזרם מוכן לשילוב של Kotlin 2.0.
android {
kotlinOptions {
apiVersion = '1.7'
}
}
גישה ממוקדת יותר
בנוסף לשימוש בדגלי תאימות של Kotlin, מומלץ לעיין בהערות הגרסה של Kotlin ולבחור את ההתנהגויות שרוצים לשמור מהגרסה שממנה משדרגים. במדריכי התאימות של Kotlin לכל גרסה מופיעה רשימה של שינויים שעלולים לשבור תאימות ודגלים שאפשר להגדיר כדי לשמור על ההתנהגות המקורית: