У меня есть два приложения, созданные с помощью 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 ...