2013-03-08 10 views
7

Chcę mieć tylko jeden widok w mojej aplikacji phonegap na iOS.Jak otworzyć stronę internetową w aplikacji na iOS za pomocą phonegapa?

Ten widok będzie stroną internetową.

Jak mogę załadować ten widok tylko z określonym adresem URL?

Przypuszczam, że robisz to przez javascript i jeśli tak, to w jaki sposób?

* Nie jestem skrypty html/javascript, rozwijam tylko aplikacje natywne iOS, ale muszę przetestować coś z phonegap.

Odpowiedz

16

d0nparalias,

  1. Jeśli chcesz załadować main (Cordova) index.html ze zdalnego serwera, edytować config.xml plik i zmienić

    <content src="index.html" />

    do

    <content src="http://192.168.1.4:8080/www/index.html" />

    dla przykład. I załaduje index.html z serwera WWW znajdującego się pod adresem 192.168.1.4.

  2. Jeśli chcesz otworzyć stronę internetową zaraz po załadowaniu aplikacji, możesz użyć InAppBrowser, jak już zauważyłeś.

    window.open(url, target, options);

    Tutaj masz opcje target (według Cordova docs 2.5.0):

    2.1. _self, a otrzymasz coś w rodzaju:
    enter image description here Pamiętaj, że w tym przypadku nie masz żadnych elementów sterujących, aby powrócić do numeru index.html.

    2.2. _blank - przedstawia kontroler widoku modalnego z przyciskiem zamknięcia
    enter image description here

    2.3. _system - otwiera się w Safari.app
    enter image description here

Więcej informacji na stronie documentation i wiki.

Mam nadzieję, że to pomaga.

BR.
Eugene

+0

Jedna z najlepszych odpowiedzi, jakie kiedykolwiek widziałem. Dziękuję bardzo Eugene. –

+0

Jeszcze jedno pytanie, które tylko pomyślałem. Teraz, gdy zmieniam moje źródło, w jaki sposób załaduję plik pushnotification.js, którego używam do korzystania z powiadomień push? Chodzi mi o to, że dodawałem odnośnik do tego skryptu: do mojego pliku index.html. Teraz, kiedy go nie ładuję, w jaki sposób załaduję powiadomienia push? –

+0

Chyba muszę użyć 2.1, który mówisz. Czy możesz dać mi przykład tego? Nie wiem, jak to wdrożyć, w moim kodzie. –

0

PhoneGap, który nazywa się teraz Apache Cordova na iOS, pozwala domyślnie używać adresu URL pliku. Oznacza to, że musisz załadować lokalny plik .html. Jeśli chcesz otworzyć stronę zdalną za pomocą adresu URL http: //, musisz dodać niestandardowy kod natywny, aby poinformować WebView, aby załadował zdalny adres URL.

+0

omg naprawdę? I zacząłem pracować tylko z phonegapem, żeby zobaczyć, jak to będzie działać przy ładowaniu zdalnego adresu URL. Jesteś w 100% pozytywnym faktem, że nie możesz załadować go na przeglądarkę internetową? Chodzi mi o javascript, który uruchamiasz, jeśli "zadzwonisz" do adresu URL, co się stanie? Zacznie się w safari? –

+0

Jesteś pewien człowiek?Ponieważ teraz czytam dokumentację w przeglądarce aplikacji "InAppBrowser to przeglądarka internetowa wyświetlana w Twojej aplikacji podczas korzystania z wywołania window.open". –

Powiązane problemy