निम्नलिखित कोड स्निपेट का उपयोग करके इन-ऐप अपडेट सुविधा लागू की गई:
private void showInAppUpdateDialog(boolean isMandatoryUpdate) {
Task<AppUpdateInfo> appUpdateInfoTask = appUpdateManager.getAppUpdateInfo();
appUpdateInfoTask.addOnSuccessListener(appUpdateInfo -> {
if (appUpdateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE
|| appUpdateInfo.updateAvailability() == UpdateAvailability.DEVELOPER_TRIGGERED_UPDATE_IN_PROGRESS) {
int appUpdateType = isMandatoryUpdate ? IMMEDIATE : AppUpdateType.FLEXIBLE;
int requestCode = isMandatoryUpdate ? REQUEST_APP_UPDATE_IMMEDIATE : REQUEST_APP_UPDATE_FLEXIBLE;
if (appUpdateInfo.isUpdateTypeAllowed(appUpdateType)) {
// start the app update
try {
appUpdateManager.startUpdateFlowForResult(appUpdateInfo, appUpdateType, targetActivity, requestCode);
} catch (IntentSender.SendIntentException e) {
e.printStackTrace();
}
}
}
}).addOnFailureListener(e -> {
e.printStackTrace();
});
}
मैं उस डिवाइस पर इन-ऐप अपडेट का परीक्षण कर रहा हूं जिसमें एंड्रॉइड 9 है। फिर भी, यह मुझे एक त्रुटि (ERROR_API_NOT_AVAILABLE) के बाद दे रहा है:
com.google.android.play.core.install.InstallException: Install Error(-3): The API is not available on this device. (https://developer.android.com/reference/com/google/android/play/core/install/model/InstallErrorCode#ERROR_API_NOT_AVAILABLE)
at com.google.android.play.core.appupdate.i.a(Unknown Source:24)
at com.google.android.play.core.internal.o.a(Unknown Source:13)
at com.google.android.play.core.internal.j.onTransact(Unknown Source:22)
at android.os.Binder.execTransact(Binder.java:731)
यह कह रहा है कि निम्नलिखित लिंक की जाँच करें: https://developer.android.com/reference/com/google/android/play/core/install/model/InstallErrorCode#ERROR_API_NOT_AVILABLE )
प्ले कोर लाइब्रेरी संस्करण का उपयोग करना: 1.6.5
नवीनतम मुख्य पुस्तकालय संस्करण:
implementation 'com.google.android.play:core:1.7.0'
हालाँकि, मैं यह नहीं कह पा रहा हूँ कि यह क्यों कह रहा है कि ERROR_API_NOT_AVAILABLE। किसी भी सहायता की सराहना की जाएगी!