Приложение выходит из строя, когда я обновляю приложение через UpdateManager, используя hockeyapp
У меня рушится приложение для Android, пока я обновляю приложение через hockeyapp UpdateManager.
Вот мой код обновления:
private void checkForUpdates() {
// Remove this for store builds!
UpdateManager.register(this, getResources().getString(R.string.hockey_app_id), new UpdateManagerListener() {
@Override
public void onNoUpdateAvailable() {
super.onNoUpdateAvailable();
// no update is available -> load login screen
// setFragment(R.id.container_login, new LoginFragment());
}
@Override
public void onUpdateAvailable(JSONArray data, String url) {
super.onUpdateAvailable(data, url);
}
}, true);
}
он показывает диалог обновления, но когда я нажал кнопку обновления, то после 100% загрузки приложения происходит сбой. Вот журнал сбоев:
onFatalError, ошибка обработки из engine(4) com.google.android.apps.gsa.shared.speech.ag: Ошибка чтения из входного потока на com.google.android.apps.gsa.staticplugins.recognizer.iaa(SourceFile:342)
Любая помощь будет оценена. Благодарю.
1 ответ
Я просто решил эту проблему путем поиска различных документов hockeyApp. Вот решение вышеуказанной проблемы:
Проверьте наличие обновлений:
private void checkForUpdates() {
StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
StrictMode.setVmPolicy(builder.build());
UpdateManager.register(this, getResources().getString(R.string.hockey_app_id), new UpdateManagerListener() {
@Override
public void onNoUpdateAvailable() {
super.onNoUpdateAvailable();
// no update is available -> load login screen
// setFragment(R.id.container_login, new LoginFragment());
}
@Override
public void onUpdateAvailable(JSONArray data, String url) {
super.onUpdateAvailable(data, url);
}
}, true);
}
Также необходимо отменить регистрацию Updatemanager в методе onPause() или onDestroy().
private void unregisterManagers() {
UpdateManager.unregister();
}
@Override
public void onPause() {
super.onPause();
unregisterManagers();
}
@Override
public void onDestroy() {
super.onDestroy();
unregisterManagers();
}
Это полное решение hockeyApp в функции обновления приложений.