Mam aplikację internetową, której używam w PhoneGap/Cordova do zainstalowania w iOS i Androidzie. W pewnym momencie aplikacji mam element iframe ładujący zawartość z drugiego serwera.Jak mogę otworzyć element iframe w aplikacji phonegap/cordova działającej na IOS?
Po uruchomieniu aplikacji z przeglądarki wszystko działa zgodnie z oczekiwaniami - element iframe otwiera się na tej samej stronie i ładuje zawartość z drugiej witryny.
Po uruchomieniu aplikacji internetowej na symulatorze iPhone'a za pomocą Cordova, gdy otworzy się element iframe, system iOS przełącza się na Safari i umieszcza moją aplikację w tle.
Kroki podjęte:
- dodałem drugą stronę do "ExternalHosts" tablicy w pliku Cordova.plist.
- Utworzono plik config.xml obok pliku index.html w katalogu/www, zgodnie z dokumentacją PhoneGap/Cordova (https://build.phonegap.com/docs/config-xml).
- Dodałem nazwę preferencji < = "stay-in-webview" wartość = "true"/> znacznik do pliku config.xml jako element podrzędny znacznika .
Podejrzewam, że to nie jest czytanie/używanie pliku config.xml, ale może być coś jeszcze ... Czy ktoś ma jakieś pomysły, co mogę robić źle?
Dzięki za odpowiedź. Wydaje się dziwne, że element iframe nie będzie obsługiwany ...W każdym razie, InAppBrowser wydaje się mieć ten sam problem - wciąż jest tylko tłem mojej aplikacji i otwiera Safari. Wygląda na to, że Cordova po prostu ignoruje plik config.xml ... Dokumentacja wydaje się wskazywać, że samo umieszczenie pliku config.xml w poprawnej lokalizacji spowoduje automatyczne załadowanie pliku, ale tak naprawdę nie jest tak w przypadku ... – Troy
Wygląda na to, że InAppBrowser może nie być dostępny w Cordova 2.2. Spróbuję uaktualnić i ponownie przetestować. – Troy
Jeśli nie chcesz dokonać aktualizacji, możesz użyć wtyczki przeglądarki podrzędnej dla PhoneGap 2.2: https://github.com/phonegap/phonegap-plugins/tree/master/iOS/ChildBrowser – Whizkid747