UNPKG

19.3 kBMarkdownView Raw
1<!--
2#
3# Licensed to the Apache Software Foundation (ASF) under one
4# or more contributor license agreements. See the NOTICE file
5# distributed with this work for additional information
6# regarding copyright ownership. The ASF licenses this file
7# to you under the Apache License, Version 2.0 (the
8# "License"); you may not use this file except in compliance
9# with the License. You may obtain a copy of the License at
10#
11# http://www.apache.org/licenses/LICENSE-2.0
12#
13# Unless required by applicable law or agreed to in writing,
14# software distributed under the License is distributed on an
15# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16# KIND, either express or implied. See the License for the
17# specific language governing permissions and limitations
18# under the License.
19#
20-->
21
22# cordova-cli
23
24> Das Kommandozeilen-Tool zum Erstellen, bereitstellen und Verwalten von [Cordova](http://cordova.io)-basierten Anwendungen.
25
26[Apache-Cordova](http://cordova.io) ermöglicht native mobile Applikationen mit HTML, CSS und JavaScript erstellen. Dieses Tool hilft bei der Verwaltung von Multiplattform-Cordova-Anwendungen sowie Cordova Plugin Integration.
27
28Schauen Sie sich die [Erste Schritte-Handbücher](http://cordova.apache.org/docs/en/edge/) für weitere Informationen zum Arbeiten mit Teilprojekte Cordova.
29
30# Cordova unterstützte Plattformen
31
32 * Amazon Fire OS
33 * Android
34 * BlackBerry 10
35 * Firefox OS
36 * iOS
37 * Ubuntu
38 * Windows Phone 8
39 * Windows 8
40
41# Anforderungen
42
43 * [Node.js](http://nodejs.org/)
44 * SDKs für jede Plattform, die Sie unterstützen möchten:
45 * **Android**: [Android SDK](http://developer.android.com) - **Hinweis** dieses Tool funktioniert nicht, es sei denn, Sie die absolut neuesten Updates für alle Android SDK-Komponenten haben. Außerdem benötigen Sie die SDK- `Werkzeuge` und `Plattform-Tools` -Verzeichnisse auf Ihrem **Systempfad** sonst Android Unterstützung schlägt fehl.
46 * **Amazon-Fireos**: [Amazon Fire OS SDK](https://developer.amazon.com/public/solutions/platforms/android-fireos/docs/building-and-testing-your-hybrid-app) - **Hinweis** dieses Tool funktioniert nicht, es sei denn, Sie Android SDK installiert haben und wie bereits erwähnt, werden Pfade aktualisiert. Darüber hinaus müssen Sie AmazonWebView SDK installieren und kopieren awv_interface.jar auf **Mac/Linux** -System zu ~/.cordova/lib/commonlibs Ordner oder **Windows** %USERPROFILE%/.cordova/lib/coomonlibs. Dann erstellen Sie eine, wenn Commonlibs Ordner nicht vorhanden ist.
47 * [Windows Phone SDK](http://dev.windowsphone.com/en-us/downloadsdk) - **Hinweis** dieses Tool nicht funktioniert, wenn Sie `Msbuild` auf Ihrem **Systempfad** haben sonst Windows Phone Unterstützung fehl (`msbuild.exe` im allgemeinen befindet sich im `C:\Windows\Microsoft.NET\Framework\v4.0.30319`).
48 * **BlackBerry 10**: [10 BlackBerry WebWorks SDK](http://developer.blackberry.com/html5/download/). Stellen Sie sicher, dass Sie den `Abhängigkeiten/Werkzeuge/bin` Ordner im SDK-Verzeichnis auf Ihrem Pfad hinzugefügt haben!
49 * **iOS**: [iOS SDK](http://developer.apple.com) mit den neuesten `Xcode` und `Xcode-Befehlszeilen-Tools`
50 * **Windows Phone**: [Windows Phone SDK](http://dev.windowsphone.com/en-us/downloadsdk) - **Hinweis** dieses Tool nicht funktioniert, wenn Sie `Msbuild` auf Ihrem **Systempfad** haben sonst Windows Phone Unterstützung fehl (`msbuild.exe` im allgemeinen befindet sich im `C:\Windows\Microsoft.NET\Framework\v4.0.30319`).
51
52`Cordova-Cli` wurde auf **Mac OS X**, **Linux**, **Windows 7**und **Windows 8** getestet.
53
54Bitte beachten Sie, dass einige Plattformen OS Beschränkungen. Zum Beispiel für Windows 8 oder Windows Phone 8 unter Mac OS X kann man nicht bauen, noch können Sie für iOS unter Windows erstellen.
55
56# Installieren
57
58Ubuntu-Pakete stehen in einer PPA für Ubuntu 13,10 (Saucy) (aktuelle Version) sowie 14.04. (Trusty) (in Entwicklung).
59
60 sudo apt-add-repository ppa:cordova-ubuntu/ppa
61 sudo apt-get update
62 sudo apt-get install cordova-cli
63 npm install -g cordova
64
65
66Um eine Anwendung für die Ubuntu-Plattform zu erstellen, werden die folgenden zusätzlichen Pakete benötigt:
67
68 sudo apt-get install cmake debhelper libx11-dev libicu-dev pkg-config qtbase5-dev qtchooser qtdeclarative5-dev qtfeedback5-dev qtlocation5-dev qtmultimedia5-dev qtpim5-dev qtsensors5-dev qtsystems5-dev
69
70
71## Installation vom master
72
73Du musst [CLI](https://git-wip-us.apache.org/repos/asf/cordova-cli.git) und [Plugman](https://git-wip-us.apache.org/repos/asf/cordova-plugman.git) von `Git`installieren. Die *npm version* von One und *(git) master-Version* des anderen wird voraussichtlich mit ihnen leiden zu beenden.
74
75Um zu vermeiden, mit Sudo, siehe [wegkommen von Sudo: Npm ohne Root](http://justjs.com/posts/npm-link-developing-your-own-npm-modules-without-tears).
76
77Führen Sie die folgenden Befehle:
78
79 git clone https://git-wip-us.apache.org/repos/asf/cordova-plugman.git
80 cd cordova-plugman
81 npm install
82 sudo npm link
83 cd ..
84 git clone https://git-wip-us.apache.org/repos/asf/cordova-cli.git
85 cd cordova-cli
86 npm install
87 sudo npm link
88 npm link plugman
89
90
91Jetzt sind die `Cordova` und `Plugman` in Ihrem Pfad der lokalen Git-Versionen. Vergessen Sie nicht, sie auf dem laufenden halten!
92
93## Installation auf Ubuntu
94
95 apt-get install cordova-cli
96
97
98# Erste Schritte
99
100`Cordova-Cli` hat einen einzigen globalen `Erstellen` Befehl, der neue Cordova-Projekte in einem angegebenen Verzeichnis erstellt. Sobald Sie ein Projekt erstellen, können `cd` in es und Sie eine Vielzahl von Projektebene Befehle ausführen. Git Schnittstelle inspiriert vollständig.
101
102## Globale Befehle
103
104 * `help` anzeigen eine Hilfeseite mit allen verfügbaren Befehle
105 * `create <directory> [<id> [<name>]]` erstellen ein neues Cordova-Projekt mit optionaler Name und Id (Paketname, Rückwärtsgang-Domäne-Style)
106
107<a name="project_commands" />
108
109## Projekt-Befehle
110
111 * `platform [ls | list]` Listen Sie alle Plattformen für das Erstellen des Projekts
112 * `platform add <platform> [<platform> ...]` Fügen Sie eine (oder mehrere) Plattformen als Buildziel für das Projekt
113 * `platform [rm | remove] <platform> [<platform> ...]` die Ziele von einem (oder mehreren) Plattform erstellen entfernt aus dem Projekt
114 * `platform [up | update] <platform>` -aktualisiert die Cordova-Version für die Plattform verwendet
115 * `plugin [ls | list]` Listen Sie alle Plugins, die Teil des Projekts
116 * `plugin add <path-to-plugin> [<path-to-plugin> ...]` Fügen Sie eine (oder mehrere) Plugins zum Projekt
117 * `plugin [rm | remove] <plugin-name> [<plugin-name> ...]` Entfernen Sie eine (oder mehrere) Plugins aus dem Projekt.
118 * `plugin search [<keyword1> <keyword2> ...]` Suchen Sie die Plugin-Registrierung für Plugins passend die Liste von Schlüsselwörtern
119 * `prepare [platform...]` kopiert die Dateien in den angegebenen Plattformen oder alle Plattformen. Es ist dann für den Aufbau von `Eclipse`, `Xcode`, etc. bereit.
120 * `compile [platform...]` kompiliert die app in eine Binärdatei für jede gezielte Plattform. Ohne Parameter, Builds für alle Plattformen, ansonsten baut für die angegebenen Plattformen.
121 * `build [<platform> [<platform> [...]]]` ein Alias für die `cordova prepare` gefolgt von `cordova compile`
122 * `emulate [<platform> [<platform> [...]]]` Emulatoren starten und app für sie bereitstellen. Ohne Parameter emuliert für alle Plattformen, die dem Projekt hinzugefügt, ansonsten für die angegebenen Plattformen emuliert
123 * `serve [port]` Starten Sie einen lokalen Webserver, so dass Sie Zugriff auf jede Plattform Www-Verzeichnis auf dem angegebenen Port (Standard 8000).
124
125### Optionalen Flags
126
127 * `-d` oder `--verbose` wird heraus ausführlichere Ausgabe Ihrer Shell Pfeife. Sie können auch Ereignisse `log` und `warn` abonnieren, wenn Sie raubend `Cordova-Cli` als Modul Knoten sind, durch Aufrufen von `cordova.on ("log", function (){}` oder `cordova.on ('warn', function () {}`.
128 * `-v` oder `--version` wird Ausdrucken Ihrer `Cordova-Cli` -Version installieren.
129
130# Verzeichnisstruktur des Projekts
131
132Eine Anwendung für Cordova mit `Cordova-Cli` haben die folgende Verzeichnisstruktur:
133
134 myApp/
135 |-- config.xml
136 |-- hooks/
137 |-- merges/
138 | | |-- android/
139 | | |-- blackberry10/
140 | | `-- ios/
141 |-- www/
142 |-- platforms/
143 | |-- android/
144 | |-- blackberry10/
145 | `-- ios/
146 `-- plugins/
147
148
149## hooks/
150
151Dieses Verzeichnis kann enthält Skripts zum Anpassen von Cordova-Cli-Befehle verwendet. Dieses Verzeichnis verwendet, um zu `.cordova/hooks`vorhanden sein, aber jetzt nach dem Projektstamm wurde verschoben. Alle Skripts, die Sie diese Verzeichnisse hinzufügen werden vor und nach den Befehlen, die den Namen des Verzeichnisses entspricht ausgeführt. Nützlich für die Integration Ihrer eigenen Build-Systeme oder Integration mit Versionskontrollsystemen.
152
153Weitere Informationen finden Sie unter Haken Guide</a> .
154
155## merges/
156
157Plattformspezifische Web Vermögenswerte (HTML, CSS und JavaScript-Dateien) sind in den entsprechenden Unterordner in diesem Verzeichnis enthalten. Diese sind während einer `prepare` in das entsprechende Verzeichnis der native eingesetzt. Dateien unter `merges/` überschreibt die entsprechende Dateien im der `www /` Ordner für die entsprechende Plattform. Ein kurzes Beispiel, eine Projektstruktur des vorausgesetzt:
158
159 merges/
160 |-- ios/
161 | `-- app.js
162 |-- android/
163 | `-- android.js
164 www/
165 `-- app.js
166
167
168Nach dem Aufbau der Android und iOS-Projekte, wird die Android-Anwendung `app.js` und `android.js`enthalten. Jedoch die iOS-Anwendung enthält nur eine `app.js`, und es wird derjenige sein, der aus `merges/ios/app.js`, überschreiben die "gewöhnlichen" `app.js` innerhalb der `www /`.
169
170## www/
171
172Das Projekt Web Artefakte wie HTML, CSS und JS-Dateien enthält. Dies sind Ihre Hauptanwendung Vermögenswerte. Sie werden auf eine `cordova prepare` jede Plattform Www-Verzeichnis kopiert werden.
173
174### Ihre Decke: "config.xml"
175
176Diese Datei ist was Sie bearbeiten sollten um Ihre Anwendung Metadaten ändern. Jedesmal wenn Sie Cordova-Cli-Befehle ausführen das Tool betrachten Sie den Inhalt der `Datei config.xml` und alle relevanten Informationen aus dieser Datei verwenden, um native Anwendungsinformationen zu definieren. Cordova-Cli unterstützt Ihre Anwendungsdaten über die folgenden Elemente in der Datei `"config.xml"` ändern:
177
178 * Über den Inhalt des Elements `<name>` kann der Benutzer-Namen geändert werden.
179 * Der Paketname (AKA Bündel Bezeichner oder Anwendung Id) kann über das `Id` -Attribut aus dem Element der obersten Ebene `<widget>` verändert werden.
180 * Die Version kann über das `version` -Attribut aus dem Element der obersten Ebene `<widget>` geändert werden.
181 * Die Whitelist kann über die `<access>` Elemente geändert werden. Stellen Sie sicher das `origin` -Attribut des Ihre Element `<access>` punkte auf eine gültige URL ( `*` als Platzhalter können). Weitere Informationen über die Whitelist-Syntax finden Sie unter [docs.phonegap.com](http://docs.phonegap.com/en/2.2.0/guide_whitelist_index.md.html#Domain%20Whitelist%20Guide). Können Sie Attribut `Uri` ([BlackBerry-proprietäre](https://developer.blackberry.com/html5/documentation/access_element_834677_11.html)) oder der `origin` ([standardkonforme](http://www.w3.org/TR/widgets-access/#attributes)) um die Domäne zu bezeichnen.
182 * Plattform-spezifische Einstellungen können über `<preference>` Tags angepasst werden. Siehe [docs.phonegap.com](http://docs.phonegap.com/en/2.3.0/guide_project-settings_index.md.html#Project%20Settings) für eine Liste der Einstellungen, die Sie verwenden können.
183 * Die Eintrag/Startseite für Ihre Anwendung kann über die `<content src>` Element + Attribut definiert werden.
184
185## platforms/
186
187Plattformen zur Anwendung hinzugefügt werden die Ausgangsanwendung Projekt Strukturen innerhalb des Verzeichnisses angelegt haben.
188
189## plugins/
190
191Keine zusätzlichen Plugins werden extrahiert oder in dieses Verzeichnis kopiert.
192
193# Hooks
194
195Erstellt von Cordova-Cli Projekte haben `before` und `after` Haken für jeden [Befehl Projekt](#project_commands).
196
197Es gibt zwei Arten von Haken: projektspezifische und auf Modulebene. Beide Typen der Haken erhalten den Stammordner des Projekts als Parameter.
198
199## Projektspezifische Haken
200
201Diese befinden sich unter dem `hooks` -Verzeichnis im Stammverzeichnis Ihres Projekts Cordova. Alle Skripts, die Sie diese Verzeichnisse hinzufügen werden vor und nach der entsprechenden Befehle ausgeführt werden. Nützlich für die Integration Ihrer eigenen Build-Systeme oder Integration mit Versionskontrollsystemen. **Denken Sie daran**: Ihre Skripte ausführbar zu machen. Weitere Informationen finden Sie unter [Haken Guide](http://cordova.apache.org/docs/en/edge/guide_appdev_hooks_index.md.html#Hooks%20Guide) .
202
203### Beispiele
204
205 * [ `Before_build` Haken zum Kompilieren von jade Vorlage](https://gist.github.com/4100866) mit freundlicher Genehmigung von [dpogue](http://github.com/dpogue)
206
207## Auf Modulebene Haken
208
209Wenn Sie Cordova-Cli als Modul innerhalb einer größeren **Node** -Anwendung verwenden, können Sie die Ereignisse an auch `EventEmitter` Standardmethoden. Die Veranstaltungen umfassen `Before_build`, `Before_compile`, `Before_docs`, `Before_emulate`, `Before_run`, `Before_platform_add`, `Before_library_download`, `Before_platform_ls`, `Before_platform_rm`, `Before_plugin_add`, `Before_plugin_ls`, `Before_plugin_rm` und `Before_prepare`. Es gibt auch eine `library_download` -Progress-Ereignis. Darüber hinaus gibt es `after_` Aromen aller oben genannten Ereignisse.
210
211Einmal Sie `require('cordova')` in Ihrem Projekt Knoten, verfügen Sie über die üblichen `EventEmitter` verfügbaren Methoden (`on`, `off` oder `removeListener`, `RemoveAllListeners`, und `emit` oder `trigger`).
212
213# Beispiele
214
215## Erstellen eines neuen Projekts Cordova
216
217In diesem Beispiel wird veranschaulicht, wie ein Projekt namens "KewlApp" mit iOS und Android-Plattform-Unterstützung erstellen und beinhaltet eine Plugin namens Kewlio. Das Projekt wird in ~/KewlApp Leben.
218
219 cordova create ~/KewlApp KewlApp
220 cd ~/KewlApp
221 cordova platform add ios android
222 cordova plugin add http://example.org/Kewlio-1.2.3.tar.gz
223 cordova build
224
225
226Die Verzeichnisstruktur des KewlApp sieht nun folgendermaßen aus:
227
228 KewlApp/
229 |-- hooks/
230 |-- merges/
231 | |-- android/
232 | `-- ios/
233 |-- www/
234 | `-- index.html
235 |-- platforms/
236 | |-- android/
237 | | `-- …
238 | `-- ios/
239 | `-- …
240 `-- plugins/
241 `-- Kewlio/
242
243
244# Einen Beitrag
245
246## Ausführen von Tests
247
248 npm test
249
250
251## Testberichte-Abdeckung zu erhalten
252
253 npm run cover
254
255
256## To-do + Fragen
257
258Bitte überprüfen Sie [Cordova Probleme mit der CLI-Komponente](http://issues.cordova.io). Wenn Sie Probleme mit diesem Tool finden, bitte seien Sie so nett, einschlägige Informationen zu Themen wie Debuggen benötigt:
259
260 * Ihr Betriebssystem und version
261 * Der Anwendungsname, Verzeichnis und Bezeichner verwendet mit `Erstellen`
262 * Welche mobile SDKs, die Sie installiert haben und ihre Versionen. In diesem Zusammenhang: welche `Xcode` -Version, wenn Sie Fragen senden mit Bezug zu iOS
263 * Jeder Fehler-Stack-Traces, die Sie erhalten
264
265## Mitwirkende
266
267Vielen Dank an alle für Ihren Beitrag! Eine Liste der beteiligten Personen finden Sie in der Datei `package.json` .
268
269# Bekannte Probleme und Fehlerbehebung
270
271## Alle OS
272
273### Proxy-Einstellungen
274
275`Cordova-Cli` wird `Npm`-Proxy-Einstellungen verwenden. Wenn Sie hinter einem Proxy sind und Cordova-Cli über `Npm` heruntergeladen, sind Wahrscheinlichkeiten Cordova-Cli für Sie arbeiten sollten, wie sie diese Einstellungen in erster Linie verwenden wird. Stellen Sie sicher, dass die `Https-Proxy` und `Proxy` Npm-Config-Variable korrekt gesetzt sind. Finden Sie weitere Informationen [des Npm Konfigurationsdokumentation](https://npmjs.org/doc/config.html) .
276
277## Windows
278
279### Probleme beim Hinzufügen von Android als Plattform
280
281Wenn Sie versuchen, eine Plattform auf einem Windows-Computer hinzufügen, wenn Sie die folgende Fehlermeldung bekommen: Cordova Bibliothek für "Android" bereits vorhanden ist. Kein download erforderlich. Fort. Überprüfen, ob die Plattform "android" Mindestanforderungen übergibt... Kontrolle auf Android... Ausführen von "android Liste Ziel" (Ausgabe folgen)
282
283 Error: The command `android` failed. Make sure you have the latest Android SDK installed, and the `android` command (inside the tools/ folder) added t
284 o your path. Output:
285 at C:\Users\me\AppData\Roaming\npm\node_modules\cordova\src\platform.js:185:42
286 at C:\Users\me\AppData\Roaming\npm\node_modules\cordova\src\metadata\android_parser.js:50:13
287 at C:\Users\me\AppData\Roaming\npm\node_modules\cordova\node_modules\shelljs\shell.js:1707:7
288 at exithandler (child_process.js:633:7)
289 at ChildProcess.errorhandler (child_process.js:649:5)
290 at ChildProcess.EventEmitter.emit (events.js:95:17)
291 at Process.ChildProcess._handle.onexit (child_process.js:787:12)
292
293
294Führen Sie den Befehl `android list target`. Wenn Sie sehen:
295
296 'xcopy' is not recognized as an internal or external command,
297 operable program or batch file.
298
299
300zu Beginn der Ausgabe des Befehls bedeutet dies, dass Sie benötigen, um Ihre Windows Path-Variable um Xcopy erweitert zu beheben. Dieser Ort ist in der Regel unter C:\Windows\System32.
301
302## Windows 8
303
304Windows-8-Unterstützung beinhaltet nicht die Fähigkeit zu Start/ausführen/emulieren, so Sie öffnen Sie **Visual Studio** um Ihre app Leben zu sehen müssen. Sie sind noch in der Lage, die folgenden Befehle mit windows8 zu verwenden:
305
306 * `platform add windows8`
307 * `platform remove windows8`
308 * `prepare windows8`
309 * `compile windows8`
310 * `build windows8`
311
312Um Ihre Anwendung auszuführen, müssen Sie die `sln` im `Plattformen/windows8` Ordner mithilfe von **Visual Studio 2012** öffnen.
313
314**Visual Studio** erfahren Sie das Projekt neu zu laden, wenn Sie einen der obigen Befehle ausführen, während das Projekt geladen wird.
315
316## Amazon Fire OS
317
318Amazon Fire OS beinhaltet nicht die Fähigkeit zu emulieren. Sie sind noch in der Lage, die folgenden Befehle mit Amazon Fire OS zu verwenden
319
320 * `platform add amazon-fireos`
321 * `platform remove amazon-fireos`
322 * `prepare amazon-fireos`
323 * `compile amazon-fireos`
324 * `build amazon-fireos`
325
326## Ubuntu
327
328Die erste Version von Cordova-Ubuntu unterstützt Gebäude keine Anwendungen für Armhf Geräte automatisch. Es ist möglich, Anwendungen und Pakete in wenigen Schritten aber auf.
329
330Dieser Bug-Report dokumentiert das Problem und Lösungen dafür: https://bugs.launchpad.net/ubuntu/+source/cordova-ubuntu/+bug/1260500 einer zukünftigen Version wird Entwickler Kreuz-kompilieren Armhf Pakete direkt von einem X 86-Desktop klicken lassen.
331
332## Firefox OS
333
334Firefox-OS beinhaltet nicht die Fähigkeit zu emulieren, zu laufen und zu dienen. Nach Bau musst du das `Firefoxos` -Plattform-Verzeichnis Ihrer Anwendung in der [WebIDE](https://developer.mozilla.org/docs/Tools/WebIDE) zu öffnen, die mit jedem Firefox-Browser kommt. Sie können dieses Fenster offen halten und klicken Sie auf die Taste "play", jedes Mal, wenn Sie fertig bauen Ihre app.
\No newline at end of file