Intereting Posts

Android заставляет приложения Кордовы перезагружаться при использовании плагинов Кордовы и Capture

Похоже, что существует общий сбой, который случается, когда приложения Cordova помещаются в фоновом режиме для использования плагинов Camera или Media Capture … служба активности Android, похоже, ищет память для освобождения и убивает деятельность Кордовы, так что когда Пользователь завершает задачу захвата приложением RESTARTS. Смотрите здесь SO-поток:

Камера PhoneGap перезапускает приложение

Это полный сбой UX и, скорее всего, не позволит мне освободить приложение Кордовы. Люди не любезно относятся к их потерянным фотографиям. Я использую Cordova 3.3 и несколько более старую версию плагина Capture в качестве обновления месяц назад, вызвав нарушения, и я откатился. В любом случае, похоже, что в какой-то момент кто-то создал пользовательский плагин, называемый камерой переднего плана, который никогда не позволял приложению перейти в состояние onStop, что устранило проблему:

https://code.google.com/p/foreground-camera-plugin/

К сожалению, этот пользовательский плагин ужасно устарел (Cordova 2.4). Можно ли изменить плагины родной Кордовы, чтобы предотвратить это ужасное поведение перезагрузки? Есть ли планы сделать это? Или это возможно только благодаря созданию совершенно нового подключаемого модуля камеры с нуля, который не использует приложение собственной камеры?

Я отправил в список разработчиков Cordova, но ответа пока нет. Любые мысли о том, как лучше всего разрешить эту ситуацию, приветствуются.

Благодарю.

Solutions Collecting From Web of "Android заставляет приложения Кордовы перезагружаться при использовании плагинов Кордовы и Capture"

Реализация надлежащего жизненного цикла приложения, по-видимому, является рекомендуемым способом решения этой проблемы:

http://cordova.apache.org/docs/en/dev/guide/platforms/android/index.html#what-makes-android-different

Возможно, вы сможете использовать один и тот же плагин для камеры с вашим приложением. Постарайтесь максимально сократить потребление ОЗУ до начала плагина.

  • Удаление скрытых узлов DOM
  • Бесплатная ОЗУ JavaScript, удаляя неиспользуемые объекты / экземпляры

У нас были проблемы на телефонах Android 2.3 с небольшой оперативной памятью. Освобождение всей возможной ОЗУ окончательно устранило проблему. Приложение было приостановлено, снимая фотографию, не убивая и не перезапуская.