U heeft misschien onlangs een e-mail ontvangen van de Google Play Store met de volgende tekst:
Update uw Play Core Maven afhankelijkheid naar een versie die compatible is met Android 14! Uw huidige Play Core bibliotheek is niet compatible met targetSdkVersion 34 (Android 14), wat een achterwaarts on compatibele verandering introduceert voor broadcast receivers om de gebruikersveiligheid te verbetern.als herinnering, vanaf 31 augustus, vereist Google Play alle nieuwe app-uitgaves om op Android 14 te richten. Update naar de nieuwste Play Core bibliotheek versie afhankelijkheid om app crashes te vermijden: https://developer.android.com/guide/playcore#playcore-migration
U kunt mogelijk geen toekomstige versies van uw app met deze SDK versie naar productie of open testen vrijgeven.
Het lijkt wel erg, maar niet zo verschrikkelijk als het uiterlijk lijkt.
Niet zo bang zijn. Het is eigenlijk eenvoudiger dan het lijkt.
Wat de Wijziging eigenlijk Over betreft
In principe heeft Google al begin 2022 nieuwe versies van de Play Core bibliotheek gestopt uit te brengen.
De laatste versie van de Play Core bibliotheek die werd uitgebracht
En vanaf april 2022 hebben ze de originele Play Core bibliotheek opgesplitst in vier aparte bibliotheken:
- Play Assets Delivery Library
- Play Feature Delivery Library
- Play In-App Reviews Library
- Play In-App Updates Library
Elke bibliotheek heeft haar eigen functionaliteit en verantwoordelijkheid.
Omdat de oudere core play bibliotheek alleen tot een bepaalde API-niveau ondersteund, moet u uw toepassing migraten naar de nieuwere bibliotheken die ondersteuning bieden voor de meest recente API-niveaus.
In de essentie moet u uitvinden welke functionaliteit van de originele core play bibliotheek u gebruikt en daarna de juiste onderdeel downloaden. Bijvoorbeeld, als u logica had om gebruikers te notificeren wanneer een nieuwere versie van uw toepassing beschikbaar was, moet u de Play In-App-Updates bibliotheek gebruiken.
We zullen hier twee gebruiksgevallen presenteren:
- Native Android-toepassing
- Flutter-toepassing
Gebruiksgeval – Native Android App
Als u een native Android-toepassing heeft, geschreven in Kotlin of Java, moet u het volgende doen:
- Open uw build.gradle-bestand op het niveau van de toepassing
- Het is waarschijnlijk dat u onder het blok afhankelijkheden dit zult zien:
implementation 'com.google.android.play:core-ktx:1.8.1'
-
U moet het verwijderen en vervangen door wat u in de vorige core-bibliotheek gebruikte
-
Als u de Play In-App-Updates bibliotheek moet gebruiken, moet u de volgende toevoegen aan het blok afhankelijkheden:
implementation 'com.google.android.play:app-update:2.1.0'
//Voeg de afhankelijkheid onderstaand toe als u Kotlin in uw toepassing gebruikt
implementation 'com.google.android.play:app-update-ktx:2.1.0'
- Herbouw uw toepassing en zie dat所有es zoals het moet werkt.
✋ U zou misschien ook de importaatstatements moeten veranderen van import com.google.android.play.core.tasks.*; naar import com.google.android.gms.tasks.*;.
Gebruiksgeval – Flutter-toepassing
Omdat Flutter een framework is dat zowel voor Android als iOS past, is dit scenario een beetje verschillend van het bovenstaande. Als u de waarschuwing krijgt om de core play library bij tewerken in uw Flutter-toepassing, moet u kijken naar de bibliotheken die u in uw pubspec.yaml-bestand gebruikt:
dependencies:
flutter:
sdk: flutter
...
in_app_update: ^3.0.0
Als u boven ziet, is de toepassing afhankelijk van de in_app_update-bibliotheek, die te maken heeft met het melden van gebruikers wanneer een nieuwere versie van de toepassing beschikbaar is. Wanneer we naar de changelog pagina van in_app_update op pub.dev gaan, zie we dat:
versie 4.1.0 voegde de vereiste ondersteuning toe
Dus moeten we ons pubspec.yaml-bestand bijwerken om die versie te gebruiken (minstens).
dependencies:
flutter:
sdk: flutter
...
in_app_update: ^4.1.0
Voer Pub get uit en u zou klaar moeten zijn.
Source:
https://www.freecodecamp.org/news/migrate-from-play-core-library/