http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/cordova/storage/sqlerror/sqlerror.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/cordova/storage/sqlerror/sqlerror.md 
b/www/docs/de/dev/cordova/storage/sqlerror/sqlerror.md
new file mode 100644
index 0000000..83fdd6f
--- /dev/null
+++ b/www/docs/de/dev/cordova/storage/sqlerror/sqlerror.md
@@ -0,0 +1,46 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: SQLError
+---
+
+# SQLError
+
+A `SQLError` Objekt wird ausgelöst, wenn ein Fehler auftritt.
+
+## Eigenschaften
+
+*   **Code**: einer der vordefinierten Fehlercodes aufgeführt.
+
+*   **Nachricht**: eine Beschreibung des Fehlers.
+
+## Konstanten
+
+*   `SQLError.UNKNOWN_ERR`
+*   `SQLError.DATABASE_ERR`
+*   `SQLError.VERSION_ERR`
+*   `SQLError.TOO_LARGE_ERR`
+*   `SQLError.QUOTA_ERR`
+*   `SQLError.SYNTAX_ERR`
+*   `SQLError.CONSTRAINT_ERR`
+*   `SQLError.TIMEOUT_ERR`
+
+## Beschreibung
+
+Das `SQLError` Objekt wird ausgelöst, wenn ein Fehler auftritt, wenn eine 
[Datenbank](../database/database.html) zu manipulieren.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/cordova/storage/sqlresultset/sqlresultset.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/cordova/storage/sqlresultset/sqlresultset.md 
b/www/docs/de/dev/cordova/storage/sqlresultset/sqlresultset.md
new file mode 100644
index 0000000..ef57259
--- /dev/null
+++ b/www/docs/de/dev/cordova/storage/sqlresultset/sqlresultset.md
@@ -0,0 +1,145 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: SQLResultSet
+---
+
+# SQLResultSet
+
+Wenn eine `[SQLTransaction](../sqltransaction/sqltransaction.html)` des 
Objekts `executeSql` -Methode wird aufgerufen, der angegebene Rückruf führt 
mit einem `SQLResultSet` Parameter.
+
+## Eigenschaften
+
+*   **InsertId**: die Zeilen-ID der Zeile, die die `SQLResultSet` des 
Objekts-SQL-Anweisung, die in die [Datenbank](../database/database.html) 
eingefügt.
+
+*   **RowsAffected**: die Anzahl der Zeilen geändert werden, indem die 
SQL-Anweisung, die 0 (null), wenn die Anweisung keine Zeilen nicht ausgewirkt 
hat.
+
+*   **Zeilen**: eine 
`[SQLResultSetRowList](../sqlresultsetrowlist/sqlresultsetrowlist.html)` , die 
die zurückgegebenen Zeilen darstellen, empty, wenn keine Zeilen zurückgegeben 
werden.
+
+## Informationen
+
+Wenn eine `[SQLTransaction](../sqltransaction/sqltransaction.html)` des 
Objekts `executeSql` -Methode wird aufgerufen, der angegebene Rückruf führt 
mit einer `SQLResultSet` Parameter mit den drei Eigenschaften:
+
+*   Die `insertId` gibt die Zeilennummer einer successly 
SQL-Einfügung-Anweisung zurück. Wenn die SQL keine Zeilen einfügen wird die 
`insertId` nicht festgelegt.
+
+*   Die `rowsAffected` ist immer `` für ein SQL `select` Anweisung. Für 
`insert` oder `update` es die Anzahl der gibt Anweisungen geänderter Zeilen.
+
+*   Finale `SQLResultSetList` enthält die Daten aus einer 
SQL-select-Anweisung zurückgegeben.
+
+## Unterstützte Plattformen
+
+*   Android
+*   BlackBerry WebWorks (OS 6.0 und höher)
+*   iOS
+*   Tizen
+
+## Führen Sie SQL-schnelles-Beispiel
+
+    function queryDB(tx) {
+        tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+    }
+    
+    function querySuccess(tx, results) {
+        console.log("Returned rows = " + results.rows.length);
+        // this will be true since it was a select statement and so 
rowsAffected was 0
+        if (!results.rowsAffected) {
+            console.log('No rows affected!');
+            return false;
+        }
+        // for an insert statement, this property will return the ID of the 
last inserted row
+        console.log("Last inserted row ID = " + results.insertId);
+    }
+    
+    function errorCB(err) {
+        alert("Error processing SQL: "+err.code);
+    }
+    
+    var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+    db.transaction(queryDB, errorCB);
+    
+
+## Vollständiges Beispiel
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+    
+        <script type="text/javascript" charset="utf-8" 
src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+    
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+    
+        // Populate the database
+        //
+        function populateDB(tx) {
+            tx.executeSql('DROP TABLE IF EXISTS DEMO');
+            tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First 
row")');
+            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second 
row")');
+        }
+    
+        // Query the database
+        //
+        function queryDB(tx) {
+            tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+        }
+    
+        // Query the success callback
+        //
+        function querySuccess(tx, results) {
+            console.log("Returned rows = " + results.rows.length);
+            // this will be true since it was a select statement and so 
rowsAffected was 0
+            if (!results.rowsAffected) {
+                console.log('No rows affected!');
+                return false;
+            }
+            // for an insert statement, this property will return the ID of 
the last inserted row
+            console.log("Last inserted row ID = " + results.insertId);
+        }
+    
+        // Transaction error callback
+        //
+        function errorCB(err) {
+            console.log("Error processing SQL: "+err.code);
+        }
+    
+        // Transaction success callback
+        //
+        function successCB() {
+            var db = window.openDatabase("Database", "1.0", "Cordova Demo", 
200000);
+            db.transaction(queryDB, errorCB);
+        }
+    
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var db = window.openDatabase("Database", "1.0", "Cordova Demo", 
200000);
+            db.transaction(populateDB, errorCB, successCB);
+        }
+    
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Database</p>
+      </body>
+    </html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/cordova/storage/sqlresultsetrowlist/sqlresultsetrowlist.md
----------------------------------------------------------------------
diff --git 
a/www/docs/de/dev/cordova/storage/sqlresultsetrowlist/sqlresultsetrowlist.md 
b/www/docs/de/dev/cordova/storage/sqlresultsetrowlist/sqlresultsetrowlist.md
new file mode 100644
index 0000000..994e275
--- /dev/null
+++ b/www/docs/de/dev/cordova/storage/sqlresultsetrowlist/sqlresultsetrowlist.md
@@ -0,0 +1,133 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: SQLResultSetRowList
+---
+
+# SQLResultSetRowList
+
+Eine der Eigenschaften von den 
`[SQLResultSet](../sqlresultset/sqlresultset.html)` mit den Zeilen aus einer 
SQL-Abfrage zurückgegeben.
+
+## Eigenschaften
+
+*   **Länge**: die Anzahl der Zeilen, die von der SQL-Abfrage zurückgegeben.
+
+## Methoden
+
+*   **Element**: liefert die Zeile am angegebenen Index durch ein 
JavaScript-Objekt dargestellt.
+
+## Informationen
+
+Die `SQLResultSetRowList` enthält die Daten aus einer SQL zurückgegeben 
`select` Anweisung. Das Objekt enthält eine `length` Eigenschaft, die angibt, 
wie viele Zeilen der `select` Anweisung zurückgegeben. Um eine Zeile mit Daten 
abzurufen, rufen Sie die `item` -Methode, um einen Index angeben. Es gibt eine 
JavaScript `Object` deren Eigenschaften sind die Datenbankspalten der `select` 
Anweisung ausgeführt wurde.
+
+## Unterstützte Plattformen
+
+*   Android
+*   BlackBerry WebWorks (OS 6.0 und höher)
+*   iOS
+*   Tizen
+
+## Führen Sie SQL-schnelles-Beispiel
+
+    function queryDB(tx) {
+        tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+    }
+    
+    function querySuccess(tx, results) {
+        var len = results.rows.length;
+            console.log("DEMO table: " + len + " rows found.");
+            for (var i=0; i<len; i++){
+                console.log("Row = " + i + " ID = " + results.rows.item(i).id 
+ " Data =  " + results.rows.item(i).data);
+            }
+        }
+    
+        function errorCB(err) {
+            alert("Error processing SQL: "+err.code);
+        }
+    
+        var db = window.openDatabase("Database", "1.0", "Cordova Demo", 
200000);
+        db.transaction(queryDB, errorCB);
+    
+
+## Vollständiges Beispiel
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+    
+        <script type="text/javascript" charset="utf-8" 
src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+    
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+    
+        // Populate the database
+        //
+        function populateDB(tx) {
+            tx.executeSql('DROP TABLE IF EXISTS DEMO');
+            tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First 
row")');
+            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second 
row")');
+        }
+    
+        // Query the database
+        //
+        function queryDB(tx) {
+            tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+        }
+    
+        // Query the success callback
+        //
+        function querySuccess(tx, results) {
+            var len = results.rows.length;
+            console.log("DEMO table: " + len + " rows found.");
+            for (var i=0; i<len; i++){
+                console.log("Row = " + i + " ID = " + results.rows.item(i).id 
+ " Data =  " + results.rows.item(i).data);
+            }
+        }
+    
+        // Transaction error callback
+        //
+        function errorCB(err) {
+            console.log("Error processing SQL: "+err.code);
+        }
+    
+        // Transaction success callback
+        //
+        function successCB() {
+            var db = window.openDatabase("Database", "1.0", "Cordova Demo", 
200000);
+            db.transaction(queryDB, errorCB);
+        }
+    
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var db = window.openDatabase("Database", "1.0", "Cordova Demo", 
200000);
+            db.transaction(populateDB, errorCB, successCB);
+        }
+    
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Database</p>
+      </body>
+    </html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/cordova/storage/sqltransaction/sqltransaction.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/cordova/storage/sqltransaction/sqltransaction.md 
b/www/docs/de/dev/cordova/storage/sqltransaction/sqltransaction.md
new file mode 100644
index 0000000..624ee89
--- /dev/null
+++ b/www/docs/de/dev/cordova/storage/sqltransaction/sqltransaction.md
@@ -0,0 +1,111 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: SQLTransaction
+---
+
+# SQLTransaction
+
+Ermöglicht die Ausführung von SQL-Anweisungen für die 
[Datenbank](../database/database.html).
+
+## Methoden
+
+*   **ExecuteSql**: führt eine SQL­Anweisung.
+
+## Informationen
+
+Aufrufen einer `Database` -Methode des Objekts Transaktion, Pässe ein 
`SQLTransaction` Objekt, das die angegebene Callback-Methode.
+
+## Unterstützte Plattformen
+
+*   Android
+*   BlackBerry WebWorks (OS 6.0 und höher)
+*   iOS
+*   Tizen
+
+## Führen Sie SQL-schnelles-Beispiel
+
+    function populateDB(tx) {
+        tx.executeSql('DROP TABLE IF EXISTS DEMO');
+        tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+        tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
+        tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
+    }
+    
+    function errorCB(err) {
+        alert("Error processing SQL: "+err);
+    }
+    
+    function successCB() {
+        alert("success!");
+    }
+    
+    var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+    db.transaction(populateDB, errorCB, successCB);
+    
+
+## Vollständiges Beispiel
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+    
+        <script type="text/javascript" charset="utf-8" 
src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+    
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+    
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var db = window.openDatabase("Database", "1.0", "Cordova Demo", 
200000);
+            db.transaction(populateDB, errorCB, successCB);
+        }
+    
+        // Populate the database
+        //
+        function populateDB(tx) {
+            tx.executeSql('DROP TABLE IF EXISTS DEMO');
+            tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First 
row")');
+            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second 
row")');
+        }
+    
+        // Transaction error callback
+        //
+        function errorCB(err) {
+            alert("Error processing SQL: "+err);
+        }
+    
+        // Transaction success callback
+        //
+        function successCB() {
+            alert("success!");
+        }
+    
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>SQLTransaction</p>
+      </body>
+    </html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/cordova/storage/storage.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/cordova/storage/storage.md 
b/www/docs/de/dev/cordova/storage/storage.md
new file mode 100644
index 0000000..b2571bc
--- /dev/null
+++ b/www/docs/de/dev/cordova/storage/storage.md
@@ -0,0 +1,68 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: Speicher
+---
+
+# Speicher
+
+> Eine [Übersicht](../../guide/overview/index.html) über Storage-Optionen 
für Cordova.
+
+Mehrere Speicher-APIs sind für Cordova-Anwendungen verfügbar. Finden Sie 
unter [html5rocks][1]. eine vollständigere 
[Übersicht](../../guide/overview/index.html) und Beispiele.
+
+ [1]: http://www.html5rocks.com/en/features/storage
+
+## LocalStorage
+
+Auch bekannt als *web-Speicher*, *einfache Lagerung*, oder durch seine 
Alternative *Session-Speicherung* -Schnittstelle, diese API bietet synchrone 
Schlüssel/Wert-Paar Speicher, und steht im zugrunde liegenden 
WebView-Implementierungen. Finden Sie in [der W3C-Spezifikation][2] für 
Details.
+
+ [2]: http://www.w3.org/TR/webstorage/
+
+## WebSQL
+
+Diese API ist verfügbar in den zugrunde liegenden WebView. Der [Web SQL 
Database-Spezifikation][3] bietet Zugriff auf weitere vollwertige 
Datenbanktabellen über SQL-Abfragen.
+
+ [3]: http://dev.w3.org/html5/webdatabase/
+
+Die folgenden Plattformen unterstützen WebSQL:
+
+*   Android
+*   BlackBerry 10
+*   iOS
+*   Tizen
+
+## IndexedDB
+
+Diese API ist verfügbar in den zugrunde liegenden WebView. [Indiziert DB][4] 
bietet mehr Funktionen als LocalStorage aber weniger als WebSQL.
+
+ [4]: http://www.w3.org/TR/IndexedDB/
+
+Die folgenden Plattformen unterstützen IndexedDB:
+
+*   BlackBerry 10
+*   Firefox OS
+*   Windows Phone 8
+*   Windows 8
+
+## Plugin-Optionen
+
+Neben der Lagerung APIs oben aufgeführten, können Sie die [Datei API][5] zum 
Zwischenspeichern von Daten auf dem lokalen Dateisystem. Andere [Cordova 
Plugins][6] bieten ähnliche Speicheroptionen.
+
+ [5]: https://github.com/apache/cordova-plugin-file/blob/master/doc/index.md
+ [6]: http://plugins.cordova.io/
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/cordova/storage/storage.opendatabase.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/cordova/storage/storage.opendatabase.md 
b/www/docs/de/dev/cordova/storage/storage.opendatabase.md
new file mode 100644
index 0000000..c44e632
--- /dev/null
+++ b/www/docs/de/dev/cordova/storage/storage.opendatabase.md
@@ -0,0 +1,72 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: openDatabase
+---
+
+# openDatabase
+
+Gibt eine neue `Database` Objekt.
+
+    var dbShell = window.openDatabase(database_name, database_version, 
database_displayname, database_size);
+    
+
+## Beschreibung
+
+Die Methode erstellt eine neue SQL-Lite [Datenbank](database/database.html) 
und gibt ein `Database` -Objekt, das Manipulation der Daten ermöglicht.
+
+## Unterstützte Plattformen
+
+*   Android
+*   BlackBerry WebWorks (OS 6.0 und höher)
+*   iOS
+*   Tizen
+
+## Kleines Beispiel
+
+    var db = window.openDatabase("test", "1.0", "Test DB", 1000000);
+    
+
+## Vollständiges Beispiel
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+    
+        <script type="text/javascript" charset="utf-8" 
src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+    
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+    
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var db = window.openDatabase("test", "1.0", "Test DB", 1000000);
+        }
+    
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Open Database</p>
+      </body>
+    </html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/guide/appdev/hooks/index.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/guide/appdev/hooks/index.md 
b/www/docs/de/dev/guide/appdev/hooks/index.md
new file mode 100644
index 0000000..92233b2
--- /dev/null
+++ b/www/docs/de/dev/guide/appdev/hooks/index.md
@@ -0,0 +1,260 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: Hooks-Guide
+---
+
+# Hooks-Guide
+
+Cordova-Hooks stellen besondere Skripts die konnten durch Anwendung und 
Plugin-Entwickler hinzugefügt werden oder auch durch Ihr eigenes Buildsystem 
Cordova Befehle anpassen. Aktionsskripte einrichten könnte definiert, indem 
sie auf die besonderen vordefinierte Ordner (`/hooks`) oder über 
Konfigurationsdateien (`config.xml` und `plugin.xml`) und nacheinander in 
folgender Reihenfolge ausgeführt werden:
+
+  * Anwendung Haken aus `/hooks`;
+  * Anwendung-Haken von `"config.xml"`;
+  * Plugin-Haken aus `plugins/.../plugin.xml`.
+
+**Hinweis**: `/hooks` Verzeichnis gilt zugunsten der Haken Elemente in 
config.xml und plugin.xml.
+
+## Unterstützte Haken-Typen
+
+Die folgenden Haken-Typen werden unterstützt:
+
+    after_build
+    after_compile
+    after_clean
+    after_docs
+    after_emulate
+    after_platform_add
+    after_platform_rm
+    after_platform_ls
+    after_plugin_add
+    after_plugin_ls
+    after_plugin_rm
+    after_plugin_search
+    after_plugin_install // Plugin hooks in plugin.xml are executed for a 
plugin being installed only
+    after_prepare
+    after_run
+    after_serve
+    before_build
+    before_clean
+    before_compile
+    before_docs
+    before_emulate
+    before_platform_add
+    before_platform_rm/
+    before_platform_ls
+    before_plugin_add
+    before_plugin_ls
+    before_plugin_rm
+    before_plugin_search/
+    before_plugin_install // Plugin hooks in plugin.xml are executed for a 
plugin being installed only
+    before_plugin_uninstall // Plugin hooks in plugin.xml are executed for a 
plugin being uninstalled only
+    before_prepare
+    before_run
+    before_serve
+    pre_package // Windows and Windows Phone only
+    
+
+## Möglichkeiten, Haken zu definieren
+
+### Über `/hooks` -Verzeichnis
+
+**Hinweis**: Diese Methode gilt als veraltet zugunsten der Haken Elemente in 
config.xml und plugin.xml.
+
+Um benutzerdefinierte Aktion ausgeführt wird, wenn die entsprechenden 
Haken-Typ ausgelöst wird, verwenden Sie Haken als Name für einen Unterordner 
im Verzeichnis 'Haken' und platzieren Sie Skriptdateien Sie hier zum Beispiel:
+
+    # script file will be automatically executed after each build
+    hooks/after_build/after_build_custom_action.js
+    
+
+Wenn Sie diesen Haken verwenden, werden sie immer als exe-Dateien, nicht als 
ladbare Module in JavaScript ausgeführt werden. **Denken Sie daran**: Ihre 
Skripte in diesem Fall ausführbar machen.
+
+### "Config.xml"
+
+Haken können in des Projekts `"config.xml"` `<hook>` Elemente, z. B. mit 
definiert werden:
+
+    <hook type="before_build" src="scripts/appBeforeBuild.bat" />
+    <hook type="before_build" src="scripts/appBeforeBuild.js" />
+    <hook type="before_plugin_install" src="scripts/appBeforePluginInstall.js" 
/>
+    
+    <platform name="wp8">
+        <hook type="before_build" src="scripts/wp8/appWP8BeforeBuild.bat" />
+        <hook type="before_build" src="scripts/wp8/appWP8BeforeBuild.js" />
+        <hook type="before_plugin_install" 
src="scripts/wp8/appWP8BeforePluginInstall.js" />
+        ...
+    </platform>
+    
+    <platform name="windows8">
+        <hook type="before_build" 
src="scripts/windows8/appWin8BeforeBuild.bat" />
+        <hook type="before_build" src="scripts/windows8/appWin8BeforeBuild.js" 
/>
+        <hook type="before_plugin_install" 
src="scripts/windows8/appWin8BeforePluginInstall.js" />
+        ...
+    </platform>
+    
+
+### Plugin-Haken (plugin.xml)
+
+Haken Sie Skripte mit `<hook>` Elemente in einem `plugin.xml` wie das als 
Plugin-Entwickler, die, den Sie definieren können:
+
+    <hook type="before_plugin_install" src="scripts/beforeInstall.js" />
+    <hook type="after_build" src="scripts/afterBuild.js" />
+    
+    <platform name="wp8">
+        <hook type="before_plugin_install" src="scripts/wp8BeforeInstall.js" />
+        <hook type="before_build" src="scripts/wp8BeforeBuild.js" />
+        ...
+    </platform>
+    
+
+`Before_plugin_install`, `After_plugin_install`, `Before_plugin_uninstall` 
-Plugin, die ausschließlich für das Plugin installiert/deinstalliert Haken 
ausgelöst werden.
+
+## Skript-Schnittstelle
+
+### Javascript
+
+Wenn Sie Haken mit Node.js schreiben, verwenden Sie die folgende 
Moduldefinition:
+
+```javascript
+module.exports = function(context) {
+    ...
+}
+```
+
+Sie können Ihre Scipts Async mit f: machen.
+
+```javascript
+module.exports = function(context) {
+    var Q = context.requireCordovaModule('q');
+    var deferral = new Q.defer();
+
+    setTimeout(function(){
+      console.log('hook.js>> end');
+    deferral.resolve();
+    }, 1000);
+
+    return deferral.promise;
+}
+```
+
+`context` -Objekt enthält Haken Typ, ausgeführten Skriptes vollständigen 
Pfad, "Optionen" Haken, Befehlszeilenargumente Cordova und auf oberster Ebene 
"Cordoba"-Objekt übergeben:
+
+```json
+{
+  "hook": "before_plugin_install",
+  "scriptLocation": "c:\\script\\full\\path\\appBeforePluginInstall.js",
+  "cmdLine": "The\\exact\\command\\cordova\\run\\with arguments",
+  "opts": {
+    "projectRoot":"C:\\path\\to\\the\\project",
+    "cordova": {
+      "platforms": ["wp8"],
+      "plugins": ["com.plugin.withhooks"],
+      "version": "0.21.7-dev"
+    },
+    "plugin": {
+      "id": "com.plugin.withhooks",
+      "pluginInfo": {
+        ...
+      },
+      "platform": "wp8",
+      "dir": "C:\\path\\to\\the\\project\\plugins\\com.plugin.withhooks"
+    }
+  },
+  "cordova": {...}
+}
+
+```
+
+`context.opts.plugin` Objekt wird nur an Plugin-Haken-Skripts übergeben 
werden.
+
+Cordova-Zusatzmodule benötigen Sie auch in Ihrem Skript mithilfe von 
`context.requireCordovaModule` wie folgt:
+
+```javascript
+var Q = context.requireCordovaModule('q');
+```
+
+**Hinweis**: neues Modul Lader Skript Schnittstelle wird verwendet für die 
`js` -Dateien über `Datei config.xml` oder `plugin.xml` nur definiert. Aus 
Kompatibilitätsgründen werden die Haken-Dateien, die über `/hooks` Ordner 
angegeben über Knoten Child_process Laich, siehe "Non-Javascript" Abschnitt 
weiter unten ausgeführt.
+
+### Ohne javascript
+
+**Hinweis**: Wir empfehlen, schreiben Ihre Haken mit Node.js, so dass sie 
Cross-Plattform sind, siehe obigen Abschnitt von 'Javascript'.
+
+Ohne Javascript-Skripten werden über Knoten Child_process Laich von 
Root-Verzeichnis des Projekts ausgeführt und haben die 
Wurzel-Verzeichnis-Pässe als erstes Argument. Alle anderen Optionen werden an 
das Skript mithilfe von Umgebungsvariablen übergeben:
+
+  * CORDOVA_VERSION - die Version der Cordova-CLI.
+  * CORDOVA_PLATFORMS - Komma-separierte Liste der Plattformen, für die der 
Befehl gilt (z.B.: android, Ios).
+  * CORDOVA_PLUGINS - Komma-getrennte Liste von Plugin IDs, für die der 
Befehl gilt (z.B.: org.apache.cordova.file, org.apache.cordova.file-Transfer)
+  * CORDOVA_HOOK - Pfad an den Haken, der ausgeführt wird.
+  * CORDOVA_CMDLINE - die genauen Befehlszeilenargumente übergeben, Cordova 
(z.B.: Cordova Ios--führen zu emulieren)
+
+Wenn ein Skript einen Exitcode ungleich NULL zurückgibt, wird der 
übergeordnete Cordova Befehl abgebrochen.
+
+Beachten Sie auch, dass selbst wenn Sie unter Windows arbeiten, und für den 
Fall, dass Ihre Aktionsskripte sind nicht Bat-Dateien (was empfohlen wird Sie 
ggf. Ihre Skripte in nicht-Windows-Betriebssystemen arbeiten,) erwarten Cordova 
CLI eine Shebang-Zeile die erste Zeile, damit den Interpreter weiß es nutzen, 
um das Skript zu starten muss. Die Shebang-Zeile sollte das folgende Beispiel 
entsprechen:
+
+    #!/usr/bin/env [name_of_interpreter_executable]
+    
+
+## Verwendung des Beispiels
+
+Dieses Beispiel veranschaulicht Cordova Haken Nutzung zu verfolgen, die 
Konsolenausgabe die Größe der generierten .apk Datei für Android-Plattform.
+
+Erstellen Sie leere Cordova app und fügen Sie die folgende Definition zu 
`"config.xml"` sagen Cordova nach jedem Build Plattform `afterBuild.js` -Skript 
ausführen hinzu.
+
+    <hook type="after_build" src="scripts/afterBuild.js" />
+    
+
+Erstellen Sie `scripts/afterBuild.js` -Datei, und fügen Sie die folgende 
Implementierung. Wir verwenden Async-Version der `fs.stat` -Methode um zu 
demonstrieren, wie die Async-Funktionalität über Haken getan werden könnte.
+
+    module.exports = function(ctx) {
+        // make sure android platform is part of build 
+        if (ctx.opts.platforms.indexOf('android') < 0) {
+            return;
+        }
+        var fs = ctx.requireCordovaModule('fs'),
+            path = ctx.requireCordovaModule('path'),
+            deferral = ctx.requireCordovaModule('q').defer();
+    
+        var platformRoot = path.join(ctx.opts.projectRoot, 
'platforms/android');
+        var apkFileLocation = path.join(platformRoot, 
'build/outputs/apk/android-debug.apk');
+    
+        fs.stat(apkFileLocation, function(err,stats) {
+            if (err) {
+                 deferral.reject('Operation failed');
+            } else {
+                console.log('Size of ' + apkFileLocation + ' is ' + stats.size 
+' bytes');
+                deferral.resolve();
+            }
+        });
+    
+        return deferral.promise;
+    };
+    
+
+Parameter `ctx` im obigen Beispiel wird übergeben von Cordova und 
Ausführungskontext wie vollständigen Pfades des Skripts, Zielplattform, 
Befehlszeilenargumente darstellt und auch zusätzliche Helfer Funktionen 
verfügbar macht. Siehe `Skript Schnittstelle` Abschnitt oben für weitere 
Details.
+
+Jetzt können Sie die android-Plattform hinzufügen und ausführen Build.
+
+    cordova platform add android
+    ..
+    cordova build
+    ..
+    Size of path\to\app\platforms\android\build\outputs\apk\android-debug.apk 
is 1821193 bytes
+    
+
+Weitere gute Verwendungsbeispiele konnte hier gefunden werden:
+
+<http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/guide/appdev/privacy/index.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/guide/appdev/privacy/index.md 
b/www/docs/de/dev/guide/appdev/privacy/index.md
new file mode 100644
index 0000000..40b7f8b
--- /dev/null
+++ b/www/docs/de/dev/guide/appdev/privacy/index.md
@@ -0,0 +1,60 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: Datenschutz-Guide
+---
+
+# Datenschutz-Guide
+
+Mobile Privatsphäre ist ein kritisches Thema, das jeder app-Entwickler widmen 
muss. Die Benutzer erwarten, dass ihre privaten Daten werden gesammelt und von 
Ihrer Anwendung entsprechend behandelt. Außerdem gibt es eine wachsende Zahl 
von Ländern, die jetzt rechtliche Anforderungen an mobile Datenschutzpraktiken 
haben.
+
+Leitfaden zur mobilen app Privatsphäre sollte eine *Grundierung* auf einige 
der bedeutendsten Fragen berücksichtigt werden. Es umreißt einige breit 
akzeptierten Empfehlungen und Verweise auf andere ausführlichere Anleitungen 
und Referenzen.
+
+*   **Privacy Policy**: Sie app sollte eine Datenschutzerklärung, die Themen 
wie welche Informationen die app von oder zu den Benutzern sammelt, wie diese 
Informationen verwendet werden, mit denen es geteilt ist, und wie Benutzer 
datenschutzrelevante Entscheidungen innerhalb der app machen können. Um 
Verständnis zu erleichtern, sollten Sie verwenden Klartext und vermeiden 
Fachjargon. Sie sollten Ihre Datenschutzrichtlinien für Benutzer überprüfen 
Sie vor dem Download, wie z. B. in der app-Beschreibung in der app-Marktplatz 
verfügbar machen. Darüber hinaus sollten Sie Ihre Datenschutzerklärung 
innerhalb der app selbst zur Verfügung stellen. Die geringe Größe von 
Handy-Displays schafft Herausforderungen für Anzeigen von 
Datenschutzrichtlinien für Benutzer. Ziehen Sie Entwicklung einer *Kurzform* 
der Politik mit den wichtigsten Informationen in Betracht, und geben Sie dann 
einen Link zu der "Langform" Politik für mehr Details interessiert. Mehrere 
Gruppen versuchen, Icon
 -basierter Standards für die Datenschutz-Praktiken, die Sie betrachten 
wünschen können, sobald diese Standards ältere Kommunikation entwickeln.
+
+*   **Sammlung vertraulicher Informationen**: eine app-Sammlung von sensiblen 
persönlichen Informationen wichtig Datenschutz Bedenken. Beispiele für 
sensible persönliche Daten Finanzinformationen, Gesundheit Informationen und 
Daten von Kindern. Darüber hinaus Informationen aus bestimmten Sensoren und 
Datenbanken, die in der Regel auf mobilen Geräten und Tabletten, wie 
Geolocation-Informationen, Kontakte/Telefonbuch, Mikrofon/Kamera und 
gespeicherte Bilder oder Videos gefunden. Die folgenden Dokumentationsseiten 
für weitere Informationen siehe: [Kamera][1]"," [erfassen][2]"," 
[Kontakte][3]"und" [Geolocation][4]. Im Allgemeinen sollten Sie erhalten die 
Berechtigung eines Benutzers ausdrücklich vor der Erhebung sensiblen 
Informationen und, wenn möglich, einen Kontrollmechanismus, der einem Benutzer 
ermöglicht, Berechtigungen zu ändern. App Betriebssystemen kann in einigen 
Fällen durch Vorlage von just-in-Time-Dialogfelder, die Zustimmung des 
Benutzers vor Auflistung Fragen h
 elfen. Sollten Sie in diesen Fällen nutzen jede Gelegenheit zum Anpassen des 
Text im Dialog zu klären, wie die app verwendet und gegebenenfalls diese 
Informationen teilt.
+
+*   **Vermeidung von Benutzer-Überraschung**: Wenn die app sammelt oder 
Informationen in einer Weise, die möglicherweise überraschend für Benutzer 
im Lichte der Hauptzweck Ihrer Anwendung (z. B. ein Musik-Player, der auf die 
gespeicherten Bilder zugreift) verwendet, sollten Sie ähnliche Schritte wie 
bei der Auflistung von sensiblen persönlichen Informationen nehmen. Das 
heißt, sollten Sie dringend die Verwendung von just-in-Time-Dialogfelder 
informieren des Benutzers über die Sammlung oder Verwendung dieser 
Informationen und gegebenenfalls ein entsprechenden Datenschutz-Steuerelement 
bereitstellen.
+
+*   **Dritter Datenerhebung oder Teilen**: Wenn Sie app Informationen erfasst, 
die auf eine andere Gesellschaft--bereitgestellt wird wie ein 
social-networking-Plattform oder ein Ad-Netzwerk (z. B. Wenn Ihre app Werbung 
angezeigt wird)--Sie sollten informieren Sie Ihre Benutzer dieser Sammlung und 
Austausch. Zumindest sollten Ihre Datenschutzrichtlinien beschreiben, die 
Sammlung von Informationen und Austausch und ggf. bieten Ihren Benutzern die 
Möglichkeit zu steuern oder opt-Out dieser Sammlung oder Teilen.
+
+*   **Sammlung Begrenzung und der Sicherheit**: Ihre Nutzer vertrauen Ihre app 
mit ihren Informationen und sie erwarten, dass Sie entsprechende 
Vorsichtsmaßnahmen zum Schutz bringt. Eine der besten Möglichkeiten zur 
Vermeidung von Sicherheitslücken von persönlichen Informationen soll nicht in 
erster Linie die Informationen zu sammeln, es sei denn, Ihre Anwendung eine 
bestimmte und legitimen geschäftlichen Gründen für die Auflistung. 
Informationen, die gesammelt werden müssen, sicherstellen Sie, dass Sie 
entsprechenden Sicherheitskontrollen zum Schutz dieser Informationen angeben, 
ob diese auf dem Gerät oder auf den Back-End-Servern gespeichert sind. Sie 
sollte auch eine entsprechenden Daten-Aufbewahrungsrichtlinie entwickeln, die 
innerhalb der app und auf den Back-End-Servern implementiert wird.
+
+ [1]: cordova_camera_camera.md.html
+ [2]: cordova_media_capture_capture.md.html
+ [3]: cordova_contacts_contacts.md.html
+ [4]: cordova_geolocation_geolocation.md.html
+
+Im folgenden werden einige zusätzliche hilfreiche mobile 
Datenschutz-Handbücher für Entwickler:
+
+*   Kalifornische Generalstaatsanwalt, [Datenschutz unterwegs: Empfehlungen 
für das Mobile Ökosystem][5]
+
+*   Zentrum für Demokratie & Technologie, Zukunft der Privatsphäre Forum, 
[Best Practices für Mobile App-Entwickler][6]
+
+*   CTIA-The Wireless Association, [bewährte Methoden und Richtlinien für 
Location Based Services][7]
+
+*   Federal Trade Commission, [Mobile Privacy Angaben: Aufbau von Vertrauen 
durch Transparenz][8]
+
+*   Zukunft der Privatsphäre Forum, [Anwendung Privacy][9] -Website
+
+ [5]: http://oag.ca.gov/sites/all/files/pdfs/privacy/privacy_on_the_go.pdf
+ [6]: 
http://www.futureofprivacy.org/wp-content/uploads/Best-Practices-for-Mobile-App-Developers_Final.pdf
+ [7]: http://www.ctia.org/business_resources/wic/index.cfm/AID/11300
+ [8]: http://www.ftc.gov/os/2013/02/130201mobileprivacyreport.pdf
+ [9]: http://www.applicationprivacy.org
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/guide/appdev/security/index.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/guide/appdev/security/index.md 
b/www/docs/de/dev/guide/appdev/security/index.md
new file mode 100644
index 0000000..44ab9dd
--- /dev/null
+++ b/www/docs/de/dev/guide/appdev/security/index.md
@@ -0,0 +1,108 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: Sicherheitshandbuch
+---
+
+# Sicherheitshandbuch
+
+Die folgende Anleitung beinhaltet einige bewährte Sicherheitsmethoden, die 
Sie, beim Entwickeln einer Anwendung von Cordova beachten sollten. Bitte 
beachten Sie, dass die Sicherheit ist ein sehr kompliziertes Thema und deshalb 
dieses Handbuch ist nicht erschöpfend. Wenn Sie, dass Sie zu diesem Leitfaden 
dazu beitragen können glauben, wenden Sie sich bitte ein Thema in Cordova's 
Bug-Tracker unter ["Dokumentation"][1]abzulegen. Dieser Leitfaden soll auf 
allgemeine Cordova Entwicklung (alle Plattformen) anwendbar, aber 
Plattform-spezifischen Besonderheiten zu beachten.
+
+ [1]: https://issues.apache.org/jira/browse/CB/component/12316407
+
+## Dieses Handbuch behandelt die folgenden Themen:
+
+*   Whitelist
+*   Iframes und die Id Rückrufmechanismus
+*   Zertifikat fixieren
+*   Selbstsignierte Zertifikate
+*   Verschlüsselte Speicherung
+*   Allgemeine Tipps
+*   Empfohlene Artikel und andere Ressourcen
+
+## Whitelist
+
+*   Lesen und verstehen der [Whitelist-Guide](../whitelist/index.html)
+
+*   Domain-Whitelist funktioniert nicht auf Android API 10 und unten und WP8 
für Iframes und XMLHttpRequest. Dies bedeutet ein Angreifer kann einer 
beliebigen Domäne in einem Iframe laden und jedes Skript auf dieser Seite in 
Iframe direkt auf Cordova JavaScript-Objekte und die entsprechenden native 
Java-Objekte zugreifen kann. Sie sollten dies in Betracht ziehen, beim 
Erstellen von Anwendungen für diese Plattformen. In der Praxis bedeutet dies, 
um sicherzustellen, dass Sie Ziel einer höher als 10 Android API und, wenn 
möglich nicht Iframe zu verwenden, um externe Inhalte - laden das 
InAppBrowser-Plugin oder andere Drittanbieter Plug-ins verwenden.
+
+## Iframes und die Id Rückrufmechanismus
+
+Wenn Inhalte in einem Iframe aus einer Whitelist-Domäne bereitgestellt 
werden, haben diese Domäne Zugriff auf die native Cordova-Brücke. Dies 
bedeutet, dass Sie ein Drittanbieter-Werbe-Netzwerk Whitelist und dienen diese 
anzeigen über ein Iframe, ist es möglich, dass eine böswillige Anzeige ist 
aus Iframe ausbrechen und bösartige Aktionen ausführen können. Aus diesem 
Grund sollten Sie in der Regel nicht Iframes verwenden, wenn Sie den Server 
steuern, der den Iframe-Inhalt hostet. Beachten Sie, dass es Drittanbieter 
Plug-ins zur Verfügung gibt, um Werbe-Netzwerke zu unterstützen. Beachten 
Sie, dass diese Aussage nicht für iOS, nämlich alles gilt, einschließlich 
der Iframe Verbindungen abfängt.
+
+## Zertifikat fixieren
+
+Cordova unterstützt keine wahre Zertifikat zu fixieren. Das größte 
Hindernis für das ist ein Mangel an systemeigenen APIs in Android zum Abfangen 
des SSL-Verbindungen um die Überprüfung des Zertifikats des Servers 
ausführen. (Obwohl es fixieren auf Android in Java mit JSSE Zertifikat kann, 
die Webview auf Android in C++ geschrieben ist und Server-Verbindungen für 
Sie, indem die Webview verarbeitet werden, ist also es nicht möglich, Java und 
JSSE es zu verwenden.) Da Apache Cordova über mehrere Plattformen hinweg 
konsistent APIs bieten soll, bricht nicht mit einer Funktion in eine größere 
Plattform die Konsistenz.
+
+Es gibt Möglichkeiten zur Angleichung Zertifikat fixieren, z. B. 
Überprüfung, dass die öffentlichen Schlüssel des Servers (Fingerabdruck) 
der erwartete Wert ist, wenn die Anwendung gestartet wird oder zu anderen 
verschiedenen Zeiten während der Lebensdauer der Anwendung. Es gibt 
Drittanbieter Plug-ins zur Cordova, die das tun kann. Jedoch ist dies nicht 
dasselbe wie wahre Zertifikat fixieren, die automatisch den erwarteten Wert auf 
jede Verbindung zu dem Server überprüft.
+
+## Selbstsignierte Zertifikate
+
+Verwendung selbstsignierter Zertifikate auf dem Server wird nicht empfohlen. 
Wenn Sie SSL wünschen, ist dann es dringend empfohlen, dass Ihr Server über 
ein Zertifikat verfügen, die von einer bekannten Zertifizierungsstelle 
(Certificate Authority) richtig signiert wurde. Die Unfähigkeit auf true 
Zertifikat festhalten, ist dies wichtiger.
+
+Der Grund ist, dass selbstsignierte Zertifikate zu akzeptieren umgeht die 
Überprüfung der Zertifikatkette, wodurch jedes Serverzertifikat vom Gerät 
als gültig betrachtet werden. Dies eröffnet die Kommunikation für 
Man-in-the-Middle-Angriffe. Es wird sehr leicht für einen Hacker nicht nur 
abfangen und lesen die gesamte Kommunikation zwischen dem Gerät und dem 
Server, sondern auch um die Mitteilung zu ändern. Das Gerät wird nie 
erfahren, dass dies geschieht, weil es nicht überprüfen, ob der 
Server-Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle signiert 
ist. Das Gerät hat keinen Beweis, dass der Server, der sie erwartet. Wegen der 
Leichtigkeit einen Man-in-the-Middle-Angriff zu tun ist es nur geringfügig 
besser als nur http anstelle von Https auf einem nicht vertrauenswürdigen 
Netzwerk ausgeführt, selbstsignierte Zertifikate zu akzeptieren. Ja, der 
Datenverkehr verschlüsselt werden würde, aber es könnte mit dem Schlüssel 
aus einem Man-in-the-Middle, 
 verschlüsselt werden, so dass die Man-in-the-Middle alles, zugreifen kann, so 
dass Verschlüsselung nutzlos außer für passive Beobachter ist. Nutzer 
vertrauen SSL um sicher zu sein, und dies absichtlich verdiene es unsicher, so 
wird die SSL-Verwendung irreführend. Wenn dies auf einem vertrauenswürdigen 
Netzwerk verwendet wird (d. h., Sie sind völlig innerhalb eines kontrollierten 
Unternehmen), selbstsignierte Zertifikate noch nicht empfohlen werden. Die 
beiden Empfehlungen in einem vertrauenswürdigen Netzwerk sind nur http 
verwenden, da das Netzwerk selbst vertrauenswürdig ist oder ein Zertifikat von 
einer vertrauenswürdigen Zertifizierungsstelle (nicht selbstsigniert) 
unterzeichnet. Das Netzwerk vertrauenswürdig ist oder nicht.
+
+Die hier beschriebenen Prinzipien beziehen sich nicht auf Apache Cordova, sie 
gelten für alle Client-Server-Kommunikation.
+
+Beim Ausführen von Cordova auf Android verwenden `android:debuggable="true"` 
in der Anwendung Manifest erlauben SSL-Fehler, z. B. Zertifikat Kette 
Validierungsfehler auf selbstsignierte Zertifikate. So Sie selbstsignierte 
Zertifikate in dieser Konfiguration können, aber dies keine Konfiguration, die 
verwendet werden soll ist, wenn die Anwendung in der Produktion ist. Es soll 
nur während der Anwendungsentwicklung verwendet werden.
+
+## Verschlüsselte Speicherung
+
+(TBD)
+
+## Allgemeine Tipps
+
+### Verwenden Sie keine Android Gingerbread!
+
+*   Legen Sie Ihr höher als 10 min-Ziel-Sdk-Niveau. API 10 ist Lebkuchen und 
Lebkuchen wird nicht mehr von Google oder Geräte-Herstellern unterstützt und 
wird daher nicht empfohlen von Cordova-Team. 
+*   Lebkuchen nachweislich unsicher und einer der wichtigsten gezielte mobile 
OSs [http://www.mobilemag.com/2012/11/06/andriod-2-3-gingerbread-security/][2]. 
+*   Die Whitelist auf Android funktioniert nicht mit Lebkuchen oder niedriger. 
Dies bedeutet, dass ein Angreifer schädlichen Code in einem Iframe geladen 
werden kann, das müsste dann Zugriff auf alle von Cordova-APIs und können, 
dass der Zugang zu persönliche Daten stehlen, SMS-Nachrichten an 
Premium-Rate-Nummern zu schicken und andere böswillige Aktionen 
durchzuführen. 
+
+ [2]: http://bgr.com/2012/11/06/android-security-gingerbread-malware/
+
+### InAppBrowser für externe Links verwenden
+
+*   Verwenden Sie die InAppBrowser beim Öffnen von Links zu externen 
Websites. Das ist viel sicherer als Whitelisting eines Domain-namens und 
einschließlich der Inhalte direkt in der Anwendung, da die InAppBrowser der 
native Browser-Sicherheits-Features verwenden und nicht die Website geben auf 
Ihre Cordova-Umgebung Zugriff. Selbst wenn Sie der Website Dritter Vertrauen 
und direkt in Ihre Anwendung aufnehmen, kann diese Websites Dritter 
schädlichen Webinhalten verknüpfen. 
+
+### Validieren Sie alle Benutzereingaben
+
+*   Überprüfen Sie immer alle Eingaben, die die Anwendung akzeptiert. Dazu 
gehören Benutzernamen, Kennwörter, Termine, hochgeladen Medien usw.. Da ein 
Angreifer Ihr HTML und JS Vermögen (entweder durch Dekompilierung der 
Anwendung oder mithilfe von debugging-Tools wie Chrome://inspect) manipulieren 
könnte, sollten diese Validierung auch auf Ihrem Server durchgeführt werden, 
insbesondere vor der Übergabe der Daten an einen Back-End-Dienst. 
+*   Andere Quellen, wo die Daten überprüft werden sollten: 
Benutzerdokumente, Kontakte, push-Benachrichtigungen
+
+### Sensible Daten nicht zwischenspeichern
+
+*   Wenn Benutzernamen, Kennwort, Geolocation-Informationen und andere 
sensiblen Daten werden zwischengespeichert, konnte dann es möglicherweise 
später durch ein nicht autorisierter Benutzer oder eine Anwendung abgerufen 
werden.
+
+### Verwenden Sie keine eval(), es sei denn, Sie wissen was Sie tun
+
+*   Die JavaScript-Funktion eval() hat eine lange Geschichte, die missbraucht 
werden. Benutze es falsch kann Ihren Code für Injection-Angriffen, Debuggen 
von Schwierigkeiten und langsamer Ausführung von Code öffnen. 
+
+### Nicht davon ausgehen Sie, dass der Quellcode sicher ist
+
+*   Da eine Anwendung von Cordova aus HTML und JavaScript basiert, die in 
einem einheitlichen Container gepackt bekommen, sollten Sie nicht Ihr Code 
sicher sein. Es ist möglich, reverse Engineering eine Cordova-Anwendung. 
+
+## Empfohlene Artikel und andere Ressourcen
+
+*   [HTML5-Sicherheit-Spickzettel, Detaillierung die HTML5-Anwendung 
sichern][3]
+*   [PhoneGap's Artikel auf Gerätesicherheit, wie die Verwendung von 
verschlüsselten Daten][4]
+*   [Whitepaper über bekannte Sicherheitslücken in Webview basierte 
Hybridanwendungen][5]
+
+ [3]: https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet
+ [4]: https://github.com/phonegap/phonegap/wiki/Platform-Security
+ [5]: http://www.cis.syr.edu/~wedu/Research/paper/webview_acsac2011.pdf
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/guide/appdev/whitelist/index.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/guide/appdev/whitelist/index.md 
b/www/docs/de/dev/guide/appdev/whitelist/index.md
new file mode 100644
index 0000000..2715cec
--- /dev/null
+++ b/www/docs/de/dev/guide/appdev/whitelist/index.md
@@ -0,0 +1,145 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: Whitelist-Guide
+---
+
+# Whitelist-Guide
+
+Domain-Whitelist ist ein Sicherheitsmodell, das den Zugriff steuert an externe 
Domänen, die auf die Anwendung keine Kontrolle hat. Cordova bietet eine 
konfigurierbare Sicherheitspolitik definieren, welche externen Websites 
zugegriffen werden können. Standardmäßig werden neue apps so konfiguriert, 
dass Zugriff auf jeder Website. Sie sollten vor dem Umzug Ihre Anwendung auf 
die Produktion, eine Whitelist zu formulieren und ermöglichen den Zugriff auf 
bestimmte Netzwerk-Domains und Sub-Domains.
+
+Für Android und iOS (Stand ihren 4,0 Releases) ist Cordovas 
Sicherheitspolitik erweiterbar über eine Plugin-Schnittstelle. Ihre Anwendung 
sollte [Cordova-Plugin-Whitelist][1], verwenden, wie es höhere Sicherheit und 
Konfigurierbarkeit als frühere Versionen von Cordova bietet. Es ist, zwar 
möglich, eigene Whitelist-Plugin implementieren empfiehlt es sich nicht, wenn 
Ihre app sehr spezifischen Sicherheitsanforderungen Politik hat. Finden Sie die 
[Cordova-Plugin-Whitelist][1] für Informationen zur Verwendung und 
Konfiguration.
+
+ [1]: https://github.com/apache/cordova-plugin-whitelist
+
+Für andere Plattformen entspricht Cordova der [W3C Widget 
Zugang][2]-Spezifikation, die auf die `< access >`-Element innerhalb `der app 
Datei config.XML aktivieren Netzwerkzugriff auf bestimmte Domänen` angewiesen 
ist. Für Projekte, die auf der CLI-Workflow in der Command-Line Interface 
beschrieben, befindet sich diese Datei im Wurzelverzeichnis des Projekts. Sonst 
sind die Standorte für plattformspezifische Entwicklungswege, in den folgenden 
Abschnitten aufgeführt. (Siehe die verschiedenen Plattform-Leitfäden für 
weitere Informationen auf jeder Plattform.)
+
+ [2]: http://www.w3.org/TR/widgets-access/
+
+Die folgenden Beispiele veranschaulichen `< access >` Whitelist-Syntax:
+
+*   Zugang zu [google.com][3]:
+    
+        <access origin="http://google.com"; />
+        
+
+*   Zugriff auf die sicheren [google.com][4] ( `https://` ):
+    
+        <access origin="https://google.com"; />
+        
+
+*   Zugriff auf die Subdomain [maps.google.com][5]:
+    
+        <access origin="http://maps.google.com"; />
+        
+
+*   Zugriff auf alle Subdomains von [google.com][3], z. B. 
[mail.google.com][6] und [docs.google.com][7]:
+    
+        <access origin="http://*.google.com"; />
+        
+
+*   Zugriff auf *alle* Domänen, z. B. [Google.de][3] und 
[developer.mozilla.org][8]:
+    
+        <access origin="*" />
+        
+    
+    Dies ist der Standardwert für neu erstellte CLI-Projekte.
+
+ [3]: http://google.com
+ [4]: https://google.com
+ [5]: http://maps.google.com
+ [6]: http://mail.google.com
+ [7]: http://docs.google.com
+ [8]: http://developer.mozilla.org
+
+Beachten Sie, dass einige Webseiten automatisch auf deren Homepage zu einer 
anderen Url, z. B. mit Https-Protokoll oder eine landesspezifische Domain 
umleiten können. Zum Beispiel http://www.google.com leitet sich für die 
Nutzung von SSL/TLS bei https://www.google.com, und dann kann weiter leiten in 
eine geography-Instanz wie https://www.google.co.uk. Solche Szenarien erfordern 
veränderte oder zusätzliche Whitelist-Einträge über Ihre ersten Bedarfs. 
Bitte berücksichtigen Sie dies, wie Sie Ihre Whitelist erstellen.
+
+Beachten Sie, dass die weiße Liste nur für die wichtigsten Cordova Webview 
gilt und nicht für eine InAppBrowser Webview oder Öffnung Links in der 
System-Web-Browser gilt.
+
+## Amazon Fire OS Whitelisting
+
+Plattformspezifische Whitelisting-Regeln werden in `res/xml/config.xml` 
gefunden.
+
+## Android Whitelisting
+
+Wie oben, siehe [Cordova-Plugin-Whitelist][1] für Details. Cordova-Android 
vor 4.0.0 finden Sie unter älteren Versionen dieser Dokumentation.
+
+## iOS Whitelisting
+
+Wie oben, siehe [Cordova-Plugin-Whitelist][1] für Details. Cordova-Ios vor 
4.0.0 finden Sie unter älteren Versionen dieser Dokumentation.
+
+## BlackBerry 10 Whitelisting
+
+Die Whitelist-Regeln werden in `www/config.xml` gefunden..
+
+BlackBerry 10 Verwendung von Platzhaltern unterscheidet sich von anderen 
Plattformen auf zwei Arten:
+
+*   Alle Inhalte erreichbar `XMLHttpRequest` muss explizit deklariert werden. 
Festlegen von `origin="*"` funktioniert nicht in diesem Fall. Alternativ kann 
die gesamte Websicherheit verwenden die `WebSecurity`-Präferenz beschrieben in 
[BlackBerry-Konfiguration](../../platforms/blackberry/config.html) deaktiviert 
werden:
+    
+        <preference name="websecurity" value="disable" />
+        
+
+*   Als Alternative zur Einstellung `*.domain` ein zusätzliche 
`Subdomains`-Attribut auf `true` festgelegt. Es sollte standardmäßig auf 
`false` festgelegt werden. Beispielsweise ermöglicht Folgendes den Zugriff auf 
`google.com` und `maps.google.com` `docs.google.com`:
+    
+        <access origin="http://google.com"; subdomains="true" />
+        
+    
+    Die folgenden Narrows-Zugang zu `google.com`:
+    
+        <access origin="http://google.com"; subdomains="false" />
+        
+    
+    Geben Sie Zugriff auf alle Domänen, einschließlich lokalen `file://` 
Protokoll an:
+    
+        <access origin="*" subdomains="true" />
+        
+
+(Weitere Informationen zum Support finden Sie BlackBerry Dokumentation auf dem 
[Access-element][9].)
+
+ [9]: 
https://developer.blackberry.com/html5/documentation/ww_developing/Access_element_834677_11.html
+
+## Firefox-OS
+
+In Firefox-OS gibt es kein Konzept für Whitelisting eine bestimmte Domäne. 
Stattdessen gibt es eine Ausnahmegenehmigung, genannt [SystemXHR][10]. Besteht 
die Notwendigkeit dieser Berechtigung `"config.xml"` hinzu:
+
+ [10]: 
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest#Permissions
+
+    <platform name="firefoxos">
+        <permission name="systemXHR" privileged="true" description="load data 
from server" />
+    </platform>
+    
+
+Das `XMLHttpRequest`-Objekt muss mit zwei Parametern `MozAnon` und `MozSystem` 
instanziiert werden:
+
+    var request = new XMLHttpRequest({
+        mozAnon: true,
+        mozSystem: true});
+    
+
+Diese Lösung ist transparent, so gibt es keinen Unterschied für andere 
Plattformen.
+
+## Windows Phone Whitelisting
+
+Die Whitelist-Regeln für Windows Phone 8 befinden sich in der app Datei 
`config.xml`.
+
+## Tizen Whitelisting
+
+Whitelisting-Regeln werden in der app-`config.xml`-Datei gefunden. Die 
Plattform basiert auf dem gleichen `subdomains`-Attribut als die 
BlackBerry-Plattform. (Weitere Informationen zur Unterstützung finden Sie 
Tizens Dokumentation für das [Access-element][11].)
+
+ [11]: 
https://developer.tizen.org/help/index.jsp?topic=%2Forg.tizen.web.appprogramming%2Fhtml%2Fide_sdk_tools%2Fconfig_editor_w3celements.htm
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/f061b980/www/docs/de/dev/guide/cli/index.md
----------------------------------------------------------------------
diff --git a/www/docs/de/dev/guide/cli/index.md 
b/www/docs/de/dev/guide/cli/index.md
new file mode 100644
index 0000000..d4ac64c
--- /dev/null
+++ b/www/docs/de/dev/guide/cli/index.md
@@ -0,0 +1,418 @@
+---
+license: >
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+title: Die Befehlszeilenschnittstelle
+---
+
+# Die Befehlszeilenschnittstelle
+
+Diese Anleitung zeigt Ihnen, wie Anwendungen zu erstellen und auf verschiedene 
native mobile Plattformen mit Bereitstellen der `cordova` 
Befehlszeilenschnittstelle (CLI). Mit diesem Tool können Sie neue Projekte 
erstellen und bauen sie auf verschiedenen Plattformen laufen auf echten 
Geräten oder innerhalb von Emulatoren. Die CLI ist das wichtigste Hilfsmittel 
für die Cross-Plattform-Workflow in der [Übersicht](../overview/index.html) 
beschrieben verwenden. Ansonsten können Sie auch die CLI Projektcode zu 
initialisieren, dann wechseln Sie in die verschiedenen Plattformen SDKs und 
Shell-Hilfsmittel für die weitere Entwicklung.
+
+## Voraussetzungen
+
+Sie müssen vor dem Ausführen alle Kommandozeilen-Tools, SDKs für jede 
Plattform zu installieren, möchten Sie als Ziel. (Siehe die Plattform-Führer 
für weitere Details).
+
+Hinzufügen von Unterstützung oder ein Projekt für jede Plattform neu 
erstellen, müssen Sie die Befehlszeilenschnittstelle aus dem gleichen Computer 
ausführen, die die Plattform SDK unterstützt. Die CLI unterstützt die 
folgenden Kombinationen:
+
+*   iOS (Mac)
+*   Amazon Fire Betriebssystem (Mac, Linux, Windows)
+*   Android (Mac, Linux, Windows)
+*   BlackBerry 10 (Mac, Linux, Windows)
+*   Windows Phone 8 (Windows)
+*   Windows (Windows)
+*   Firefox Betriebssystem (Mac, Linux, Windows)
+
+Auf dem Mac ist die Befehlszeile über die *Terminal* -Anwendung verfügbar. 
Auf dem PC steht als *Eingabeaufforderung* unter *Zubehör*.
+
+**Hinweis**: für nur-Windows-Plattformen, noch kann Ihre Entwicklung auf 
Mac-Hardware unter Windows in einer virtuellen Umgebung oder im 
Dual-Boot-Modus. Verfügbaren Optionen finden Sie unter der Windows Phone 8 
Platform Guide oder die Anleitung für die Windows-Plattform.
+
+Desto wahrscheinlicher ist es, dass die CLI von verschiedenen Maschinen 
ausführen, desto mehr macht es Sinn, einen entfernten Quellcode-Repository, 
deren Vermögen verwalten Sie zu lokalen Arbeitsverzeichnisse-down Pull.
+
+## Installieren der Cordova-CLI
+
+Das Befehlszeilentool Cordova ist als Npm-Paket in ein Ready-to-Use-Format 
verteilt. Es ist nicht notwendig, um es von Quellcode kompilieren.
+
+Installieren der `cordova` Command-line tool, gehen Sie folgendermaßen vor:
+
+1.  Downloaden und Installieren von [Node.js][1]. Nach der Installation sollte 
man in der Lage, rufen Sie `node` und `npm` auf der Befehlszeile. Falls 
gewünscht, optional verwenden Sie ein Tool wie `nvm` oder `nave` , Ihre 
Node.js-Installation zu verwalten.
+
+2.  Downloaden Sie und installieren Sie ein [Git-Client][2], wenn Sie nicht 
bereits ein haben. Nach der Installation sollte man in der Lage, rufen Sie 
`git` auf der Befehlszeile. Auch wenn Sie nicht verwenden `git` manuell, nutzt 
die CLI es hinter den Kulissen um einige Vermögenswerte herunterladen, wenn 
Sie ein neues Projekt zu erstellen.
+
+3.  Installieren der `cordova` Modul mit `npm` von Node.js-Dienstprogramm. Das 
`cordova` Modul wird automatisch heruntergeladen werden, indem die `npm` 
Dienstprogramm.
+
+ [1]: http://nodejs.org/
+ [2]: http://git-scm.com/
+
+*   auf OS X und Linux:
+    
+            $ sudo npm install -g cordova
+        
+    
+    Auf OS X und Linux voranstellen der `npm` mit Befehl `sudo` kann 
erforderlich sein, um diese Entwicklung zu installieren-Dienstprogramm in 
andere Art eingeschränkt Verzeichnisse wie `/usr/local/share` . Wenn Sie für 
das Installationsverzeichnis Schreibrechte oder das optionale 
Nvm/Kirchenschiff-Tool verwenden, können Sie möglicherweise auslassen der 
`sudo` Präfix. Es gibt [Weitere Tipps][3] zur Verwendung von `npm` ohne `sudo` 
, wenn Sie das tun wollen.
+
+*   unter Windows:
+    
+            C:\>npm install -g cordova
+        
+    
+    Das `-g` Flag oben teilt `npm` Installieren `cordova` weltweit. 
Andernfalls wird es installiert werden, der `node_modules` Unterverzeichnis des 
aktuellen Arbeitsverzeichnis.
+    
+    Möglicherweise müssen Sie Hinzufügen der `npm` Verzeichnis in Ihrem 
`PATH` weltweit installierten Inanspruchnahme `npm` Module. Unter Windows `npm` 
in der Regel finden Sie unter `C:\Users\username\AppData\Roaming\npm` . Auf OS 
X und Linux kann es in der Regel bei gefunden werden`/usr/local/share/npm`.
+    
+    Das Installationsprotokoll kann Fehler für alle deinstallierten Platform 
SDKs erzeugen.
+    
+    Nach der Installation sollte man laufen `cordova` in der Befehlszeile 
keine Argumente und es sollte Hilfetext drucken.
+
+ [3]: 
http://justjs.com/posts/npm-link-developing-your-own-npm-modules-without-tears
+
+## Erstellen Sie die App
+
+Gehe in das Verzeichnis wo verwalten Sie Ihren Quellcode, und führen Sie 
einen Befehl wie den folgenden:
+
+        $ cordova create hello com.example.hello HelloWorld
+    
+
+Es kann einige Zeit dauern für den Befehl abgeschlossen, also etwas Geduld. 
Ausführen des Befehls mit der `-d` Option zeigt Informationen über den 
Fortschritt.
+
+Das erste Argument *Hallo* gibt ein Verzeichnis für Ihr Projekt generiert 
werden. Dieses Verzeichnis sollte nicht bereits vorhanden, Cordova wird es für 
Sie erstellen. Seine `www` Unterverzeichnis Häuser Ihre Anwendung-Homepage, 
zusammen mit verschiedenen Ressourcen unter `css` , `js` , und `img` , die 
gemeinsame Web Entwicklung Dateibenennungskonventionen folgen. Diese 
Vermögenswerte werden lokalen Dateisystem des Geräts, nicht aus der Ferne 
bedient gespeichert. Die `config.xml` -Datei enthält wichtige Metadaten 
erzeugen und Verteilen der Anwendung erforderlich.
+
+Das zweite Argument `com.example.hello` stellt Ihr Projekt mit einem reverse 
Domain-Stil-Bezeichner. Dieses Argument ist optional, aber nur, wenn Sie auch 
das dritte Argument weglassen, da die Argumente positionelle sind. Sie können 
diesen Wert später in bearbeiten die `config.xml` Datei, aber beachten Sie, 
dass es möglicherweise außerhalb der generierte Code `config.xml` mit diesem 
Wert, wie z. B. Java-Package-Namen. Der Standardwert ist 
`io.cordova.hellocordova` , aber es wird empfohlen, dass Sie einen geeigneten 
Wert auswählen.
+
+Das dritte Argument `HelloWorld` bietet die Anwendung Anzeigetitel. Dieses 
Argument ist optional. Sie können diesen Wert später in bearbeiten die 
`config.xml` Datei, aber beachten Sie, dass es möglicherweise außerhalb der 
generierte Code `config.xml` mit diesem Wert, wie z. B. Java Klassennamen. Der 
Standardwert ist `HelloCordova` , aber es wird empfohlen, dass Sie einen 
geeigneten Wert auswählen.
+
+## Hinzufügen von Plattformen
+
+Alle nachfolgenden Befehle müssen in das Verzeichnis des Projekts oder eines 
der Unterverzeichnisse innerhalb des Bereichs ausgeführt werden:
+
+        $ cd hello
+    
+
+Bevor Sie das Projekt erstellen, müssen Sie eine Reihe von Zielplattformen 
angeben. Ihre Fähigkeit, diese Befehle ausführen hängt davon ab, ob Ihre 
Maschine jede SDK unterstützt, und ob Sie bereits installiert jedes SDK. 
Führen Sie einen der folgenden von einem Mac:
+
+        $ cordova platform add ios
+        $ cordova platform add amazon-fireos
+        $ cordova platform add android
+        $ cordova platform add blackberry10
+        $ cordova platform add firefoxos
+    
+
+Führen Sie einen aus einer Windows-Maschine, wo verschiedene Versionen des 
Betriebssystems Windows Phone *wp* bezeichnet:
+
+        $ Cordova Plattform hinzufügen wp8 $ Cordova Plattform hinzufügen 
Fügen Sie $ Cordova Plattform Windows Amazon-Fireos $ Cordova Plattform 
hinzufügen android $ Cordova Plattform hinzufügen blackberry10 $ Cordova 
Plattform hinzufügen Firefoxos
+    
+
+Führen Sie diese um Ihren aktuellen Satz von Plattformen zu überprüfen:
+
+        $ cordova platforms ls
+    
+
+(Beachten Sie die `platform` und `platforms` Befehle werden synonym verwendet.)
+
+Führen Sie einen der folgenden Synonym Befehle, eine Plattform zu entfernen:
+
+        $ cordova platform remove blackberry10
+        $ cordova platform rm amazon-fireos
+        $ cordova platform rm android
+    
+
+Ausführen Befehle hinzufügen oder Entfernen von Plattformen wirkt sich auf 
den Inhalt des Verzeichnis des Projekts *Plattformen* , wo jede angegebene 
Plattform als Unterverzeichnis angezeigt wird. Das *Www* -Quellverzeichnis wird 
wiedergegeben in jede Plattform-Unterverzeichnis, erscheinen zum Beispiel in 
`platforms/ios/www` oder `platforms/android/assets/www` . Da die CLI ständig 
über Dateien aus dem *Www* -Quellordner kopiert, sollten Sie nur diese Dateien 
und nicht diejenigen, die die *Plattformen* Unterverzeichnisse unterhalb 
bearbeiten. Wenn Sie Software für die Versionskontrolle verwenden, sollten Sie 
diese Quelle *Www* Ordner, zusammen mit Ordner *führt* zu Ihrem 
Versionsverwaltungssystem hinzufügen. (Weitere Informationen zum *verschmilzt* 
-Ordner finden Sie im Abschnitt Anpassen von jeder Plattform).
+
+**Warnung**: Wenn die CLI verwenden, um Ihre Anwendung zu erstellen, sollten 
Sie *nicht* bearbeiten, Dateien in, das `/platforms/` Verzeichnis, wenn Sie 
wissen, was du tust, oder wenn die Dokumentation nicht anders angegeben. Die 
Dateien in diesem Verzeichnis werden routinemäßig überschrieben, wenn 
Anwendungen für Gebäude vorbereiten oder Plugins installiert werden.
+
+Möchten Sie an dieser Stelle, können Sie eine SDK wie Eclipse oder Xcode 
verwenden, um das Projekt zu öffnen, die, das Sie erstellt. Sie müssen die 
abgeleitete Gruppe von Vermögenswerten aus öffnen die `/platforms/` 
Verzeichnis mit einem SDK entwickeln. Dies ist da die SDK-spezifische 
Metadaten-Dateien, innerhalb der entsprechenden gespeichert werden `/platform/` 
Unterverzeichnis. (Siehe die Plattform-Führer für Informationen zum 
Entwickeln von Anwendungen in jeder IDE.) Verwenden Sie diese Methode, wenn Sie 
möchten einfach Initialisieren eines Projekts mit der CLI und wechseln Sie 
dann zu einem SDK für native Arbeit.
+
+Lesen Sie weiter, wenn Sie das plattformübergreifende Workflow-Konzept (CLI) 
für den gesamten Entwicklungszyklus verwenden möchten.
+
+## Die App zu bauen
+
+In der Standardeinstellung der `cordova create` Skript generiert eine Skeletts 
Web-basierte Anwendung, deren Homepage des Projekts ist `www/index.html` Datei. 
Diese Anwendung zu bearbeiten, aber Sie wollen, aber Initialisierungen werden, 
als Teil angegeben sollte der 
`[deviceready](../../cordova/events/events.deviceready.html)` -Ereignishandler, 
standardmäßig von verwiesen`www/js/index.js`.
+
+Führen Sie den folgenden Befehl, um das Projekt iterativ zu erstellen:
+
+        $ cordova build
+    
+
+Dies erzeugt plattformspezifischer Code innerhalb des Projekts `platforms` 
Unterverzeichnis. Optional können Sie den Bereich der einzelnen Builds auf 
bestimmten Plattformen einschränken:
+
+        $ cordova build ios
+    
+
+Der `cordova build` Befehl ist eine Kurzform für die folgenden, die in diesem 
Beispiel auch auf einer einzigen Plattform ausgerichtet ist:
+
+        $ cordova prepare ios
+        $ cordova compile ios
+    
+
+In diesem Fall einmal ausführen `prepare` , können Sie Apples Xcode SDK als 
Alternative zu ändern und kompilieren Sie den Plattform-spezifischen Code, die 
in Cordova generiert `platforms/ios` . Sie können den gleichen Ansatz mit 
anderen Plattformen SDKs.
+
+## Testen Sie die App auf einem Emulator oder Gerät
+
+SDKs für mobile Plattformen kommen oft mit Emulatoren, die ein Gerätebild 
ausgeführt, so dass Sie können starten Sie die app aus dem home-Bildschirm 
und Interaktion mit vielen Plattformfeatures gebündelt. Führen Sie einen 
Befehl wie den folgenden erstellen Sie die Anwendung neu und innerhalb einer 
bestimmten Plattform Emulator anzeigen:
+
+        $ cordova emulate android
+    
+
+Einige mobilen Plattformen emulieren ein bestimmtes Gerät wie das iPhone für 
iOS-Projekte in der Standardeinstellung. Für die anderen Plattformen müssen 
Sie zuerst ein Gerät mit einem Emulator zuordnen.
+
+**Hinweis**: Emulator Unterstützung ist derzeit nicht für Amazon Fire OS.
+
+(Siehe die Plattform-Führer für Details.) Beispielsweise Sie möglicherweise 
zunächst führen Sie den `android` Befehl zum Starten des Android SDK, dann 
führen Sie ein bestimmtes Gerät-Image, das es laut sein Standardverhalten 
startet:
+
+![][4]
+
+ [4]: {{ site.baseurl }}/static/img/guide/cli/android_emulate_init.png
+
+Folgende oben mit den `cordova emulate` Befehl aktualisiert das Emulator-Bild, 
um die neueste Anwendung angezeigt, die jetzt für den Start aus dem 
home-Bildschirm vorhanden ist:
+
+![][5]
+
+ [5]: {{ site.baseurl }}/static/img/guide/cli/android_emulate_install.png
+
+Alternativ können Sie schließen den Hörer an den Computer und testen die 
app direkt:
+
+        $ cordova run android
+    
+
+Bevor Sie diesen Befehl ausführen, müssen Sie das Gerät zum Testen 
einrichten nach Verfahren, die für jede Plattform variieren. In Android und 
Amazon-Feuer-OS-Geräte müssten Sie eine Option **USB-debugging** auf dem 
Gerät zu aktivieren, und vielleicht einen USB-Treiber je nach Ihrer 
Entwicklung-Environmnent. Einzelheiten über jede Plattform Anforderungen 
finden Sie unter Plattform Guides.
+
+## Plugin-Features hinzufügen
+
+Wenn Sie erstellen und eines neues Projekts anzeigen, nicht sehr viel die 
Standardanwendung, die angezeigt wird. Sie können ändern, die app in 
vielerlei Hinsicht zu standard-Web-Technologien nutzen, aber für die app eng 
mit verschiedenen Geräteebene Features zu kommunizieren, müssen Sie Plugins 
hinzufügen, die Zugriff auf Kern-Cordova-APIs.
+
+Ein *Plugin* ist ein Add-on-Code, die eine Schnittstelle zu systemeigenen 
Komponenten bereitstellt. Sie können Ihr eigenes Plugin-Schnittstelle, z. B. 
wenn eine Hybrid-app zu entwerfen, die einen Cordova WebView mit systemeigenen 
Komponenten mischt entwerfen. (Siehe Einbettung Webansichten für und [Plugin 
Development Guide][6] für Details.) Häufiger, fügen Sie eine Plugin um eine 
Cordovas Geräteebene Grundfunktionen in der API-Referenz detailliert 
aktivieren.
+
+ [6]: guide_hybrid_plugins_index.md.html#Plugin%20Development%20Guide
+
+Ab der Version 3.0 beim Erstellen eines Projekts Cordova hat es irgendwelche 
Plugins vorhanden keinen. Dies ist das neue Standardverhalten. Alle Plugins, 
die Sie wünschen, die auch die Core-Plugins muss explizit hinzugefügt werden.
+
+Eine Liste dieser Plugins, einschließlich zusätzliche Drittanbieter Plug-ins 
der Gemeinschaft finden Sie in der Registrierung unter [plugins.cordova.io][7]. 
Die CLI können Sie Plugins aus dieser Registrierung suchen. Z. B. Suche nach 
`bar` und `code` erzeugt ein einzelnes Ergebnis, die beide Begriffe als 
groß-und Kleinschreibung Teilzeichenfolgen entspricht:
+
+ [7]: http://plugins.cordova.io/
+
+        $ cordova plugin search bar code
+    
+        com.phonegap.plugins.barcodescanner - Scans Barcodes
+    
+
+Nur bei der Suche nach der `bar` Erträge und weiteres Ergebnis:
+
+        cordova-plugin-statusbar - Cordova StatusBar Plugin
+    
+
+Der `cordova plugin add` Befehl müssen Sie das Repository für den 
Plugin-Code angeben. Hier sind Beispiele für die Verwendung der CLI die app 
Features hinzugefügt:
+
+*   Grundlegenden Geräteinformationen (Device-API):
+    
+        $ cordova plugin add cordova-plugin-device
+        
+
+*   Netzwerkverbindung und Batterie-Veranstaltungen:
+    
+        $ cordova plugin add cordova-plugin-network-information
+        $ cordova plugin add cordova-plugin-battery-status
+        
+
+*   Beschleunigungssensor, Kompass und Geolocation:
+    
+        $ cordova plugin add cordova-plugin-device-motion
+        $ cordova plugin add cordova-plugin-device-orientation
+        $ cordova plugin add cordova-plugin-geolocation
+        
+
+*   Kamera, Medien-Wiedergabe und Aufnahme:
+    
+        $ cordova plugin add cordova-plugin-camera
+        $ cordova plugin add cordova-plugin-media-capture
+        $ cordova plugin add cordova-plugin-media
+        
+
+*   Zugriff auf Dateien auf Gerät oder Netzwerk (File API):
+    
+        $ cordova plugin add cordova-plugin-file
+        $ cordova plugin add cordova-plugin-file-transfer
+        
+
+*   Benachrichtigung per Dialogfeld oder Vibration:
+    
+        $ cordova plugin add cordova-plugin-dialogs
+        $ cordova plugin add cordova-plugin-vibration
+        
+
+*   Kontakte:
+    
+        $ cordova plugin add cordova-plugin-contacts
+        
+
+*   Globalisierung:
+    
+        $ cordova plugin add cordova-plugin-globalization
+        
+
+*   SplashScreen:
+    
+        $ cordova plugin add cordova-plugin-splashscreen
+        
+
+*   Neue Browserfenster öffnen (InAppBrowser):
+    
+        $ cordova plugin add cordova-plugin-inappbrowser
+        
+
+*   Debug-Konsole:
+    
+        $ cordova plugin add cordova-plugin-console
+        
+
+**Hinweis**: die CLI fügt Plugin-Code entsprechend für jede Plattform. Wenn 
Sie mit Low-Level-Shell-Werkzeugen oder Platform SDKs wie in der 
[Übersicht](../overview/index.html) beschrieben entwickeln wollen, müssen Sie 
das Plugman-Dienstprogramm zum Hinzufügen von Plugins separat für jede 
Plattform ausführen. (Weitere Informationen finden Sie unter Using Plugman zu 
Plugins verwalten.)
+
+Verwendung `plugin ls` (oder `plugin list` , oder `plugin` von selbst) derzeit 
anzeigen Plugins installiert. Jede zeigt durch seinen Bezeichner:
+
+        $ cordova plugin ls    # or 'plugin list'
+        [ 'cordova-plugin-console' ]
+    
+
+Um ein Plugin zu entfernen, finden Sie es durch den gleichen Bezeichner, der 
in der Liste angezeigt wird. Zum Beispiel, ist hier, wie Sie Unterstützung 
für eine Debug-Konsole aus einer Release-Version entfernen würde:
+
+        $ cordova plugin rm cordova-plugin-console
+        $ cordova plugin remove cordova-plugin-console    # same
+    
+
+Sie können Batch-entfernen oder Hinzufügen von Plugins durch mehr als ein 
Argument für jeden Befehl angeben:
+
+        $ cordova plugin add cordova-plugin-console cordova-plugin-device
+    
+
+## Erweiterte Plugin-Optionen
+
+Wenn Sie eine Plugin hinzufügen, können mehrere Optionen Sie angeben, wo Sie 
das Plugin zu holen. Die obigen Beispiele verwenden eine bekannte 
`registry.cordova.io` Registrierung und das Plugin wird angegeben durch die 
`id` :
+
+        $ cordova plugin add cordova-plugin-console
+    
+
+Die `id` kann auch die Plugin-Versionsnummer, angefügt nach enthalten einen 
`@` Charakter. Die `latest` Version ist ein Alias für die aktuellste Version. 
Zum Beispiel:
+
+        $ cordova plugin add cordova-plugin-console@latest
+        $ cordova plugin add cordova-plugin-console@0.2.1
+    
+
+Wenn das Plugin nicht registriert ist `registry.cordova.io` aber befindet sich 
in einem anderen Git Repository, Sie können eine Alternative URL angeben:
+
+        $ cordova plugin add 
https://github.com/apache/cordova-plugin-console.git
+    
+
+Das Git-Beispiel oben holt das Plugin vom Ende des Zweiges master, aber eine 
Alternative Git-Ref z. B. einen Tag oder Zweig kann angehängt werden, nach 
einem `#` Charakter:
+
+Installieren von einem Tag:
+
+        $ cordova plugin add 
https://github.com/apache/cordova-plugin-console.git#r0.2.0
+    
+
+oder einer Zweigniederlassung:
+
+        $ cordova plugin add 
https://github.com/apache/cordova-plugin-console.git#CB-8438cordova-plugin-console
+    
+
+oder Git-Ref wäre auch ein bestimmtes Commit:
+
+        $ cordova plugin add 
https://github.com/apache/cordova-plugin-console.git#f055daec45575bf08538f885e09c85a0eba363ff
+    
+
+Wenn das Plugin (und seine Datei `plugin.xml` ) in einem Unterverzeichnis 
innerhalb der Git Repo ist, können Sie es mit einem `:` -Zeichen angeben. 
Beachten Sie, dass das Zeichen `#` noch benötigt wird:
+
+        $ cordova plugin add 
https://github.com/someone/aplugin.git#:/my/sub/dir
+    
+
+Sie können auch die Git-Ref und das Unterverzeichnis kombinieren:
+
+        $ cordova plugin add 
https://github.com/someone/aplugin.git#r0.0.1:/my/sub/dir
+    
+
+Alternativ geben Sie einen lokalen Pfad in das Pluginverzeichnis die Datei 
`plugin.xml` enthaltenen:
+
+        $ cordova plugin add ../my_plugin_dir
+    
+
+## Verwendung von *merges* , auf jeder Plattform anpassen
+
+Während Cordova auf einfache Weise eine app für viele verschiedene 
Plattformen bereitstellen kann, müssen Sie manchmal Anpassungen hinzufügen. 
In diesem Fall möchten nicht Sie die Quelldateien in verschiedenen `www` 
-Verzeichnisse in das Verzeichnis der obersten Ebene `platforms` ändern, weil 
sie regelmäßig mit der obersten Ebene `www` -Verzeichnis 
plattformübergreifende Quelle ersetzt sind.
+
+Stattdessen bietet das Verzeichnis der obersten Ebene `merges` einen Ort um 
Vermögenswerte auf bestimmten Plattformen bereitstellen anzugeben. Jedes 
plattformspezifischen Unterverzeichnis innerhalb `merges` spiegelt die 
Verzeichnisstruktur des `www` Source-Trees, sodass Sie überschreiben oder 
Dateien nach Bedarf hinzufügen. Hier ist beispielsweise, wie Sie verwendet 
`merges` zur Erhöhung der Standardschriftgrad für Android und Amazon Fire OS 
Geräte könnten:
+
+*   Bearbeiten Sie die `www/index.html` Datei, Hinzufügen eines Links zu 
einer weiteren CSS-Datei `overrides.css` in diesem Fall:
+    
+        <link rel="stylesheet" type="text/css" href="css/overrides.css" />
+        
+
+*   Erstellen Sie optional ein leeres `www/css/overrides.css` Datei, die für 
alle nicht-Android Builds, einen fehlende Datei-Fehler zu verhindern, gelten 
würden.
+
+*   Erstellen einer `css` Unterverzeichnis innerhalb `merges/android` , fügen 
Sie eine entsprechende `overrides.css` Datei. Angeben von CSS, die den 
angegebenen innerhalb 12-Punkt-Standard-Schriftgrad überschreibt 
`www/css/index.css` , zum Beispiel:
+    
+        body { font-size:14px; }
+        
+
+Wenn Sie das Projekt neu erstellen, verfügt die Android Version die 
benutzerdefinierte Schriftgröße, während andere unverändert bleiben.
+
+Sie können `merges` auch zum Hinzufügen von Dateien in das ursprüngliche 
`Www` -Verzeichnis nicht vorhanden. Beispielsweise kann eine app integrieren 
eine *zurück-Schaltfläche* Grafik in die iOS-Benutzeroberfläche, gespeichert 
in `merges/ios/img/back_button.png`, während die Android Version stattdessen 
`Backbutton` Ereignisse über die entsprechende Taste erfassen kann.
+
+## Hilfebefehle
+
+Cordova verfügt über ein paar globale Befehle, die Ihnen helfen können, 
wenn Sie stecken bleiben oder ein Problem. Der Befehl `help` zeigt alle 
verfügbaren Cordova-Befehle und deren Syntax:
+
+    $ cordova help
+    $ cordova        # same
+    
+
+Darüber hinaus erhalten Sie weitere detaillierte Hilfe zu einem bestimmten 
Befehl. Zum Beispiel:
+
+    $ cordova run --help
+    
+
+Der `Info` -Befehl erzeugt eine Liste von potentiell nützliche Details, wie 
derzeit installierten Plattformen und Plugins, für jede Plattform 
SDK-Versionen und Versionen der CLI und `node.js`:
+
+    $ cordova info
+    
+
+Es stellt die Informationen zum Bildschirm und erfasst die Ausgabe in einer 
lokalen `info.txt` Datei.
+
+**Hinweis**: Derzeit sind nur Details auf iOS und Android-Plattformen 
verfügbar.
+
+## Aktualisierung von Cordova und Ihr Projekt
+
+Nach der Installation des Dienstprogramms `cordova` , können Sie immer auf 
die neueste Version aktualisieren, indem Sie Ausführen den folgenden Befehl 
verwenden:
+
+        $ sudo npm update -g cordova
+    
+
+Verwenden Sie diese Syntax, um eine bestimmte Version zu installieren:
+
+        $ sudo npm install -g cordova@3.1.0-0.2.0
+    
+
+`cordova -v` um zu sehen, welche Version aktuell ausgeführt wird ausgeführt. 
Führen Sie den Befehl `npm info` für eine längere Liste enthält, die die 
aktuelle Version und anderen verfügbaren Versionsnummern:
+
+        $ npm info cordova
+    
+
+Cordova 3.0 ist die erste Version, die in diesem Abschnitt beschriebenen 
Befehlszeilenschnittstelle unterstützt. Wenn Sie von einer Version vor 3.0 
aktualisieren, müssen Sie ein neues Projekt erstellen, wie oben beschrieben, 
dann die ältere Anwendung Vermögenswerte in der obersten Ebene `Www` 
-Verzeichnis kopieren. Gegebenenfalls stehen weitere Informationen zum Upgrade 
auf 3.0 in den Plattform-Führern. Sobald Sie ein auf die 
Befehlszeilenschnittstelle `cordova upgrade` und `npm update` verwenden, auf um 
dem Laufenden zu bleiben, sind die dort beschriebenen zeitaufwändigen 
Verfahren nicht mehr relevant.
+
+Cordova 3.0 oder höher benötigen noch verschiedene Änderungen auf 
Projektebene Verzeichnisstrukturen und andere Abhängigkeiten. Nach dem 
Ausführen des `npm` -Befehls oben Cordova selbst zu aktualisieren, müssen Sie 
sicherstellen, dass die Ressourcen des Projekts den aktuellsten Anforderungen 
entsprechen. Führen Sie einen Befehl wie den folgenden für jede Plattform, 
dass Sie Gebäude sind:
+
+        $ cordova platform update android
+        $ cordova platform update ios
+        ...etc.


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cordova.apache.org
For additional commands, e-mail: commits-h...@cordova.apache.org

Reply via email to