\r
<h3>Werbung</h3>\r
\r
-<p>Privacy Browser Free zeigt eine Bannerwerbung am unteren Rand des Bildschirms über Googles AdMob-Netzwerk,\r
+<p>Privacy Browser Free zeigt eine Bannerwerbung am unteren Rand des Bildschirms über Googles AdMob-Netzwerk,\r
welches seine eigene <a href="https://www.google.com/intl/en/policies/privacy/">Datenschutzrichtlinien</a> hat.\r
Beachten Sie, dass - solange Sie nicht <a href="http://www.techrepublic.com/article/pro-tip-how-to-opt-out-of-interest-based-ads-on-your-android-phone/">interessenbezogene Werbungen deaktiviert haben</a> -\r
- der Werbebetreibende eine Kopie Ihrer einmaligen, gerätebezogenen Werbe-ID bekommt, was es ihm ermöglicht, Ihr Gerätenutzung in verschiedenen Anwendungen nachzuverfolgen.\r
+ der Werbebetreibende eine Kopie Ihrer einmaligen, gerätebezogenen Werbe-ID bekommt, was es ihm ermöglicht, Ihr Gerätenutzung in verschiedenen Anwendungen nachzuverfolgen.\r
AdMob erfasst <em>anonymisierte Zusammenfassungen</em> der folgenden Informationen. <strong>Stoutner kann diese Informationen zu jedem Zweck nutzen</strong>.</p>\r
\r
<ul>\r
<li><item>Anzeigen insgesamt</item></li>\r
<li><item>Klicks insgesamt</item></li>\r
<li><item>Plattformen</item> (z. B. High-End Mobiltelefone, Tablets)</li>\r
- <li><item>Aktivität nach Land</item></li>\r
+ <li><item>Aktivität nach Land</item></li>\r
</ul>\r
\r
\r
\r
<p>Google Play hat seine eigenen <a href="https://www.google.com/intl/en/policies/privacy/">Datenschutzbestimmungen</a>.\r
Google stellt den Entwicklern <em>anonymisierte Statistiken</em> der folgenden Informationen zu den Bewertungen.\r
- <strong>Stoutner kann diese Informationen für jeden Zweck benutzen</strong>.</p>\r
+ <strong>Stoutner kann diese Informationen für jeden Zweck benutzen</strong>.</p>\r
\r
<ul>\r
<li><item>Land</item></li>\r
<li><item>Sprache</item></li>\r
<li><item>App-Version</item></li>\r
<li><item>Android-Version</item></li>\r
- <li><item>Gerät</item> (z. B. Google Nexus 5X, Samsung Galaxy Note3)</li>\r
- <li><item>Tablets</item> (z. B. Tablets 10" und größer)</li>\r
+ <li><item>Gerät</item> (z. B. Google Nexus 5X, Samsung Galaxy Note3)</li>\r
+ <li><item>Tablets</item> (z. B. Tablets 10" und größer)</li>\r
</ul>\r
\r
\r
<h3>Google Play Rezensionen</h3>\r
\r
<p>Google Play hat seine eigenen <a href="https://www.google.com/intl/en/policies/privacy/">Datenschutzbestimmungen</a>.\r
- Zusätzlich zum Namen des Verfassers, der Bewertung und der Rezension (welche alle öffentlich sind)\r
- stellt Google einige oder alle der folgenden Informationen dem Entwickler zur Verfügung.\r
+ Zusätzlich zum Namen des Verfassers, der Bewertung und der Rezension (welche alle öffentlich sind)\r
+ stellt Google einige oder alle der folgenden Informationen dem Entwickler zur Verfügung.\r
<strong>Stoutner kann diese Informationen zu jedem Zweck nutzen</strong>.</p>\r
\r
<ul>\r
<li><item>Version-Code</item> (z. B. 7)</li>\r
<li><item>Version-Name</item> (z. B. 1.6)</li>\r
<li><item>Android Version</item> (z. B. Android 5.1)</li>\r
- <li><item>Gerät</item> (z. B. Galaxy S6 Edge+ [zenlte])</li>\r
+ <li><item>Gerät</item> (z. B. Galaxy S6 Edge+ [zenlte])</li>\r
<li><item>Hersteller</item> (z. B. Samsung)</li>\r
- <li><item>Gerätetyp</item> (z. B. Telefon)</li>\r
+ <li><item>Gerätetyp</item> (z. B. Telefon)</li>\r
<li><item>CPU-Hersteller</item> (z. B. Samsung)</li>\r
<li><item>CPU-Modell</item> (z. B. Exynos 7420)</li>\r
<li><item>Bildschirmdichte</item> (z. B. 560 dpi)</li>\r
- <li><item>Bildschirmgröße</item> (z. B. 2560 x 1440)</li>\r
+ <li><item>Bildschirmgröße</item> (z. B. 2560 x 1440)</li>\r
<li><item>RAM</item> (z. B. 4096 MB)</li>\r
<li><item>Native Plattform</item> (z. B. armeabi-v7a,armeabi,arm64v8a)</li>\r
<li><item>OpenGL ES Version</item> (z. B. 3.1)</li>\r
- <li><item>Gerätesprache</item> (z. B. Englisch)</li>\r
+ <li><item>Gerätesprache</item> (z. B. Englisch)</li>\r
</ul>\r
\r
<hr />\r
</head>\r
\r
<body>\r
+\r
+<h3>1.9.1 (version code 11)</h3>\r
+<p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=6de831ce03c8b9114212870715c6c722e26f5b28">27. August 2016</a> - Mindest-API 19, Ziel-API 23</p>\r
+<ul>\r
+ <li>Bilder-Verknüpfungen zu relativen Pfaden geändert, sodass Privacy Browser in F-Droid geladen wird.</li>\r
+</ul>\r
+\r
+<h3>1.9 (version code 10)</h3>\r
+<p>26. August 2016 - Mindest-API 19, Ziel-API 23</p>\r
+<ul>\r
+ <li>Deutsche Übersetzung hinzugefügt durch <a href="mailto:aaron@gerlach.com">Aaron Gerlach</a>.</li>\r
+ <li>Die Möglichkeit hinzugefügt, <a href="https://redmine.stoutner.com/issues/2">SSL-Zertifikatsdetails und -fehlermeldungen anzuzeigen</a>. Das ermöglicht es Privacy Browser, Websites mit selbstsignierten Zertifikaten zu laden.</li>\r
+ <li><a href="https://redmine.stoutner.com/issues/38">Schriftgrößen-Einstellungen</a> hinzugefügt.</li>\r
+ <li><a href="https://redmine.stoutner.com/issues/14">"mailto:"-Links</a> auf Websites können verarbeitet werden.</li>\r
+ <li>App-Absturz behoben, wenn <a href="https://redmine.stoutner.com/issues/47">man ein Lesezeichen ohne Favicon erstellt oder bearbeitet</a>.</li>\r
+ <li>Fehler behoben, der manchmal <a href="https://redmine.stoutner.com/issues/28">die Navigationsleiste deaktivierte, nachdem ein Vollbildvideo geöffnet war</a>.</li>\r
+ <li>Senden eines <a href="https://redmine.stoutner.com/issues/37">Nullwerts für den "X-Requested-With"-Header beim erstmaligen Laden der Seite</a>.</li>\r
+</ul>\r
+\r
<h3>1.8 (version code 9)</h3>\r
<p><a href="https://git.stoutner.com/?p=PrivacyBrowser.git;a=commitdiff;h=f386169ee9c68325562068394cb6b21b0b89be1c;ds=inline">16. Juli 2016</a> - Mindest-API 19, Ziel-API 23</p>\r
<ul>\r
<body>
<h3>Leitende Entwickler</h3>
-<p>Privacy Browser ist primär entwickelt von <a href="mailto:soren@stoutner.com">Soren Stoutner</a>.</p>
+<p>Privacy Browser ist primär entwickelt von <a href="mailto:soren@stoutner.com">Soren Stoutner</a>.</p>
<h3>Mitwirkende</h3>
-<a href="mailto:aaron@gerlach.com">Aaron Gerlach</a>: Deutsche Übersetzung
+<a href="mailto:aaron@gerlach.com">Aaron Gerlach</a>: Deutsche Übersetzung
-<p>Mitwirkung ist willkommen in Form von <a href="https://www.stoutner.com/privacy-browser/contributors/">Code und Übersetzung</a>.</p>
+<p>Mitwirkung ist willkommen in Form von <a href="https://www.stoutner.com/privacy-browser/contributors/">Code und Übersetzung</a>.</p>
</body>
</html>
\ No newline at end of file
img.left {
float: left;
+ height: 32;
+ width: 32;
}
</style>
</head>
<h3>Lizenz</h3>
-<p>Privacy Browser ist veröffentlicht unter der <a href="https://www.gnu.org/licenses/gpl-3.0.html">GPLv3+ Lizenz</a>.
+<p>Privacy Browser ist veröffentlicht unter der <a href="https://www.gnu.org/licenses/gpl-3.0.html">GPLv3+ Lizenz</a>.
Der volle Inhalt dieser Lizenz ist unten auf dieser Seite angegeben.</p>
<h3>Attribute</h3>
-<p>Die Icons in Privacy Browser kommen aus dem Android Material Icon Set, welches unter der <a href=https://creativecommons.org/licenses/by/4.0/>CC-BY Lizenz</a> veröffentlicht wird.</p>
+<p>Die Icons in Privacy Browser kommen aus dem Android Material Icon Set, welches unter der <a href=https://creativecommons.org/licenses/by/4.0/>CC-BY Lizenz</a> veröffentlicht wird.</p>
-<p><img class="left" src="images/privacy_browser.png" height="32" width="32">
- <img class="left" src="images/privacy_browser_free.png" height="32" width="32">
- <img class="left" src="images/warning.png" height="32" width="32">
- <img class="left" src="images/javascript_enabled.png" height="32" width="32">
+<p><img class="left" src="images/privacy_browser.png">
+ <img class="left" src="images/privacy_browser_free.png">
+ <img class="left" src="images/warning.png">
+ <img class="left" src="images/javascript_enabled.png">
sind bezogen aus ic_security und ic_language. Bearbeitungen wurden von Soren Stoutner in 2016 vorgenommen.</p>
-<p><img class="icon" src="images/ic_language.png"> ic_language.</p>
-
-<p><img class="icon" src="images/ic_home.png"> ic_home.</p>
+<p><img class="icon" src="images/ic_add.png"> ic_add.</p>
<p><img class="icon" src="images/ic_arrow_back.png"> ic_arrow_back.</p>
<p><img class="icon" src="images/ic_bookmark_border.png"> ic_bookmark_border.</p>
-<p><img class="icon" src="images/ic_file_download.png"> ic_file_download.</p>
+<p><img class="icon" src="images/ic_create_new_folder.png"> ic_create_new_folder.</p>
-<p><img class="icon" src="images/ic_settings.png"> ic_settings.</p>
-
-<p><img class="icon" src="images/ic_import_contacts.png"> ic_import_contacts.</p>
+<p><img class="icon" src="images/ic_delete.png"> ic_download.</p>
-<p><img class="icon" src="images/ic_info_outline.png"> ic_info_outline.</p>
+<p><img class="icon" src="images/ic_edit.png"> ic_edit.</p>
<p><img class="icon" src="images/ic_exit_to_app.png"> ic_exit_to_app.</p>
-<p><img class="icon" src="images/ic_add.png"> ic_add.</p>
+<p><img class="icon" src="images/ic_file_download.png"> ic_file_download.</p>
-<p><img class="icon" src="images/ic_vertical_align_top.png"> ic_vertical_align_top</p>
+<p><img class="icon" src="images/ic_folder.png"> ic_folder.</p>
-<p><img class="icon" src="images/ic_vertical_align_bottom.png"> ic_vertical_align_bottom</p>
+<p><img class="icon" src="images/ic_folder_special.png"> ic_folder_special.</p>
-<p><img class="icon" src="images/ic_folder.png"> ic_folder</p>
+<p><img class="icon" src="images/ic_home.png"> ic_home.</p>
-<p><img class="icon" src="images/ic_create_new_folder.png"> ic_create_new_folder</p>
+<p><img class="icon" src="images/ic_import_contacts.png"> ic_import_contacts.</p>
-<p><img class="icon" src="images/ic_folder_special.png"> ic_folder_special</p>
+<p><img class="icon" src="images/ic_info_outline.png"> ic_info_outline.</p>
-<p><img class="icon" src="images/ic_edit.png"> ic_edit.</p>
+<p><img class="icon" src="images/ic_language.png"> ic_language.</p>
-<p><img class="icon" src="images/ic_delete.png"> ic_download.</p>
+<p><img class="icon" src="images/ic_select_all.png"> ic_select_all.</p>
+
+<p><img class="icon" src="images/ic_settings.png"> ic_settings.</p>
+
+<p><img class="icon" src="images/ic_subtitles.png"> ic_subtitles.</p>
+
+<p><img class="icon" src="images/ic_vertical_align_bottom.png"> ic_vertical_align_bottom.</p>
+
+<p><img class="icon" src="images/ic_vertical_align_top.png"> ic_vertical_align_top.</p>
-<p><img class="icon" src="images/ic_select_all.png"> ic_select_all</p>
+<p><img class="icon" src="images/ic_web.png"> ic_web.</p>
<hr/>
<h3>GNU General Public License</h3>
-<p><a href="http://www.gnu.de/documents/gpl.de.html">Offizielle deutsche Übersetzung der GNU General Public License</a></p>
+<p><a href="http://www.gnu.de/documents/gpl.de.html">Offizielle deutsche Übersetzung der GNU General Public License</a></p>
<p></p>
\r
<p><a href="https://developer.android.com/reference/android/Manifest.permission.html#INTERNET">android.permission.INTERNET</a></p>\r
\r
-<p>Benötigt, damit WebView das Internet nutzen kann. Ohne diese Berechtigung wäre Privacy Browser "Kein Browser: Schützt Ihre Privatsphäre durch Fernbleiben von jeglicher Konnektivität".</p>\r
+<p>Benötigt, damit WebView das Internet nutzen kann. Ohne diese Berechtigung wäre Privacy Browser "Kein Browser: Schützt Ihre Privatsphäre durch Fernbleiben von jeglicher Konnektivität".</p>\r
\r
\r
<h3>Verknüpfungen installieren</h3>\r
\r
<p><a href="https://developer.android.com/reference/android/Manifest.permission.html#INSTALL_SHORTCUT">com.android.launcher.permission.INSTALL_SHORTCUT</a></p>\r
\r
-<p>Benötigt, um Verknüpfungen zu Websites auf Ihrer Startseite zu erstellen.</p>\r
+<p>Benötigt, um Verknüpfungen zu Websites auf Ihrer Startseite zu erstellen.</p>\r
</body>\r
</html>
\ No newline at end of file
<p>Google Play hat seine eigenen <a href="https://www.google.com/intl/en/policies/privacy/">Datenschutzbestimmungen</a>.
Google stellt den Entwicklern <em>anonymisierte Statistiken</em> der folgenden Informationen zu den Bewertungen.
- <strong>Stoutner kann diese Informationen für jeden Zweck benutzen</strong>.</p>
+ <strong>Stoutner kann diese Informationen für jeden Zweck benutzen</strong>.</p>
<ul>
<li><item>Land</item></li>
<li><item>Sprache</item></li>
<li><item>App-Version</item></li>
<li><item>Android-Version</item></li>
- <li><item>Gerät</item> (z. B. Google Nexus 5X, Samsung Galaxy Note3)</li>
- <li><item>Tablets</item> (z. B. Tablets 10" und größer)</li>
+ <li><item>Gerät</item> (z. B. Google Nexus 5X, Samsung Galaxy Note3)</li>
+ <li><item>Tablets</item> (z. B. Tablets 10" und größer)</li>
</ul>
<h3>Google Play Rezensionen</h3>
<p>Google Play hat seine eigenen <a href="https://www.google.com/intl/en/policies/privacy/">Datenschutzbestimmungen</a>.
- Zusätzlich zum Namen des Verfassers, der Bewertung und der Rezension (welche alle öffentlich sind)
- stellt Google einige oder alle der folgenden Informationen dem Entwickler zur Verfügung.
+ Zusätzlich zum Namen des Verfassers, der Bewertung und der Rezension (welche alle öffentlich sind)
+ stellt Google einige oder alle der folgenden Informationen dem Entwickler zur Verfügung.
<strong>Stoutner kann diese Informationen zu jedem Zweck nutzen</strong>.</p>
<ul>
<li><item>Version-Code</item> (z. B. 7)</li>
<li><item>Version-Name</item> (z. B. 1.6)</li>
<li><item>Android Version</item> (z. B. Android 5.1)</li>
- <li><item>Gerät</item> (z. B. Galaxy S6 Edge+ [zenlte])</li>
+ <li><item>Gerät</item> (z. B. Galaxy S6 Edge+ [zenlte])</li>
<li><item>Hersteller</item> (z. B. Samsung)</li>
- <li><item>Gerätetyp</item> (z. B. Telefon)</li>
+ <li><item>Gerätetyp</item> (z. B. Telefon)</li>
<li><item>CPU-Hersteller</item> (z. B. Samsung)</li>
<li><item>CPU-Modell</item> (z. B. Exynos 7420)</li>
<li><item>Bildschirmdichte</item> (z. B. 560 dpi)</li>
- <li><item>Bildschirmgröße</item> (z. B. 2560 x 1440)</li>
+ <li><item>Bildschirmgröße</item> (z. B. 2560 x 1440)</li>
<li><item>RAM</item> (z. B. 4096 MB)</li>
<li><item>Native Plattform</item> (z. B. armeabi-v7a,armeabi,arm64v8a)</li>
<li><item>OpenGL ES Version</item> (z. B. 3.1)</li>
- <li><item>Gerätesprache</item> (z. B. Englisch)</li>
+ <li><item>Gerätesprache</item> (z. B. Englisch)</li>
</ul>
<hr />
</head>
<body>
-<h3>Den überflüssigen Inhalt leeren</h3>
+<h3>Den überflüssigen Inhalt leeren</h3>
<p><strong>Leeren und Beenden</strong> bewirkt Folgendes:</p>
<ul>
- <li><item>Löscht alle Cookies</item>.</li>
+ <li><item>Löscht alle Cookies</item>.</li>
<li><item>Leert den DOM-Speicher</item>.</li>
- <li><item>Löscht alle Fornulardaten</item>.</li>
+ <li><item>Löscht alle Fornulardaten</item>.</li>
<li><item>Leert den Cache inklusive gespeicherte Daten</item>.</li>
- <li><item>Leert die Vorwärts-/Rückwärtshistorie</item>.</li>
- <li><item>Löscht die momentane URL</item>.</li>
- <li><item>Zerstört den internen Status von WebView</item>.</li>
- <li><item>Beendet Privacy Browser</item>. In Android Lollipop und aktueller (Version >= 5.0 oder API >= 21) wird Privacy Browser außerdem aus den aktuellen Anwendungen entfernt.</li>
+ <li><item>Leert die Vorwärts-/Rückwärtshistorie</item>.</li>
+ <li><item>Löscht jegliche gespeicherte Präferenzen zu SSL-Zertifikaten</item> (fehlerhafte SSL-Zertifikate, die ignoriert werden).</li>
+ <li><item>Löscht die momentane URL</item>.</li>
+ <li><item>Zerstört den internen Status von WebView</item>.</li>
+ <li><item>Beendet Privacy Browser</item>. In Android Lollipop und aktueller (Version >= 5.0 oder API >= 21) wird Privacy Browser außerdem aus den aktuellen Anwendungen entfernt.</li>
</ul>
</body>
</html>
\ No newline at end of file
<body>
<h3>JavaScript ist machtvoll</h3>
-<p>In den frühen Tagen des Internets waren Websites statisch, zeigten also nur Text und Bilder, welche auf dem Bildschirm
- sichtbar sind, veränderten sich aber nicht oder interagierten. Natürlich passierte auf solch statischen Websites nicht viel Interessantes.
- Viele verschiedene Technologien wurden für dynamische Websites entwickelt. Javascript war eine davon.</p>
+<p>In den frühen Tagen des Internets waren Websites statisch, zeigten also nur Text und Bilder, welche auf dem Bildschirm
+ sichtbar sind, veränderten sich aber nicht oder interagierten. Natürlich passierte auf solch statischen Websites nicht viel Interessantes.
+ Viele verschiedene Technologien wurden für dynamische Websites entwickelt. Javascript war eine davon.</p>
-<p>Javascript ist eine Programmiersprache. Viele Webserver hosten Programme geschrieben in Javascript, welche an die Geräte als Teil der Website gesandt werden.
- Das Gerät führt das Javascript auf dem lokalen Prozessor aus und folgt den Anweisungen des Programms, was beispielsweise Bilder animieren kann,
- ein Menü öffnen und viele andere großartige Dinge.</p>
+<p>Javascript ist eine Programmiersprache. Viele Webserver hosten Programme geschrieben in Javascript, welche an die Geräte als Teil der Website gesandt werden.
+ Das Gerät führt das Javascript auf dem lokalen Prozessor aus und folgt den Anweisungen des Programms, was beispielsweise Bilder animieren kann,
+ ein Menü öffnen und viele andere großartige Dinge.</p>
-<h3>JavaScript ist gefährlich</h3>
-<p>Natürlich birgt das Konzept von willkürlich ausgeführten Programmen aus einer Website heraus ein großes gefahrenprotenzial. Also werden Limitationen in Javascript gesetzt,
+<h3>JavaScript ist gefährlich</h3>
+<p>Natürlich birgt das Konzept von willkürlich ausgeführten Programmen aus einer Website heraus ein großes gefahrenprotenzial. Also werden Limitierungen in Javascript gesetzt,
damit Dinge wie Viren vorgebeugt wird. Wie auch immer, im Endeffekt sind diese Limitationen sehr ausgedehnt.
- Unten ist ein Screenshot von <a href="http://webkay.robinlinus.com">webkay</a>, einer Website die Beispiele für von einem Gerät produzierten
- Informationen bietet, wenn Javascript auf einem Gerät läuft. <a href="http://www.browserleaks.com/">Browser Leaks</a> ist eine andere gute Quelle.</p>
+ Unten ist ein Screenshot von <a href="http://webkay.robinlinus.com">webkay</a>, einer Website die Beispiele für von einem Gerät produzierten
+ Informationen bietet, wenn Javascript auf einem Gerät läuft. <a href="http://www.browserleaks.com/">Browser Leaks</a> ist eine andere gute Quelle.</p>
<p><img class="center" src="images/webkay.png" height="640" width="360"></p>
-<p>Zum Schutz der Privatsphäre wäre es ideal das Web ohne Javascript zu nutzen. Jedoch benötigen manche Websites legitimerweise
- JavaScript, um ihre Zwecke zu erfüllen und andere funktionieren nicht korrekt ohne Javascript, selbst wenn sie dazu umprogrammiert werden könnten.
- Privacy Browser geht auf diese Problematik ein und macht es einfach, Javascript zu (de-)aktivieren. Ein Knopfdruck auf das Privatsphäre-Schild wechselt zwischen blau
+<p>Zum Schutz der Privatsphäre wäre es ideal das Web ohne Javascript zu nutzen. Jedoch benötigen manche Websites legitimerweise
+ JavaScript, um ihre Zwecke zu erfüllen und andere funktionieren nicht korrekt ohne Javascript, selbst wenn sie dazu umprogrammiert werden könnten.
+ Privacy Browser geht auf diese Problematik ein und macht es einfach, Javascript zu (de-)aktivieren. Ein Knopfdruck auf das Privatsphäre-Schild wechselt zwischen blau
<img src="images/privacy_browser.png" height="16" width="16"> oder gelb <img src="images/warning.png" height="16" width="16"> (beide zeigen an, dass
JavaScript aus ist) und rot <img src="images/javascript_enabled.png" height="16" width="16"> (JavaScript aktiviert) und aktualisieren die Website.
Der Vergleich der verschiedenen Informationen, die <a href="http://webkay.robinlinus.com">webkay</a> mit und ohne Javascript sammeln kann ist informativ.</p>
-<p>Das Surfen im Internet mit deaktiviertem und nur bei Bedarf/Benötigung aktiviertem Javascript macht viel beim Datenschutz aus. Zusätzlich wird JavaScript
- genutzt, um eine Großteil der nervigen Werbung und Extra-Müll, die mit Websites oft kommen, mitzuladen. Wenn es deaktiviert ist, werden Websites
- schneller laden, weniger Datentraffic fressen und nur weniger nervige, und nicht die nervigen, Texte auf der Website überdeckenden Werbungen anzeigen.</p>
+<p>Das Surfen im Internet mit deaktiviertem und nur bei Bedarf/Benötigung aktiviertem Javascript macht viel beim Datenschutz aus. Zusätzlich wird JavaScript
+ genutzt, um eine Großteil der nervigen Werbung und Extra-Müll, die mit Websites oft kommen, mitzuladen. Wenn es deaktiviert ist, werden Websites
+ schneller laden, weniger Datentraffic fressen und nur weniger nervige, und nicht die nervigen, Texte auf der Website überdeckenden Werbungen anzeigen.</p>
</body>
</html>
\ No newline at end of file
<body>
<h3>Erstanbieter-Cookies</h3>
-<p>Cookies können in zwei Typen unterteilt werden. Erstanbieter-Cookies sind Cookies, die von aktuell besuchten Website gesetzt werden.</p>
+<p>Cookies können in zwei Typen unterteilt werden. Erstanbieter-Cookies sind Cookies, die von aktuell besuchten Website gesetzt werden.</p>
-<p>In den frühen Tagen des Internets stellte sich heraus, dass es nützlich sein könnte, wenn Websites Informationen für einen
- späteren Zugriff auf dem Computer speichern können. Zum Beispiel könnte eine Website, die Informationen zum Wetter bietet, den Benutzer nach der
- Postleitzahl fragen und sie dann in einem Cookie speichern. Beim nächsten Besuch des Benutzers würden die Informationen automatisch für diese
- Postleitzahl geladen werden, ohne dass der Benutzer sie erneut eingibt oder einen Benutzeraccount für diese Website erstellt (was völlig überzogen für solch
- eine simple Aufgabe wäre).</p>
+<p>In den frühen Tagen des Internets stellte sich heraus, dass es nützlich sein könnte, wenn Websites Informationen für einen
+ späteren Zugriff auf dem Computer speichern können. Zum Beispiel könnte eine Website, die Informationen zum Wetter bietet, den Benutzer nach der
+ Postleitzahl fragen und sie dann in einem Cookie speichern. Beim nächsten Besuch des Benutzers würden die Informationen automatisch für diese
+ Postleitzahl geladen werden, ohne dass der Benutzer sie erneut eingibt oder einen Benutzeraccount für diese Website erstellt (was völlig überzogen für solch
+ eine simple Aufgabe wäre).</p>
-<p>Wie bei allem im Web fanden kluge Leute alle möglichen Wege, Cookies für Dinge zu nutzen, die der Nutzer niemals grstatten würde, wenn er davon wüsste.
- zum Beispiel kann eine Website einen Cookie mit einem einmaligen Schlüsselcode auf einem Gerät hinterlegen.
- Dann kann er, jedes Mal wenn der Benutzer die Seite auf diesem Gerät besucht, diesen Benutzer einem bestimmten Profil
+<p>Wie bei allem im Web fanden kluge Leute alle möglichen Wege, Cookies für Dinge zu nutzen, die der Nutzer niemals grstatten würde, wenn er davon wüsste.
+ zum Beispiel kann eine Website einen Cookie mit einem einmaligen Schlüsselcode auf einem Gerät hinterlegen.
+ Dann kann er, jedes Mal wenn der Benutzer die Seite auf diesem Gerät besucht, diesen Benutzer einem bestimmten Profil
zuordnen welches der Server anlegt, selbst wenn der Nutzer - wie es auf einem Handy oft der Fall ist - mit einer anderen IP-Adresse surft.</p>
-<p>Einige Websites mit Login-Funktion benötigen Erstanbieter-Cookies, damit der Benutzer eingeloggt bleibt. Cookies sind nicht die einzige Möglichkeit
- für eine Website, den User während des umherklickens auf der Website eingeloggt zu lassen; wenn eine bestimmte Website sich jedoch dazu entschieden hat,
- aktive Logins nur über Cookies zu verwalten, sind eingeschaltetem Erstanbieter-Cookies die einzige Möglichkeit, diese Funktion zu nutzen.</p>
+<p>Einige Websites mit Login-Funktion benötigen Erstanbieter-Cookies, damit der Benutzer eingeloggt bleibt. Cookies sind nicht die einzige Möglichkeit
+ für eine Website, den User während des Umherklickens auf der Website eingeloggt zu lassen; wenn eine bestimmte Website sich jedoch dazu entschieden hat,
+ aktive Logins nur über Cookies zu verwalten, sind eingeschaltetem Erstanbieter-Cookies die einzige Möglichkeit, diese Funktion zu nutzen.</p>
-<p>Wenn Erstanbieter-Cookies aktiviert sind aber Javascript deaktiviert, ist das Privatsphäre-Icon gelb <img src="images/warning.png" height="16" width="16">
+<p>Wenn Erstanbieter-Cookies aktiviert sind aber Javascript deaktiviert, ist das Privatsphäre-Icon gelb <img src="images/warning.png" height="16" width="16">
als Warnung.</p>
<p>Drittanbieter-Cookies werden von Teilen einer Website gesetzt, die von einem anderen Server als dem aktuell besuchten.
Beispielsweise laden viele Websites Werbungen von einem Drittanbieter-Broker wie Googles
- <a href="https://www.google.com/adsense/start/#?modal_active=none">Ad Sense</a>. Jedes Mal wenn die Website lädt, fragt bei dem
- Werbe-Broker an, dass er Werbung zeigen soll. Der Werbe-Broker analysiert jegliche information, die er über den Nutzer hat, vergleicht mit dem aktuell gezahlten Satz der Werbenden
- Firmen, die die Werbung platziert haben wollen, und wählt die anzuzeigenden Werbungen aus. Der Bereich der Website, auf dem die Werbung
+ <a href="https://www.google.com/adsense/start/#?modal_active=none">Ad Sense</a>. Jedes Mal wenn die Website lädt, fragt bei dem
+ Werbe-Broker an, dass er Werbung zeigen soll. Der Werbe-Broker analysiert jegliche information, die er über den Nutzer hat, vergleicht mit dem aktuell gezahlten Satz der Werbenden
+ Firmen, die die Werbung platziert haben wollen, und wählt die anzuzeigenden Werbungen aus. Der Bereich der Website, auf dem die Werbung
angezeigt wird, wird vom Drittanbieter-Broker statt von der eigentlich besuchten Website geladen.</p>
<p>Weil die meisten Werbungen im Internet von ein paar wenigen Brokern betrieben werden hat es nicht lange gedauert, bis sie gemerkt haben,
- dass sie einfach einen Tracking-Cookie auf dem Gerät des Benutzers hinterlassen können um immer bescheid zu wissen, wohin er geht. Jedes Mal, wenn eine Werbung von einem Broker geladen wird,
- ist es seine erste Aufgabe, das Gerät auf eine einmalige Seriennummer in einem cookie zu überprüfen. Wenn es den hat, sucht er
- das Profil für diese Seriennummer heraus und merkt sich die neu besuchte Seite. Deshalb kann der Nutzer auf der einen Seite nach einem Produkt suchen,
- nach dem er normalerweise nicht sucht, wie z. B. Walnüsse, und plötzlich auf jeder anderen besuchten Website Werbungen für Walnüsse angezeigt bekommen.</p>
+ dass sie einfach einen Tracking-Cookie auf dem Gerät des Benutzers hinterlassen können um immer bescheid zu wissen, wohin er geht. Jedes Mal, wenn eine Werbung von einem Broker geladen wird,
+ ist es seine erste Aufgabe, das Gerät auf eine einmalige Seriennummer in einem cookie zu überprüfen. Wenn es den hat, sucht er
+ das Profil für diese Seriennummer heraus und merkt sich die neu besuchte Seite. Deshalb kann der Nutzer auf der einen Seite nach einem Produkt suchen,
+ nach dem er normalerweise nicht sucht, wie z. B. Walnüsse, und plötzlich auf jeder anderen besuchten Website Werbungen für Walnüsse angezeigt bekommen.</p>
-<p>Zusätzlich zu Werbe-Brokern machen Social-Media-Plattformen das Gleiche. Vor ein paar Jahren haben die großen Plattformen wie
- Facebook und Twitter eine große Auswahl von Websites ausgemacht, auf denen es in ihrem größten Interesse wäre, kleine Social Media-Icons zu platzieren.
+<p>Zusätzlich zu Werbe-Brokern machen Social-Media-Plattformen das Gleiche. Vor ein paar Jahren haben die großen Plattformen wie
+ Facebook und Twitter eine große Auswahl von Websites ausgemacht, auf denen es in ihrem größten Interesse wäre, kleine Social Media-Icons zu platzieren.
Das sind nicht nur Bilder. Sie beinhalten <a href="https://developers.facebook.com/docs/plugins/like-button/">eingebettete Codes</a>, welche
- zurück auf die Social-Media-Plattform verlinken und - neben anderen Dingen - einen Drittanbieter-Cookie auf dem Gerät hinterlassen. Diese Cookies werden selbst dann gesetzt,
- wenn der Benutzer keinen Account bei der Social-Media-Plattform hat. Mit der Zeit bauten Firmen wie Facebook (welche ebenfalls einen Werbe-Broker betreiben) eine große Anzahl von
- detaillierten Profilen über Personen an, die <a href="http://www.theverge.com/2016/5/27/11795248/facebook-ad-network-non-users-cookies-plug-ins">niemals einen Account
+ zurück auf die Social-Media-Plattform verlinken und - neben anderen Dingen - einen Drittanbieter-Cookie auf dem Gerät hinterlassen. Diese Cookies werden selbst dann gesetzt,
+ wenn der Benutzer keinen Account bei der Social-Media-Plattform hat. Mit der Zeit bauten Firmen wie Facebook (welche ebenfalls einen Werbe-Broker betreiben) eine große Anzahl von
+ detaillierten Profilen über Personen an, die <a href="http://www.theverge.com/2016/5/27/11795248/facebook-ad-network-non-users-cookies-plug-ins">niemals einen Account
auf ihrer Seite erstellt haben</a>.</p>
-<p>Es gibt kaum gute Gründe, Drittanbieter-Cookies zu aktivieren. Auf Android-Geräten mit Android-Version KitKat oder ältere (Version <= 4.4.4 oder API <=20)
+<p>Es gibt kaum gute Gründe, Drittanbieter-Cookies zu aktivieren. Auf Android-Geräten mit Android-Version KitKat oder ältere (Version <= 4.4.4 oder API <=20)
<a href="https://developer.android.com/reference/android/webkit/CookieManager.html#acceptThirdPartyCookies(android.webkit.WebView)">unterscheidet Webview Erstanbieter- und Drittanbieter-Cookies nicht</a>.
Deshalb aktiviert das Aktivieren von Erstanbieter-Cookies zugleich auch Drittanbieter-Cookies.</p>
<h3>DOM-Speicher</h3>
-<p>Der Document Object Model-Speicher, auch bekannt als Web-Speicher, ist wie Cookies auf Steroiden. Während die maximale Gesamtspeichergröße für alle Cookies von
- einer einzigen URL 4kb beträgt, kann der DOM-Speicher zwischen <a href="https://en.wikipedia.org/wiki/Web_storage#Storage_size">5-25 Megabytes pro Seite</a> betragen.
- Da der DOM-Speicher Javascript zum Lesen und Schreiben von Daten nutzt, ändert das Aktivieren also nichts, solange nicht auch Javascript aktiviert ist.</p>
+<p>Der Document Object Model-Speicher, auch bekannt als Web-Speicher, ist wie Cookies auf Steroiden. Während die maximale Gesamtspeichergrße für alle Cookies von
+ einer einzigen URL 4kb beträgt, kann der DOM-Speicher zwischen <a href="https://en.wikipedia.org/wiki/Web_storage#Storage_size">5-25 Megabytes pro Seite</a> betragen.
+ Da der DOM-Speicher Javascript zum Lesen und Schreiben von Daten nutzt, ändert das Aktivieren also nichts, solange nicht auch Javascript aktiviert ist.</p>
<h3>Formulardaten</h3>
-<p>Formulardaten beinhalten die Informationen, die in Web-Formularen eingegeben werden, wie Benutzernamen, Adressen, Telefonnummern etc. und listet sie als Auswahlmenü auf künftig besuchten Websites auf.
+<p>Formulardaten beinhalten die Informationen, die in Web-Formularen eingegeben werden, wie Benutzernamen, Adressen, Telefonnummern etc. und listet sie als Auswahlmenü auf künftig besuchten Websites auf.
Ungleich der anderen Arten der lokalen Datenspeicherung werden Formulardaten nicht ohne die explizite Handlung des Nutzers an den Webserver gesendet.</p>
</body>
</html>
\ No newline at end of file
</head>
<body>
-<h3>Echte Privatsphäre</h3>
+<h3>Echte Privatsphäre</h3>
-<p>Privacy Browser wurde entwickelt um Ihnen während des Surfens die maximal mögliche Kontrolle über Ihre Privatsphäre zu gewähren.
- Wenn Sie sich mit einer Website verbinden werden bestimmte Informationen, die zum Verarbeiten der Verbindung nötig sind, an den Server gesandt.
- Der Server erhält beispielsweise Ihre IP-Adresse und eine Port-Nummer, welche er benötigt, damit er weiß, wohin er antworten soll.
- Diese Informationen werden häufig gespeichert, damit der Webseitenbetreiber Statistiken generieren kann darüber, wie oft eine Website geladen wird
+<p>Privacy Browser wurde entwickelt um Ihnen während des Surfens die maximal mägliche Kontrolle über Ihre Privatsphäre zu gewähren.
+ Wenn Sie sich mit einer Website verbinden werden bestimmte Informationen, die zum Verarbeiten der Verbindung nötig sind, an den Server gesandt.
+ Der Server erhält beispielsweise Ihre IP-Adresse und eine Port-Nummer, welche er benötigt, damit er weiß, wohin er antworten soll.
+ Diese Informationen werden häufig gespeichert, damit der Webseitenbetreiber Statistiken generieren kann darüber, wie oft eine Website geladen wird
und wie viele verschiedene IP-Adressen sie besucht haben.</p>
-<p>Darüber hinaus wollen die meisten Webseitenbetreiber Ihr Surfverhalten im ganzen Internet und nicht nur auf einem einzigen Server nachverfolgen. Sie nutzen dabei verschiedene technische Möglichkeiten.
- Einige davon nutzen das Anfragen oder Platzieren von bestimmten Informationen auf Ihrem Gerät, die das Nachverfolgen ermöglichen. Nahezu alle Browser nehmen freiwillig an dieser Verfolgung Teil,
- ohne den Nutzer darüber zu informieren. Privacy Browser ist dazu entwickelt, dass der Benutzer so viel Information und Kontrolle über diese Verfolgungstechniken wie möglich erhält.</p>
+<p>Darüber hinaus wollen die meisten Webseitenbetreiber Ihr Surfverhalten im ganzen Internet und nicht nur auf einem einzigen Server nachverfolgen. Sie nutzen dabei verschiedene technische Möglichkeiten.
+ Einige davon nutzen das Anfragen oder Platzieren von bestimmten Informationen auf Ihrem Gerät, die das Nachverfolgen ermöglichen. Nahezu alle Browser nehmen freiwillig an dieser Verfolgung Teil,
+ ohne den Nutzer darüber zu informieren. Privacy Browser ist dazu entwickelt, dass der Benutzer so viel Information und Kontrolle über diese Verfolgungstechniken wie möglich erhält.</p>
-<h3>Android's WebView Einschränkungen</h3>
+<h3>Android's WebView Einschränkungen</h3>
-<p>Privacy Browser benutzt Androids integrierte WebView um Webseiten zu rendern. Es gibt einige Einschränkungen bei den Möglichkeiten, die WebView zur Kontrolle der Privatsphäre bietet. Zum Beispiel
- ist es nicht möglich, nur bestimmte Javascript-Kommandos ohne die anderen gleichzeitig zu (de-)aktivieren. Sobald Privacy Browser zu einem alle in WebView möglichen Privatsphärekontrollen beinhaltenden, umfassenden Browser herangewachsen ist,
- ist es eine Überlegung wert, eine eigene, überarbeitete WebView oder eine andere Rendering Engine zu nutzen.</p>
+<p>Privacy Browser benutzt Androids integrierte WebView um Webseiten zu rendern. Es gibt einige Einschränkungen bei den Möglichkeiten, die WebView zur Kontrolle der Privatsphäre bietet. Zum Beispiel
+ ist es nicht möglich, nur bestimmte Javascript-Kommandos ohne die anderen gleichzeitig zu (de-)aktivieren. Sobald Privacy Browser zu einem alle in WebView möglichen Privatsphärekontrollen beinhaltenden, umfassenden Browser herangewachsen ist,
+ ist es eine Überlegung wert, eine eigene, überarbeitete WebView oder eine andere Rendering Engine zu nutzen.</p>
</body>
</html>
\ No newline at end of file
<p>Privacy Browser ist noch unfertig. Die allerbesten Features werden erst noch mit eingebunden. Sie beinhalten Folgendes:</p>
<ul>
- <li><strong>Kontrollen für SSL-Zertifikate</strong>.</li>
- <li><strong>Detaillierte Einstellungen für Cookies und DOM-Speicher</strong>.</li>
- <li><strong>Automatisches Laden von Privatsphäreeinstellungen je nach URL</strong>.</li>
- <li><strong>Verschlüsseltes Synchronisieren zwischen Geräten</strong>.</li>
+ <li><strong>Detaillierte Einstellungen für Cookies und DOM-Speicher</strong>.</li>
+ <li><strong>Automatisches Laden von Privatsphäreeinstellungen je nach URL</strong>.</li>
+ <li><strong>Verschlüsseltes Synchronisieren zwischen Geräten</strong>.</li>
<li><strong>Browsen mit Tabs</strong>.</li>
<li><strong>Integrierter Ad-Blocker</strong>.</li>
</ul>
-<p>Eine umfangreichere Liste aller geplanten Features und Fehler ist unter <a href="https://redmine.stoutner.com/projects/privacy-browser/issues">redmine.stoutner.com</a> verfügbar.</p>
+<p>Eine umfangreichere Liste aller geplanten Features und Fehler ist unter <a href="https://redmine.stoutner.com/projects/privacy-browser/issues">redmine.stoutner.com</a> verfügbar.</p>
</body>
</html>
\ No newline at end of file
<body>
<h3>Maskieren von IP-Adressen</h3>
-<p>Obwohl es keine perfekte Wissenschaft ist; IP-Adressen können in physikalische Adressen mit steigender Genauigkeit gewandelt werden.
- Es gibt <a href="https://www.whatismyip.com/">öffentliche Datenbanken</a>, die zeigen, welche ISP welche IP-Adresse besitzt mit einer guten
- Einschätzung, in welcher Region sie genutzt wird. Es gibt private Datenbanken mit noch genaueren Informationen. Und natürlich
- weiß die ISP die exakte Serviceadresse jeder einzelnen IP-Adresse.</p>
+<p>Obwohl es keine perfekte Wissenschaft ist; IP-Adressen können in physikalische Adressen mit steigender Genauigkeit gewandelt werden.
+ Es gibt <a href="https://www.whatismyip.com/">öffentliche Datenbanken</a>, die zeigen, welche ISP welche IP-Adresse besitzt mit einer guten
+ Einschätzung, in welcher Region sie genutzt wird. Es gibt private Datenbanken mit noch genaueren Informationen. Und natürlich
+ weiß die ISP die exakte Serviceadresse jeder einzelnen IP-Adresse.</p>
-<p>VPN-Dienste können die IP-Adresse des Geräts vor einem Server verstecken. Wenn ein VPN-Dienst zwischengeschaltet ist wird sämtlicher Datenverkehr verschlüsselt und über
- den VPN-Server umgeleitet. Der Webserver sieht lediglich die IP-Adresse des VPN-Servers. Das ist zwar ausreichend, um die Anonymität vor
- Webserver- und Werbebetreibern zu wahren, aber es reicht nicht aus, um die Anonymität vor unterdrückenden Regimen zu schützen,
- welche womöglich fähig sind die VPN-Betreiber zur Herausgabe der Logs über die IP-Adressen zu bewegen. Diejenigen, die nach Sicherheit vor solchen
- Regimen suchen oder staatlichen Behörden den Laufpass geben wollen brauchen noch etwas mehr.</p>
+<p>VPN-Dienste können die IP-Adresse des Geräts vor einem Server verstecken. Wenn ein VPN-Dienst zwischengeschaltet ist wird sämtlicher Datenverkehr verschlüsselt und über
+ den VPN-Server umgeleitet. Der Webserver sieht lediglich die IP-Adresse des VPN-Servers. Das ist zwar ausreichend, um die Anonymität vor
+ Webserver- und Werbebetreibern zu wahren, aber es reicht nicht aus, um die Anonymität vor unterdrückenden Regimen zu schützen,
+ welche womöglich fähig sind die VPN-Betreiber zur Herausgabe der Logs über die IP-Adressen zu bewegen. Diejenigen, die nach Sicherheit vor solchen
+ Regimen suchen oder staatlichen Behörden den Laufpass geben wollen brauchen noch etwas mehr.</p>
-<p>Das Tor (The Onion Router) Netzwerk wurde für genau diese Zwecke entwickelt. Es leitet verschlüsselten Datenverkehr durch mindestens drei verschiedene unabhängige Server,
- die dem Projekt ihre Bandbreite spenden. Keiner der Server hat genügend Informationen, sodass er weder die IP-Adresse des sendenden Computers als auch
- dem Ankunftsort hat. Daher müsste die jeweils gemiedene Behörde, die Zugriff auf diesen Inhalt möchte, all diese Maschinen in dieser Verbindung mit einbeziehen,
- welche alle über den Globus verteilt sind. Das bietet nicht die ultimative Privatsphäre, kommt aber nahe dran.</p>
+<p>Das Tor (The Onion Router) Netzwerk wurde für genau diese Zwecke entwickelt. Es leitet verschlüsselten Datenverkehr durch mindestens drei verschiedene unabhängige Server,
+ die dem Projekt ihre Bandbreite spenden. Keiner der Server hat genügend Informationen, sodass er weder die IP-Adresse des sendenden Computers als auch
+ dem Ankunftsort hat. Daher müsste die jeweils gemiedene Behörde, die Zugriff auf diesen Inhalt möchte, all diese Maschinen in dieser Verbindung mit einbeziehen,
+ welche alle über den Globus verteilt sind. Das bietet nicht die ultimative Privatsphäre, kommt aber nahe dran.</p>
-<p>Das Tor Projekt hat eine Android-App namens Orbot, welche auf <a href="https://f-droid.org/repository/browse/?fdfilter=orbot&fdid=org.torproject.android">F-Droid</a> verfügbar ist
- und überall sonst, wo Privacy Browser auch bezogen werde kann. Orbot kann in drei Modi arbeiten.</p>
+<p>Das Tor Projekt hat eine Android-App namens Orbot, welche auf <a href="https://f-droid.org/repository/browse/?fdfilter=orbot&fdid=org.torproject.android">F-Droid</a> verfügbar ist
+ und überall sonst, wo Privacy Browser auch bezogen werde kann. Orbot kann in drei Modi arbeiten.</p>
<ul>
- <li><strong>Proxy-Modus</strong> Apps müssen das Weiterleiten ihres Datenverkehrs anfragen, sprich müssen einen Code beinhalten, den der jeweilige Entwickler einbinden
+ <li><strong>Proxy-Modus</strong> Apps müssen das Weiterleiten ihres Datenverkehrs anfragen, sprich müssen einen Code beinhalten, den der jeweilige Entwickler einbinden
muss, damit es funktioniert.</li>
<li><strong>Transparenter Proxy-Modus</strong> Orbot greift bei jedem Datenverkehr von anderen Apps ein und leitet es weiter an
- das Tor Netzwerk. Apps müssen nicht von ihrem Entwickler modifiziert werden um mit dem transparenten Proxy zu funktionieren, jedoch braucht Orbot dazu
- Root-Zugriff auf dem Gerät.</li>
- <li><strong>VPN-Modus</strong> Orbot registriert sich als VPN auf dem Gerät. Apps benötigen keine vorherige Modifizierung durch den Entwickler
- und Root wird nicht benötigt.</li>
+ das Tor Netzwerk. Apps müssen nicht von ihrem Entwickler modifiziert werden um mit dem transparenten Proxy zu funktionieren, jedoch braucht Orbot dazu
+ Root-Zugriff auf dem Gerät.</li>
+ <li><strong>VPN-Modus</strong> Orbot registriert sich als VPN auf dem Gerät. Apps benötigen keine vorherige Modifizierung durch den Entwickler
+ und Root wird nicht benötigt.</li>
</ul>
-<p>Momentsn funktioniert Privacy Browser mit Orbot im transparenten Proxying und im VPN-Modus. Unterstützung für den Standard-Proxymodus wird zu einem
- <a href="https://redmine.stoutner.com/issues/26">späteren Zeitpunkt</a> hinzugefügt.</p>
+<p>Momentsn funktioniert Privacy Browser mit Orbot im transparenten Proxying und im VPN-Modus. Unterstützung für den Standard-Proxymodus wird zu einem
+ <a href="https://redmine.stoutner.com/issues/26">späteren Zeitpunkt</a> hinzugefügt.</p>
<p>Weil der Datenverkehr durch mehrere verschiedene Tor-Ports geleitet wird ist das Surfen mit aktiviertem Tor oft langsamer als beim normalen Surfen.</p>
</body>
<h3>Werbung</h3>
<p>Privacy Browser Free beinhaltet eine Bannerwerbung unten auf dem Bildschirm, welcher von Googles
- AdMob-Netzwerk befüllt wird. Standardmäßig stellt Google die <a href="https://support.google.com/googleplay/android-developer/answer/6048248?hl=en">Werbe-ID</a>
- des Geräts den Werbungen über dieses Netzwerk zur Verfügung. Das ermöglicht werbenden Firmen, ein Profil von
- dem Gerät anzulegen, welches zeigt welche Apps installiert sind (welche auch Werbungen zeigen), wie oft sie genutzt werden und an welchen Werbungen der Nutzer interessiert ist.</p>
+ AdMob-Netzwerk befüllt wird. Standardmäßig stellt Google die <a href="https://support.google.com/googleplay/android-developer/answer/6048248?hl=en">Werbe-ID</a>
+ des Geräts den Werbungen über dieses Netzwerk zur Verfügung. Das ermöglicht werbenden Firmen, ein Profil von
+ dem Gerät anzulegen, welches zeigt welche Apps installiert sind (welche auch Werbungen zeigen), wie oft sie genutzt werden und an welchen Werbungen der Nutzer interessiert ist.</p>
-<p>Benutzer können diese Werbe-ID deaktivieren in <strong>Einstellungen</strong>, <strong>Google</strong>, <strong>Werbung</strong>.</p>
+<p>Benutzer können diese Werbe-ID deaktivieren in <strong>Einstellungen</strong>, <strong>Google</strong>, <strong>Werbung</strong>.</p>
<img class="center" src="images/advertising_id.png" height="640" width="360">
-<p>Der Zweck der kostenlosen Version von Privacy Browser ist es, Nutzern zu ermöglichen, die Features der App zu testen. Die Standardversion kann in den bekannten App-Stores
+<p>Der Zweck der kostenlosen Version von Privacy Browser ist es, Nutzern zu ermöglichen, die Features der App zu testen. Die Standardversion kann in den bekannten App-Stores
gekauft oder kostenlos von
<a href="https://f-droid.org/repository/browse/?fdfilter=privacy+browser&fdid=com.stoutner.privacybrowser.standard">F-Droid</a> bezogen werden.</p>
<h3>Verizon Tracking Headers</h3>
-<p>Verizon, einer der großen Mobilfunkbetreiber in den USA, fügt einen einmaligen Tracking Header zu sämtlichem HTTP-Datenverkehr über ihr Netzwerk hinzu. Die Electronic Frontier
- Foundation hat über die <a href="https://www.eff.org/deeplinks/2014/11/verizon-x-uidh">Einschränkungen in der Privatsphäre bei diesem Vorgehen</a> berichtet. Aufgrund des öffentlichen Drucks
- hat Verizon eine Möglichkeit geschaffen, <a href="http://www.clark.com/how-opt-out-verizons-super-cookie-tracking">sich von diesem Tracking abzumelden</a>.</p>
+<p>Verizon, einer der großen Mobilfunkbetreiber in den USA, fügt einen einmaligen Tracking Header zu sämtlichem HTTP-Datenverkehr über ihr Netzwerk hinzu. Die Electronic Frontier
+ Foundation hat über die <a href="https://www.eff.org/deeplinks/2014/11/verizon-x-uidh">Einschränkungen in der Privatsphäre bei diesem Vorgehen</a> berichtet. Aufgrund des öffentlichen Drucks
+ hat Verizon eine Möglichkeit geschaffen, <a href="http://www.clark.com/how-opt-out-verizons-super-cookie-tracking">sich von diesem Tracking abzumelden</a>.</p>
</body>
</html>
\ No newline at end of file
<h3>Browser-Identifikation</h3>
<p>Wenn Internetbrowser sich mit Websites verbinden senden sie einen sog. User Agent, welcher den Browser und die
- Rendering-Möglichkeiten an die Website kommuniziert. Die Website kann diese Informationen nutzen, um zu entscheiden, welche Version der Website
- an den Browser übermittelt werden soll. Viele Websites haben beispielsweise verschiedene Versionen für Desktopcomputer
+ Rendering-Möglichkeiten an die Website kommuniziert. Die Website kann diese Informationen nutzen, um zu entscheiden, welche Version der Website
+ an den Browser übermittelt werden soll. Viele Websites haben beispielsweise verschiedene Versionen für Desktopcomputer
mobile Browser.</p>
-<p>Privacy Browser nutzt standardmäßig den auf dem Gerät in WebView integrierten User Agent.
- Sie können nachsehen, welcher es ist, wenn Sie in die <strong>Einstellungen</strong> gehen und den <strong>User
+<p>Privacy Browser nutzt standardmäßig den auf dem Gerät in WebView integrierten User Agent.
+ Sie können nachsehen, welcher es ist, wenn Sie in die <strong>Einstellungen</strong> gehen und den <strong>User
Agent</strong> auf <strong>WebView-Standard</strong> stellen. Der Screenshot unten zeigt ein Nexus 6P mit Android 6.0.1
und installiertem Android System WebView 52.0.2743.98.</p>
<img class="center" src="images/user_agent.png" height="640" width="360">
-<p>Im User Agent sind genügend Informationen, sodass manchmal nur einige wenige Besucher einer Website denselben haben. Wenn der User Agent
+<p>Im User Agent sind genügend Informationen, sodass manchmal nur einige wenige Besucher einer Website denselben haben. Wenn der User Agent
mit einem anderen Teil von nicht-einmaligen Identifizierungsinformationen kombiniert wird, resultiert das oft in einem einmaligen "Fingerabdruck".
Die Electronic Frontier Foundation hat ein Tool namens <a href="https://panopticlick.eff.org/">Panopticlick</a> erstellt,
- um zu demonstrieren, wie viele Informationen aus diesen Quellen bezogen werden können. Wenn dieser Test mit aktiviertem Javascript ausgeführt wird
- wächst die Anzahl an Sammelband Informationen drastisch.</p>
+ um zu demonstrieren, wie viele Informationen aus diesen Quellen bezogen werden können. Wenn dieser Test mit aktiviertem Javascript ausgeführt wird
+ wächst die Anzahl an Sammelband Informationen drastisch.</p>
<img class="center" src="images/panopticlick.png" height=640" width="360">
-<p>Privacy Browser erlaubt Ihnen den User Agent zu ändern. Es gibt einige vorgegebenen Optionen, die auf übliche Browser und Betriebssysteme zutreffen.
- Privacy Browser hat auÃ\9ferdem seinen eigenen User Agent, welcher ganz einfach PrivacyBrowser/1.0 ist. Beim Tracking gilt: Alles was selten ist, ist einfacher
- zu verfolgen. Wenn Privacy Browser bekannter wird und mehr Leute PrivacyBrowser/1.0 als User Agent nutzen wird es eine gute Wahl für Privatsphäre darstellen.
- Momentan ermöglicht das Wählen von etwas, das viele Klicks auf dem Server hat, wie <strong>Edge 13 auf Windows 10</strong>, das Untertauchen in der
- Menge der Nutzer. Firefox oder Chrome bieten weniger Privatsphäre, da sie automatisch aktualisiert werden und ihre Versionsnummer so schnell wechselt, sodass
- die in Privacy Browser eingepflegte Version wahrscheinlich schnell überholt wird und so oft aus der auf Server Logs auftauchenden Menge heraussticht.</p>
+<p>Privacy Browser erlaubt Ihnen den User Agent zu ändern. Es gibt einige vorgegebenen Optionen, die auf übliche Browser und Betriebssysteme zutreffen.
+ Privacy Browser hat auÃÂ\9ferdem seinen eigenen User Agent, welcher ganz einfach PrivacyBrowser/1.0 ist. Beim Tracking gilt: Alles was selten ist, ist einfacher
+ zu verfolgen. Wenn Privacy Browser bekannter wird und mehr Leute PrivacyBrowser/1.0 als User Agent nutzen wird es eine gute Wahl für Privatsphäre darstellen.
+ Momentan ermöglicht das Wählen von etwas, das viele Klicks auf dem Server hat, wie <strong>Edge 13 auf Windows 10</strong>, das Untertauchen in der
+ Menge der Nutzer. Firefox oder Chrome bieten weniger Privatsphäre, da sie automatisch aktualisiert werden und ihre Versionsnummer so schnell wechselt, sodass
+ die in Privacy Browser eingepflegte Version wahrscheinlich schnell überholt wird und so oft aus der auf Server Logs auftauchenden Menge heraussticht.</p>
-<p>Ein zweiter Grund für das Ã\84ndern des User Agents ist das Ã\9cberzeugen des Servers, dass er die Desktopversion der Website anzeigen soll, welche oftmals
- besser auf modernen Smartphones läuft als die mobile Seite. Für diesen Zweck funktioniert PrivacyBrowser/1.0 sehr gut, da Webserver für gewöhnlich
+<p>Ein zweiter Grund für das ÃÂ\84ndern des User Agents ist das ÃÂ\9cberzeugen des Servers, dass er die Desktopversion der Website anzeigen soll, welche oftmals
+ besser auf modernen Smartphones läuft als die mobile Seite. Für diesen Zweck funktioniert PrivacyBrowser/1.0 sehr gut, da Webserver für gewöhnlich
die Desktopversion als Standardversion anzeigen, wenn sie keinen mobilen Browser als User Agent erhalten.</p>
<p>Androids WebView erlaubt keinen leeren User Agent. Wenn das der Fall ist, wird der Standard-User Agent an den Server gesandt.</p>
img.left {
float: left;
+ height: 32;
+ width: 32;
}
</style>
</head>
<h3>Attributions</h3>
-<p>The icons in Privacy Browser come from the Android Material icon set, which is released under the <a href=https://creativecommons.org/licenses/by/4.0/>CC-BY license</a>.</p>
+<p>Most of the icons in Privacy Browser come from the <a href="https://design.google.com/icons/">Android Material icon set</a>, which is released under the <a href ="https://www.apache.org/licenses/LICENSE-2.0">Apache License 2.0</a>.</p>
-<p><img class="left" src="images/privacy_browser.png" height="32" width="32">
- <img class="left" src="images/privacy_browser_free.png" height="32" width="32">
- <img class="left" src="images/warning.png" height="32" width="32">
- <img class="left" src="images/javascript_enabled.png" height="32" width="32">
+<p><img class="left" src="images/privacy_browser.png">
+ <img class="left" src="images/privacy_browser_free.png">
+ <img class="left" src="images/warning.png">
+ <img class="left" src="images/javascript_enabled.png">
are derived from ic_security and ic_language. Modifications were made by Soren Stoutner in 2016.</p>
-<p>The following icons are unchanged except for layout information like color and size. Some of them have been renamed to match their use in the code. The original icons and names are shown below.</p>
-
-<p><img class="icon" src="images/ic_language.png"> ic_language.</p>
+<p>The following icons are unchanged except for layout information like color and size. Some of them have been renamed to match their use in the code. The original icons and names are shown below.</p>
-<p><img class="icon" src="images/ic_home.png"> ic_home.</p>
+<p><img class="icon" src="images/ic_add.png"> ic_add.</p>
<p><img class="icon" src="images/ic_arrow_back.png"> ic_arrow_back.</p>
<p><img class="icon" src="images/ic_bookmark_border.png"> ic_bookmark_border.</p>
+<p><img class="icon" src="images/ic_create_new_folder.png"> ic_create_new_folder.</p>
+
+<p><img class="icon" src="images/ic_delete.png"> ic_download.</p>
+
+<p><img class="icon" src="images/ic_edit.png"> ic_edit.</p>
+
+<p><img class="icon" src="images/ic_exit_to_app.png"> ic_exit_to_app.</p>
+
<p><img class="icon" src="images/ic_file_download.png"> ic_file_download.</p>
-<p><img class="icon" src="images/ic_settings.png"> ic_settings.</p>
+<p><img class="icon" src="images/ic_folder.png"> ic_folder.</p>
+
+<p><img class="icon" src="images/ic_folder_special.png"> ic_folder_special.</p>
+
+<p><img class="icon" src="images/ic_home.png"> ic_home.</p>
<p><img class="icon" src="images/ic_import_contacts.png"> ic_import_contacts.</p>
<p><img class="icon" src="images/ic_info_outline.png"> ic_info_outline.</p>
-<p><img class="icon" src="images/ic_exit_to_app.png"> ic_exit_to_app.</p>
-
-<p><img class="icon" src="images/ic_add.png"> ic_add.</p>
+<p><img class="icon" src="images/ic_language.png"> ic_language.</p>
-<p><img class="icon" src="images/ic_vertical_align_top.png"> ic_vertical_align_top</p>
+<p><img class="icon" src="images/ic_select_all.png"> ic_select_all.</p>
-<p><img class="icon" src="images/ic_vertical_align_bottom.png"> ic_vertical_align_bottom</p>
+<p><img class="icon" src="images/ic_settings.png"> ic_settings.</p>
-<p><img class="icon" src="images/ic_folder.png"> ic_folder</p>
+<p><img class="icon" src="images/ic_subtitles.png"> ic_subtitles.</p>
-<p><img class="icon" src="images/ic_create_new_folder.png"> ic_create_new_folder</p>
+<p><img class="icon" src="images/ic_vertical_align_bottom.png"> ic_vertical_align_bottom.</p>
-<p><img class="icon" src="images/ic_folder_special.png"> ic_folder_special</p>
+<p><img class="icon" src="images/ic_vertical_align_top.png"> ic_vertical_align_top.</p>
-<p><img class="icon" src="images/ic_edit.png"> ic_edit.</p>
+<p><img class="icon" src="images/ic_web.png"> ic_web.</p>
-<p><img class="icon" src="images/ic_delete.png"> ic_download.</p>
+<br/>
-<p><img class="icon" src="images/ic_select_all.png"> ic_select_all</p>
+<p><img class="left" src="images/cookie.png"> cookie was created by Google.
+ It is released under the <a href ="https://www.apache.org/licenses/LICENSE-2.0">Apache License 2.0</a>
+ and can be downloaded from <a href="https://materialdesignicons.com/icon/cookie">Material Design Icons</a>.</p>
<hr/>
<h3>GNU General Public License</h3>
// `sslErrorHandler` is used in `onCreate()`, `onSslErrorCancel()`, and `onSslErrorProceed`.
private SslErrorHandler sslErrorHandler;
+ // `sharedPreferences` is used in `onCreate()` and `onCreateOptionsMenu()`.
+ SharedPreferences sharedPreferences;
+
@Override
// Remove Android Studio's warning about the dangers of using SetJavaScriptEnabled. The whole premise of Privacy Browser is built around an understanding of these dangers.
@SuppressLint("SetJavaScriptEnabled")
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
// Get the shared preference values.
- SharedPreferences savedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
+ sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
// Set JavaScript initial status. The default value is false.
- javaScriptEnabled = savedPreferences.getBoolean("javascript_enabled", false);
+ javaScriptEnabled = sharedPreferences.getBoolean("javascript_enabled", false);
mainWebView.getSettings().setJavaScriptEnabled(javaScriptEnabled);
// Initialize cookieManager.
cookieManager = CookieManager.getInstance();
// Set cookies initial status. The default value is false.
- firstPartyCookiesEnabled = savedPreferences.getBoolean("first_party_cookies_enabled", false);
+ firstPartyCookiesEnabled = sharedPreferences.getBoolean("first_party_cookies_enabled", false);
cookieManager.setAcceptCookie(firstPartyCookiesEnabled);
// Set third-party cookies initial status if API >= 21. The default value is false.
if (Build.VERSION.SDK_INT >= 21) {
- thirdPartyCookiesEnabled = savedPreferences.getBoolean("third_party_cookies_enabled", false);
+ thirdPartyCookiesEnabled = sharedPreferences.getBoolean("third_party_cookies_enabled", false);
cookieManager.setAcceptThirdPartyCookies(mainWebView, thirdPartyCookiesEnabled);
}
// Set DOM storage initial status. The default value is false.
- domStorageEnabled = savedPreferences.getBoolean("dom_storage_enabled", false);
+ domStorageEnabled = sharedPreferences.getBoolean("dom_storage_enabled", false);
mainWebView.getSettings().setDomStorageEnabled(domStorageEnabled);
// Set the saved form data initial status. The default is false.
- saveFormDataEnabled = savedPreferences.getBoolean("save_form_data_enabled", false);
+ saveFormDataEnabled = sharedPreferences.getBoolean("save_form_data_enabled", false);
mainWebView.getSettings().setSaveFormData(saveFormDataEnabled);
// Set the user agent initial status.
- String userAgentString = savedPreferences.getString("user_agent", "Default user agent");
+ String userAgentString = sharedPreferences.getString("user_agent", "Default user agent");
switch (userAgentString) {
case "Default user agent":
// Do nothing.
case "Custom user agent":
// Set the custom user agent on mainWebView, The default is "PrivacyBrowser/1.0".
- mainWebView.getSettings().setUserAgentString(savedPreferences.getString("custom_user_agent", "PrivacyBrowser/1.0"));
+ mainWebView.getSettings().setUserAgentString(sharedPreferences.getString("custom_user_agent", "PrivacyBrowser/1.0"));
break;
default:
// Set the selected user agent on mainWebView. The default is "PrivacyBrowser/1.0".
- mainWebView.getSettings().setUserAgentString(savedPreferences.getString("user_agent", "PrivacyBrowser/1.0"));
+ mainWebView.getSettings().setUserAgentString(sharedPreferences.getString("user_agent", "PrivacyBrowser/1.0"));
break;
}
// Set the initial string for JavaScript disabled search.
- if (savedPreferences.getString("javascript_disabled_search", "https://duckduckgo.com/html/?q=").equals("Custom URL")) {
+ if (sharedPreferences.getString("javascript_disabled_search", "https://duckduckgo.com/html/?q=").equals("Custom URL")) {
// Get the custom URL string. The default is "".
- javaScriptDisabledSearchURL = savedPreferences.getString("javascript_disabled_search_custom_url", "");
+ javaScriptDisabledSearchURL = sharedPreferences.getString("javascript_disabled_search_custom_url", "");
} else {
// Use the string from javascript_disabled_search.
- javaScriptDisabledSearchURL = savedPreferences.getString("javascript_disabled_search", "https://duckduckgo.com/html/?q=");
+ javaScriptDisabledSearchURL = sharedPreferences.getString("javascript_disabled_search", "https://duckduckgo.com/html/?q=");
}
// Set the initial string for JavaScript enabled search.
- if (savedPreferences.getString("javascript_enabled_search", "https://duckduckgo.com/?q=").equals("Custom URL")) {
+ if (sharedPreferences.getString("javascript_enabled_search", "https://duckduckgo.com/?q=").equals("Custom URL")) {
// Get the custom URL string. The default is "".
- javaScriptEnabledSearchURL = savedPreferences.getString("javascript_enabled_search_custom_url", "");
+ javaScriptEnabledSearchURL = sharedPreferences.getString("javascript_enabled_search_custom_url", "");
} else {
// Use the string from javascript_enabled_search.
- javaScriptEnabledSearchURL = savedPreferences.getString("javascript_enabled_search", "https://duckduckgo.com/?q=");
+ javaScriptEnabledSearchURL = sharedPreferences.getString("javascript_enabled_search", "https://duckduckgo.com/?q=");
}
// Set the homepage initial status. The default value is `https://www.duckduckgo.com`.
- homepage = savedPreferences.getString("homepage", "https://www.duckduckgo.com");
+ homepage = sharedPreferences.getString("homepage", "https://www.duckduckgo.com");
// Set the font size initial status. the default value is `100`.
- String defaultFontSizeString = savedPreferences.getString("default_font_size", "100");
+ String defaultFontSizeString = sharedPreferences.getString("default_font_size", "100");
mainWebView.getSettings().setTextZoom(Integer.valueOf(defaultFontSizeString));
// Set the swipe to refresh initial status. The default is `true`.
- swipeToRefreshEnabled = savedPreferences.getBoolean("swipe_to_refresh_enabled", true);
+ swipeToRefreshEnabled = sharedPreferences.getBoolean("swipe_to_refresh_enabled", true);
swipeToRefresh.setEnabled(swipeToRefreshEnabled);
// Set the initial status of the privacy icon.
updatePrivacyIcons(privacyBrowserActivity);
- // Get MenuItems for checkable menu items.
+ // Get handles for the menu items.
MenuItem toggleFirstPartyCookies = menu.findItem(R.id.toggleFirstPartyCookies);
MenuItem toggleThirdPartyCookies = menu.findItem(R.id.toggleThirdPartyCookies);
MenuItem toggleDomStorage = menu.findItem(R.id.toggleDomStorage);
toggleDomStorage.setChecked(domStorageEnabled);
toggleSaveFormData.setChecked(saveFormDataEnabled);
+ // Set the status of the additional app bar icons. The default is `false`.
+ if (sharedPreferences.getBoolean("display_additional_app_bar_icons", false)) {
+ toggleFirstPartyCookies.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+ toggleThirdPartyCookies.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+ toggleDomStorage.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+ toggleSaveFormData.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+ } else { //Do not display the additional icons.
+ toggleFirstPartyCookies.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
+ toggleThirdPartyCookies.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
+ toggleDomStorage.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
+ toggleSaveFormData.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
+ }
+
return true;
}
-<!-- cookies_critical.xml was created by Google and downloaded from https://materialdesignicons.com/icon/cookie. -->
+<!-- cookies_critical.xml was created by Google and downloaded from https://materialdesignicons.com/icon/cookie.
+ It is released under the Apache License 2.0. -->
<vector
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toggleJavaScript"
android:title="@string/javascript"
android:orderInCategory="10"
- app:showAsAction="always" />
+ app:showAsAction="ifRoom" />
<item
android:id="@+id/toggleFirstPartyCookies"
android:title="@string/first_party_cookies"
android:orderInCategory="20"
android:checkable="true"
- app:showAsAction="ifRoom" />
+ app:showAsAction="never" />
<item
android:id="@+id/toggleThirdPartyCookies"
android:title="@string/third_party_cookies"
android:orderInCategory="30"
android:checkable="true"
- app:showAsAction="ifRoom" />
+ app:showAsAction="never" />
<item
android:id="@+id/toggleDomStorage"
android:title="@string/dom_storage"
android:orderInCategory="40"
android:checkable="true"
- app:showAsAction="ifRoom" />
+ app:showAsAction="never" />
<item
android:id="@+id/toggleSaveFormData"
android:title="@string/form_data"
android:orderInCategory="50"
android:checkable="true"
- app:showAsAction="ifRoom" />
+ app:showAsAction="never" />
<item
android:id="@+id/clearCookies"
<string name="favorite_icon">Website-Icon</string>
<string name="url_or_search_terms">URL oder Suchbegriff</string>
- <!-- Main WebView Navigation Drawer. -->
+ <!-- View SSL Certificate. -->
+ <string name="view_ssl_certificate">SSL-Zertifikat ansehen</string>
+ <string name="unencrypted_website">Unverschlüsselte Website</string>
+ <string name="no_ssl_certificate">Die Kommunikation mit dieser Website wird nicht durch ein SSL-Zertifikat verschlüsselt.</string>
+ <string name="ssl_certificate">SSL-Zertifikat</string>
+ <string name="close">Schließen</string>
+ <string name="issued_to">Ausgestellt für</string>
+ <string name="issued_by">Ausgestellt von</string>
+ <string name="common_name">Allgemeiner Name (CN):</string>
+ <string name="organization">Organisation (O):</string>
+ <string name="organizational_unit">Organisierende Einheit (OU):</string>
+ <string name="valid_dates">Gültige Daten</string>
+ <string name="start_date">Startdatum:</string>
+ <string name="end_date">Enddatum:</string>
+
+ <!-- SSL Certificate Error. -->
+ <string name="ssl_certificate_error">SSL-Zertifikatsfehler</string>
+ <string name="proceed">Fortfahren</string>
+ <string name="future_certificate">Das Startdatum des SSL-Zertifikats liegt in der Zukunft</string>
+ <string name="expired_certificate">ŽDas Zertifikat ist abgelaufen</string>
+ <string name="cn_mismatch">Der allgemeine Name entspricht nicht dem Hostnamen</string>
+ <string name="untrusted">Der Zertifikatsbehörde wird nicht vertraut</string>
+ <string name="invalid_date">Das Datum des Zertifikats ist ungültig</string>
+ <string name="invalid_certificate">Das Zertifikat ist ungültig</string>
+ <string name="url">URL</string>
+ <string name="url_label">URL:</string>
+
+ <!-- Main `WebView` Navigation Drawer. -->
<string name="navigation_drawer">Navigationspanel</string>
<string name="navigation">Navigation</string>
<string name="home">Startseite</string>
<string name="about">Infos</string>
<string name="clear_and_exit">Leeren und verlassen</string>
- <!-- Main WebView Options Menu. -->
+ <!-- Main `WebView` Options Menu. -->
<string name="javascript">JavaScript</string>
<string name="first_party_cookies">Erstanbieter-Cookies</string>
<string name="third_party_cookies">Drittanbieter-Cookies</string>
<string name="clear_cookies">Cookies leeren</string>
<string name="clear_dom_storage">DOM-Speicher leeren</string>
<string name="clear_form_data">Formulardaten leeren</string>
+ <string name="font_size">Schriftgröße</string>
+ <string name="fifty_percent">50%</string>
+ <string name="seventy_five_percent">75%</string>
+ <string name="one_hundred_percent">100%</string>
+ <string name="one_hundred_twenty_five_percent">125%</string>
+ <string name="one_hundred_fifty_percent">150%</string>
+ <string name="one_hundred_seventy_five_percent">175%</string>
+ <string name="two_hundred_percent">200%</string>
<string name="share">Teilen</string>
<string name="add_to_home_screen">Zur Startseite hinzufügen</string>
<string name="refresh">Aktualisieren</string>
<string name="custom_url">Eigene URL</string>
<string name="general">Allgemein</string>
<string name="homepage_preference">Startseite</string>
+ <string name="default_font_size">Standard-Schriftgröße</string>
+ <string-array name="default_font_size_entries">
+ <item>50%</item>
+ <item>75%</item>
+ <item>100%</item>
+ <item>125%</item>
+ <item>150%</item>
+ <item>175%</item>
+ <item>200%</item>
+ </string-array>
<string name="swipe_to_refresh_enabled">Herunterziehen zum Aktualisieren</string>
<string name="swipe_to_refresh_enabled_summary">Einige Websites funktionieren nicht, wenn "Herunterziehen zum Aktualisieren" eingeschaltet ist.</string>
<string name="custom_url">Custom URL</string>
<string name="general">General</string>
<string name="homepage_preference">Homepage</string>
- <string name="default_font_size">Default Font Size</string>
+ <string name="default_font_size">Default font size</string>
<string-array name="default_font_size_entries">
<item>50%</item>
<item>75%</item>
</string-array>
<string name="swipe_to_refresh_enabled">Swipe to refresh</string>
<string name="swipe_to_refresh_enabled_summary">Some websites don\'t work well if swipe to refresh is enabled.</string>
+ <string name="display_additional_app_bar_icons">Display additional app bar icons</string>
+ <string name="display_additional_app_bar_icons_summary">Display icons for toggling cookies, DOM storage, and form data in the app bar if there is room.</string>
<!-- About Activity. -->
<string name="about_privacy_browser">About Privacy Browser</string>
android:title="@string/swipe_to_refresh_enabled"
android:summary="@string/swipe_to_refresh_enabled_summary"
android:defaultValue="true" />
+
+ <SwitchPreference
+ android:key="display_additional_app_bar_icons"
+ android:title="@string/display_additional_app_bar_icons"
+ android:summary="@string/display_additional_app_bar_icons_summary"
+ android:defaultValue="false" />
</PreferenceCategory>
</PreferenceScreen>
\ No newline at end of file