நான் ஏன் இன்னும் API நிலை 34 எச்சரிக்கையைப் பார்க்கிறேன்?
Flutter மேம்பாட்டில், புதிய அம்சங்கள் மற்றும் பாதுகாப்பு மேம்படுத்தல்களுடன் ஆப்ஸ் இணக்கத்தன்மையை உறுதிசெய்வதற்கு மிகச் சமீபத்திய Android API அளவைக் குறிவைப்பது மிகவும் முக்கியமானது. சமீபத்தில், targetSdkVersion ஐ API நிலை 34 (Android 14) க்கு மாற்றிய பிறகு, டெவலப்பர்கள், வெற்றிகரமான உருவாக்கம் இருந்தபோதிலும், பயன்பாடு ஆண்ட்ராய்டு 14 அல்லது அதற்கு மேற்பட்டதை இலக்காகக் கொள்ள வேண்டும் என்று Play கன்சோல் எச்சரிக்கிறது.
இந்த ஏற்றத்தாழ்வு குழப்பத்தை ஏற்படுத்தலாம், குறிப்பாக முந்தைய ஆப்ஸ் தொகுப்புகள் கன்சோலில் இயங்கும்போது. உங்கள் Flutter பயன்பாட்டை திறம்பட வெளியிடுவதற்கு முந்தைய பதிப்புகள் தற்போதைய பதிவேற்றத்தை எவ்வாறு பாதிக்கின்றன என்பதைப் புரிந்துகொள்வதும் இந்த எச்சரிக்கையை நிவர்த்தி செய்வதும் முக்கியமானதாகும்.
கட்டளை | விளக்கம் |
---|---|
compileSdkVersion | பயன்பாட்டைத் தொகுக்கப் பயன்படுத்தப்படும் API அளவைத் தீர்மானிக்கிறது. இந்த வழக்கில், இது 34 ஆக அமைக்கப்பட்டுள்ளது, இது ஆண்ட்ராய்டு 14 ஐ குறிவைக்கிறது. |
targetSdkVersion | பயன்பாடு இயங்கும் Android API அளவை வரையறுக்கிறது. 34 க்கு புதுப்பித்தல் Android 14 உடன் இணக்கத்தன்மையை உறுதி செய்கிறது. |
google.auth.default() | பொதுவாக கிளவுட் சேவைகளுடன் இணைந்து பயன்படுத்தப்படும் Google APIகளை அணுகுவதற்கான இயல்புநிலை நற்சான்றிதழ்களை மீட்டெடுக்கிறது. |
build('androidpublisher', 'v3') | Google Play டெவலப்பர் API ஐத் துவக்குகிறது, இதனால் பயன்பாட்டு தொகுப்புகள் மற்றும் வெளியீடுகள் நிரல் ரீதியாக நிர்வகிக்கப்படும். |
service.edits().insert() | Google Play கன்சோலில் புதிய எடிட் அமர்வைத் திறக்கும், இது ஆப்ஸ் மெட்டாடேட்டா அல்லது பண்டில்களில் மாற்றங்களைச் செய்வதற்குத் தேவைப்படும். |
bundles = service.edits().bundles().list() | குறிப்பிட்ட ஆப்ஸ் பதிப்புடன் இணைக்கப்பட்ட அனைத்து ஆப்ஸ் தொகுப்புகளையும் பட்டியலிடுகிறது. பழைய பதிப்புகள் இன்னும் செயலில் உள்ளதா என்பதை ஸ்கிரிப்ட் தீர்மானிக்க அனுமதிக்கிறது. |
service.edits().bundles().delete() | Google Play கன்சோலில் இருந்து செயலில் உள்ள தொகுப்பை நீக்குகிறது. காலாவதியான அல்லது முரண்பட்ட கட்டிடங்களை நீக்குவதற்கு இது எளிது. |
service.edits().commit() | பயன்பாட்டின் உள்ளமைவு மற்றும் தொகுப்புகளுக்கான அனைத்து மாற்றங்களும் உட்பட, திருத்த அமர்வின் போது செய்யப்பட்ட மாற்றங்களைச் செய்கிறது. |
படபடப்பில் ஏபிஐ நிலை இலக்குக்கான தீர்வைப் புரிந்துகொள்வது
முதல் ஸ்கிரிப்ட் Flutter திட்டத்தின் ஆண்ட்ராய்டு அமைப்பை மாற்றியமைத்து, ஆப்ஸ் API நிலை 34ஐ சரியாக இலக்காகக் கொண்டுள்ளது என்பதை உறுதிப்படுத்துகிறது. compileSdkVersion மற்றும் targetSdkVersion ஆகியவை முக்கியமான கட்டளைகளாகும், இது தொகுத்தல் மற்றும் வரிசைப்படுத்தலின் போது பயன்படுத்தப்படும் Android SDK பதிப்புகளைக் குறிப்பிடுகிறது. compileSdkVersion ஐ 34 ஆக அமைப்பது, நிரல் Android 14 ஐப் பயன்படுத்தி கட்டமைக்கப்பட்டுள்ளது என்பதை உறுதிசெய்கிறது, அதேசமயம் targetSdkVersion ஆப்ஸ் இயங்குவதற்கு உத்தேசிக்கப்பட்ட Android பதிப்பைக் குறிப்பிடுகிறது. ஆதரிக்கப்படாத API நிலைகள் தொடர்பான எச்சரிக்கையை நீக்கி, சமீபத்திய Google Play Store சமர்ப்பிப்புத் தரநிலைகளைப் பூர்த்திசெய்ய இந்த மாற்றங்கள் திட்ட அமைப்புகளைப் புதுப்பிக்கின்றன.
இரண்டாவது ஸ்கிரிப்ட் Python வழியாக Google Play Console API உடன் தொடர்பு கொள்கிறது. சிக்கல்களை ஏற்படுத்தக்கூடிய பழைய மென்பொருள் தொகுப்புகளைக் கண்டறிந்து அகற்றும் செயல்முறையை இது தானியங்குபடுத்துகிறது. google.auth.default() Play Store API ஐ அணுகுவதற்கான இயல்புநிலை சான்றுகளை வழங்குகிறது, அதேசமயம் build('androidpublisher', 'v3') Google Play டெவலப்பர் API ஐ துவக்குகிறது. செயலில் உள்ள பயன்பாட்டுத் தொகுப்புகளைப் பெற ஸ்கிரிப்ட் service.edits().bundles().list() ஐப் பயன்படுத்துகிறது, மேலும் பழைய பதிப்பு கண்டுபிடிக்கப்பட்டால், service.edits().bundles().delete() அதை நீக்குகிறது. இறுதியாக, service.edits().commit() கட்டளையானது எல்லா மாற்றங்களையும் சேமித்து செயல்படுத்துகிறது, பிழை செய்தியை ஏற்படுத்தக்கூடிய காலாவதியான தொகுப்புகள் எதுவும் ஆப்ஸ் தெளிவாக உள்ளது என்பதை உறுதி செய்கிறது.
தீர்வு: Flutter Appsக்கான சரியான Target SDK நிலை புதுப்பிப்பை உறுதிசெய்யவும்.
Flutter (Dart) Android மேனிஃபெஸ்ட் புதுப்பிப்பு
android {
compileSdkVersion 34
defaultConfig {
applicationId "com.example.myapp"
minSdkVersion 21
targetSdkVersion 34
versionCode 1
versionName "1.0"
}
}
பின்புல ஸ்கிரிப்ட்: தொகுப்பு பதிப்பைச் சரிபார்த்தல் மற்றும் பழைய தொகுப்பை செயலிழக்கச் செய்தல்
செயலில் உள்ள பயன்பாட்டுத் தொகுப்புகளை நிர்வகிப்பதற்கான Google Play Console API (Python).
import google.auth
from googleapiclient.discovery import build
credentials, project = google.auth.default()
service = build('androidpublisher', 'v3', credentials=credentials)
package_name = 'com.example.myapp'
edit_id = service.edits().insert(body={}, packageName=package_name).execute()['id']
bundles = service.edits().bundles().list(packageName=package_name, editId=edit_id).execute()
for bundle in bundles['bundles']:
if bundle['versionCode'] == 1: # First build still active
service.edits().bundles().delete(packageName=package_name, editId=edit_id,
bundleId=bundle['id']).execute()
service.edits().commit(packageName=package_name, editId=edit_id).execute()
ஃப்ளட்டர் ஆப் அப்டேட்களில் முரண்பட்ட மூட்டைகளைத் தீர்க்கிறது.
Flutter ஆப்ஸின் targetSdkVersionஐப் புதுப்பிக்கும்போது ஒரு பொதுவான சிக்கல், Google Play கன்சோலில் இன்னும் செயலில் உள்ளதாகக் காட்டப்படும் பழைய ஆப்ஸ் தொகுப்புகள் இருப்பதுதான். இந்தத் தொகுப்புகள் காலாவதியாகிவிட்டாலும் கூட, "ஆப் ஆண்ட்ராய்டு 14 (API நிலை 34) அல்லது அதற்கும் அதிகமானதைக் குறிவைக்க வேண்டும்" போன்ற எச்சரிக்கைகளின் விளைவாக, மிகச் சமீபத்திய உருவாக்கம் சரியாக அங்கீகரிக்கப்படுவதைத் தடுக்கலாம். targetSdkVersion ஐ 34 ஆக மாற்ற வேண்டும், டெவலப்பர்கள் முந்தைய பதிப்புகள் புதுப்பிப்பு செயல்முறையை சீர்குலைக்கவில்லை என்பதை உறுதிப்படுத்த வேண்டும். பயன்பாட்டின் பதிப்புகளை நிர்வகித்தல், குறிப்பாக வழக்கற்றுப் போன தொகுப்புகளை நீக்குதல், இந்தச் சிக்கலைத் தீர்க்க உதவும்.
build.gradle கோப்பில் இலக்கு API அளவை சரியான முறையில் வரையறுப்பதுடன், செயலில் உள்ள பதிப்புகள் Google Play கன்சோலில் தொடர்ந்து மதிப்பாய்வு செய்யப்பட வேண்டும். டெவலப்பர்கள் Google Play Developer API போன்ற கருவிகளைப் பயன்படுத்த வேண்டும் அல்லது காலாவதியான தொகுப்புகளை கைமுறையாக முடக்க வேண்டும். பிளே ஸ்டோர் மிகச் சமீபத்திய உருவாக்க உள்ளமைவை துல்லியமாக பிரதிபலிக்கிறது என்பதை இது உறுதி செய்கிறது. புதுப்பிப்புகளுக்கான கடுமையான பதிப்பு அளவுகோல்களைப் பின்பற்றுவதற்கு Google Playக்கு பயன்பாடுகள் தேவைப்படுவதால், Play Console இல் உள்ள குறியீடு மற்றும் தொகுப்புகள் இரண்டையும் கட்டுப்படுத்துவது ஒரு சுமூகமான மாற்றத்திற்கு உத்தரவாதம் அளிக்கிறது மற்றும் தீர்க்கப்படாத API நிலை எச்சரிக்கைகளை எதிர்கொள்ளும் வாய்ப்பைக் குறைக்கிறது.
Flutter உடன் Android 14 API நிலை 34 ஐ குறிவைப்பது பற்றிய பொதுவான கேள்விகள்.
- targetSdkVersionஐப் புதுப்பித்தாலும் API நிலை எச்சரிக்கை ஏன் தொடர்கிறது?
- Play கன்சோலில் முந்தைய பயன்பாட்டுத் தொகுப்புகள் செயலில் உள்ளதாகக் குறிப்பிடப்பட்டிருந்தால், முரண்பாடுகள் ஏற்படலாம்.
- கூகுள் பிளே கன்சோலில் காலாவதியான பண்டில்களை எப்படி முடக்குவது?
- பழைய பதிப்புகளை செயலிழக்கச் செய்ய Google Play Developer API ஐப் பயன்படுத்தவும் அல்லது Play Console இடைமுகத்தைப் பயன்படுத்தி கைமுறையாகச் செய்யவும்.
- Flutter இல் targetSdkVersion இன் செயல்பாடு என்ன?
- இது உங்கள் நிரல் செயல்படும் API அளவைத் தீர்மானிக்கிறது, புதிய Android அம்சங்களுடன் இணக்கத்தன்மையை உறுதி செய்கிறது.
- compileSdkVersion மற்றும் targetSdkVersion ஆகியவற்றுக்கு இடையே உள்ள வேறுபாடு என்ன?
- compileSdkVersion தொகுப்பின் போது பயன்படுத்தப்படும் SDK பதிப்பைக் குறிப்பிடுகிறது, அதேசமயம் targetSdkVersion உங்கள் நிரல் இயக்க நேரத்தில் குறிவைக்கும் பதிப்பைக் குறிப்பிடுகிறது.
- ப்ளே கன்சோலில் தற்போது செயலில் உள்ள தொகுப்புகளை எப்படிப் பார்ப்பது?
- அவற்றை service.edits().bundles().list() மூலம் பட்டியலிடலாம் அல்லது நேரடியாக Play Console இல் பார்க்கலாம்.
API இலக்குச் சிக்கல்களைத் தீர்ப்பதற்கான முக்கிய குறிப்புகள்.
உங்கள் Flutter ஆப்ஸ் பொருத்தமான API அளவை இலக்காகக் கொண்டிருப்பதை உறுதிசெய்வது Play Store இணக்கத்திற்கு முக்கியமானது. இலக்குSdkVersion ஐ 34 க்கு புதுப்பித்து, Play Console இல் செயலில் உள்ள பயன்பாட்டுத் தொகுப்புகளின் விரிவான மதிப்பீடு செய்யப்பட வேண்டும். பழைய, முரண்பட்ட பதிப்புகள் சமீபத்திய உருவாக்கம் சரியாக அங்கீகரிக்கப்படுவதைத் தடுக்கலாம். Google Play Developer API போன்ற தொழில்நுட்பங்களைப் பயன்படுத்தி, டெவலப்பர்கள் வழக்கற்றுப் போன பண்டல்களை செயலிழக்கச் செய்யலாம், பொதுவான சிக்கலைச் சரிசெய்து, எச்சரிக்கைகள் இல்லாமல் விரைவான பயன்பாட்டு விநியோகத்தை உறுதிசெய்யலாம்.