שוברים את הדברים לפני שאתם מקבלים את המייל הבא מחנות Google Play:

עדכן את תלות ה-Maven של Play Core לגרסה תואמת עם Android 14! הספריה הנוכחית של Play Core אינה תואמת עם targetSdkVersion 34 (Android 14), שמביאה שינוי לא תואם אחורה בקולטני השידורים כדי לשפר את ביטחונם של המשתמשים. כפרטל, מאוחר יותר מ-31 באוגוסט, חנות Google Play דורשת מכל השחרורים החדשים של האפליקציה להיות מכוונים ל-Android 14. עדכן את הגרסה האחרונה של תלות הספריה של Play Core כדי למנוע קריסות של אפליקציות: https://developer.android.com/guide/playcore#playcore-migration

אולי לא תוכל לשחרר גרסאות עתידיות של האפליקציה שלך עם גרסת ה-SDK הזו לייצור או בדיקה פתוחה.

זה מפחיד, נכון?

אל תדאג יותר מדי. למעשה זה קל יותר ממה שנראה.

מהו השינוי בעצם עליו נגע:

בעיקרון, גוגל הפסיקה לשחרר גרסאות חדשות של ספריית Play Core בתחילת 2022.

הגרסה האחרונה של ספריית Play Core שנשחררה

ומאפריל 2022, הם פירקו את הספריה המקורית של Play Core לארבעה ספריות נפרדות:

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

לכל ספרייה יש פונקציונליות ואחריות משלה.

מאחר והספרייה הישנה של core play תומכת רק עד רמת API מסוימת, עליך להעביר את היישום שלך לשימוש בספריות החדשות שתומכות ברמות ה-API העדכניות ביותר.

בעיקרון, עליך להבין איזו פונקציונליות של ספריית core play המקורית אתה משתמש ואז להוריד את החלק הנכון. לדוגמה, אם הייתה לך לוגיקה להודיע למשתמשים כאשר גרסה חדשה של היישום שלך זמינה, עליך לקחת את ספריית Play In-App-Updates.

נציג כאן שני מקרי שימוש:

  • יישום אנדרואיד מקורי
  • יישום Flutter

מקרה שימוש – יישום אנדרואיד מקורי

אם יש לך יישום אנדרואיד מקורי, בין אם הוא כתוב ב-Kotlin או Java, עליך לבצע את הפעולות הבאות:

  1. פתח את קובץ build.gradle ברמת היישום שלך
  2. סביר להניח שתראה תחת בלוק התלויות, את השורה הזו:
implementation 'com.google.android.play:core-ktx:1.8.1'
  1. יהיה עליך להסיר אותה ולהחליף אותה בהתאם למה שהשתמשת בספריית הליבה הקודמת

  2. אם עליך לקחת את ספריית Play In-App-Updates, אז עליך להוסיף את השורות הללו לבלוק התלויות:

implementation 'com.google.android.play:app-update:2.1.0'
//הוסף את התלות למטה אם אתה משתמש ב-Kotlin ביישום שלך
implementation 'com.google.android.play:app-update-ktx:2.1.0'
  1. בנה שוב את היישומך וראה שהכל פועל כפי שצריך.

✋ עליך גם לשנות את הציונים האימוץ מimport com.google.android.play.core.tasks.*; לimport com.google.android.gms.tasks.*;.

משהו להשתמש בו – יישום Flutter

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

dependencies:
  flutter:
    sdk: flutter
  ...
  in_app_update: ^3.0.0

כפי שאתה יכול לראות למעלה, היישום שלך תלוי בספקטרin_app_update, שקשור להדגישה למשתמשים שיופעל דברים חדשים ביישום. כשאנחנו מתקדמים אל עבודת השינויים של in_app_update על דף pub.dev השינויים, אנחנו יכולים לראות ש:


הגדרה 4.1.0 הוספה את התמיכה הנחוצה

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

dependencies:
  flutter:
    sdk: flutter
  ...
  in_app_update: ^4.1.0

בואו וביצעו Pub get ותהיה מוכן.