Как показать / скрыть другие приложения, открытые urlscheme с cordova? - PullRequest
0 голосов
/ 01 октября 2019

У меня есть два приложения, созданные с помощью cordova, и моей целевой платформой является только Android.

  • Приложение 1 откроет Приложение 2.
  • После выполнения некоторых действий Приложение 2 будет скрыто(не остановлено!) и приложение 1 должно быть показано снова.
  • Когда пользователь примет решение, можно будет снова открыть Приложение 2.

Текущий подход: я использую cordova-plugin-customurlscheme и cordova-plugin-inappbrowser, чтобы открыть другойприменение. Но для открытия другого приложения в inappbrowser требуется браузер _system.

Проблема: Когда я открываю приложение с помощью _system, у меня нет никакого контроля над app1 в app2, и js в app1, я думаю, останавливается.

var ref = cordova.InAppBrowser.open('mycoolapp://url', '_system', 'location=yes');

Когда приложение app2 запущено, я не могу выполнить js, введенный из app1, например скрыть его. Любой обратный вызов, связанный с ref (loadstart, loadtop ...), не выполняется. Только если используется _blank, но невозможно открыть приложения в _blank. : (

Возможно только, что app2 закрывается с помощью navigator.app.exitApp (), и app1 снова становится видимым. Но, когда я в следующий раз открываю app2, он должен загрузить и запустить все приложение иэто требует много времени.

Есть ли другой способ показать / контролировать / открыть другое приложение со схемой URL на Android.

Может быть, как на iOS, мне не нужно запускатьдополнительный экземпляр app2 внутри app1, и просто откройте «реальный» экземпляр app2? Потому что на Android это выглядит так, как будто был запущен дополнительный экземпляр app2, и можно запустить много экземпляров app2 ...

...