iOS Webansichten für
In diesem Abschnitt veranschaulicht, wie eine Cordova-fähigen WebView Komponente innerhalb einer größeren iOS-Anwendung einbetten. Details darüber, wie diese Komponenten miteinander kommunizieren können finden Sie unter Application Plugins.
Unterstützung für iOS Webansichten für begann mit Cordova Version 1.4, mit einer Cleaver
Komponente, für die die Xcode-Vorlage als Referenzimplementierung dient. Cordova 2.0 und höheren Versionen unterstützen nur die Teilprojekt-basierte Cleaver-Implementierung.
Diese Anweisungen erfordern mindestens Cordova 2.3 und Xcode 4.5, zusammen mit einer config.xml
Datei aus einem neu erstellten iOS-Projekt. Können Sie das Verfahren in der Befehlszeilenschnittstelle ein neues Projekt erstellen, dann erhalten Sie die config.xml
-Datei im Unterverzeichnis innerhalb der benannten Anwendungplatforms/ios
.
Um diese Anweisungen befolgen, stellen Sie sicher, dass Sie die neueste Cordova-Verteilung. Von cordova.apache.org herunterladen Sie und entpacken Sie das iOS-Paket.
Die Xcode-Projekt (CordovaLib-Teilprojekt) Cleaver hinzufügen
Beenden Sie Xcode, wenn es geöffnet ist.
Öffnen Sie ein Terminal und wechseln Sie in das Quellverzeichnis für Cordova iOS.
Kopie der
config.xml
Datei in das Projektverzeichnis beschriebenen.Xcode öffnen und verwenden Sie den Finder, kopieren Sie die
config.xml
Datei in einem Projekt-Navigator -Fenster.Wählen Sie Create-Gruppen für alle hinzugefügten Ordner und drücken Sie die Taste Beenden.
Verwenden Sie den Finder, kopieren Sie die
CordovaLib/CordovaLib.xcodeproj
Datei in Xcodes ProjektnavigatorWählen Sie
CordovaLib.xcodeproj
innerhalb der Projektnavigator.Geben Sie die Option-Befehl-1 -Tastenkombination, um die Datei Inspector -Serie.
Wählen Sie Relative Gruppe im Datei-Inspektor für die Drop-Down-Menü für Lage.
Wählen Sie das Symbol "Projekt" in der Projekt-Navigator, wählen Sie das Ziel, dann wählen Sie die Registerkarte Einstellungen erstellen .
Fügen Sie
-force_load
und-Obj-C
für den Wert Anderer Linker-Flags .Klicken Sie auf das Symbol "Projekt" in der Projekt-Navigator, wählen Sie das Ziel, dann wählen Sie die Registerkarte Build Phasen .
Link-Binärdateien mit Bibliotheken zu erweitern.
Wählen Sie das + Schaltfläche, und fügen Sie folgende Rahmenbedingungen. Optional in der Projekt-Navigatorverschieben Sie unter der Frameworks -Gruppe:
AddressBook.framework AddressBookUI.framework AudioToolbox.framework AVFoundation.framework CoreLocation.framework MediaPlayer.framework QuartzCore.framework SystemConfiguration.framework MobileCoreServices.framework CoreMedia.framework
Ziel Abhängigkeiten, das obere Feld mit diesem Label ist mehr als ein Feld zu erweitern.
Wählen Sie das + Schaltfläche, und fügen Sie das
CordovaLib
Produkt zu bauen.Link-Binärdateien mit den Bibliotheken, im oberen Feld mit diesem Label ist mehr als ein Feld zu erweitern.
Wählen Sie das + hinzufügen, und klicken
libCordova.a
.Legen Sie die Xcode "Einstellungen" → Standorte → abgeleitete Daten → erweiterte... , einzigartige.
Wählen Sie das Symbol "Projekt" in der Projekt-Navigator, wählen Sie Ihr Ziel, dann wählen Sie die Registerkarte Einstellungen erstellen .
Suche nach Header-Suchpfade. Fügen Sie für diese Einstellung diese drei Werte unterhalb, schliessen die Zitate:
"$(TARGET_BUILD_DIR)/usr/local/lib/include" "$(OBJROOT)/UninstalledProducts/include" "$(BUILT_PRODUCTS_DIR)"
Ab Cordova 2.1.0
CordovaLib
zur Automatischen Reference Counting (ARC)verwenden aktualisiert wurde. Du musst nicht ein upgrade auf ARC verwendenCordovaLib
, aber wenn Sie das Projekt zur Verwendung von ARCaktualisieren möchten, verwenden Sie der Assistent für die Migration von Xcode die Bearbeiten → umgestalten → umwandeln in Objective-C-Bogen... im Menü libCordova.a aufzuheben, führen Sie den Assistenten bis zum Abschluss.
Verwendung von CDVViewController
Fügen Sie den folgenden Header:
#import <Cordova/CDVViewController.h>
Instanziieren eines neuen
CDVViewController
und behalten es irgendwo, z. B. auf eine Klasseneigenschaft:CDVViewController* viewController = [CDVViewController new];
Optional können Sie festlegen der
wwwFolderName
-Eigenschaft, die standardmäßig aufwww
:viewController.wwwFolderName = @"myfolder";
Optional können Sie festlegen die Startseite der
config.xml
Datei<content>
tag, entweder eine lokale Datei:<content src="index.html" />
... oder einem remote-Standort:
<content src="http://apache.org" />
Optional können Sie festlegen der
useSplashScreen
-Eigenschaft, die standardmäßig aufNO
:viewController.useSplashScreen = YES;
Legen Sie den Ansicht-Frame. Immer dies als die letzte Eigenschaft einrichten:
viewController.view.frame = CGRectMake(0, 0, 320, 480);
Hinzufügen von Cleaver zur Ansicht:
[myView addSubview:viewController.view];
Hinzufügen von HTML, CSS und JavaScript Vermögenswerte
Erstellen Sie ein neues Verzeichnis innerhalb des Projekts
www
zum Beispiel.Positionieren Sie HTML, CSS und JavaScript Posten in dieses Verzeichnis.
Verwenden Sie den Finder, um das Verzeichnis in Xcodes Projekt-Navigator -Fenster kopieren.
Wählen Sie Erstellen Ordner Verweise für alle hinzugefügten Ordner.
Legen Sie die entsprechenden
wwwFolderName
undstartPage
Eigenschaften des Verzeichnisses, die Sie ursprünglich erstellt, oder verwenden Sie die Standardwerte (angegeben im vorherigen Abschnitt) beim Instanziieren derCDVViewController
./* if you created a folder called 'myfolder' and you want the file 'mypage.html' in it to be the startPage */ viewController.wwwFolderName = @"myfolder"; viewController.startPage = @"mypage.html"