exportieren Hilfe

Blog: http://www.ddcs.re/de

E-Mail: exportit.ddcs@gmail.com

exportieren Anwendung

Datenschutz-Bestimmungen

Globale Beschreibung

Es hat als Hauptziel, die Nutzung Ihrer Daten liegt in Ihrem Android-Handy oder Tablet, auf anderen Geräten wie ein anderes Android-System oder dem PC zu ermöglichen, oder wenn die Medien auf Ihrem TV-Gerät kompatibel. Dafür verwendet er die meisten Standardprotokolle, UPnP und HTTP.

exportieren implementiert einen Server und einen Client (zwei Icons auf Ihrem Android-Desktop). Der Server bauen eine Liste der Video-, Audio-und Bilddateien und zusätzlich die PDF-und eBook-Dateien, die es in Ihrem Android-System zu finden. Die Liste dieser Dateien mit ihren Eigenschaften werden im Speicher festgelegt und durch einen UPnP-Verzeichnisdienst und einen HTTP-Server veröffentlicht.

TDie Dateien werden nur in vier Kategorien aufgeteilt: die Video-Dateien (mp4, WebM und 3GPP) die Audio-Dateien (mp3, ogg und m4a), die Bilddateien (jpeg, gif oder png) und ebooks (pdf, prc, epub, pdb, mobi und djvu).

Der Server ist nicht für Tausende von Dateien verwalten, ein paar hundert sieht aus wie das, was wir haben in der Regel auf einem Handy oder Tablet.

Wie fange ich an, es zu benutzen

Zunächst einmal nur den Server zu starten und für das Ende der Initialisierung warten. Wenn Sie auf der Website Wifi oder Mobilfunknetz sind, können Sie den Status überprüfen und die URLs, es zu versuchen. Fort die meisten Menschen ist der Server Zugriff über Mobilfunknetz . Sie können zunächst prüfen, was Ihr Server mit einem Web-Browser zeigt auf der lokalen Verteilung URL nachdem das Serverfenster Ausgehen (die realen Server im Hintergrund ausgeführt wird). Es ist auch möglich, die IPv6-Loopback-Adresse zu verwenden, um die HTML-Seite aus dem Browser für den Zugriff auf mit einer URL wie "http://[::1]:8192".

Als zweiten Schritt können Sie die Serverkonfiguration verwenden, um Ihre Servernamen zu ändern und vielleicht die Schriftgröße auf Ihre Sprache und Ihr Gerät anzupassen.

Der nächste Schritt besteht darin, mit Zugang zu allen Kategorien einen Benutzernamen und ein Passwort als Administrator zu definieren.

Wenn es funktioniert, können Sie zusätzliche Benutzernamen definieren mit den Zugriff auf bestimmte Kategorien.

Und schließlich kann man "Port-Forwarding" definieren, wenn Sie auf Ihrem Home-WiFi verbunden sind aus dem Internet zugänglich sein. Wenn Sie die vollständige Anwendung mit UPnP-Unterstützung verwenden, müssen Sie nur eine nicht null Port-Alias in der Konfiguration zu definieren und auf der Konsole überprüfen, ob es funktioniert. Mit der kostenlosen Anwendung müssen Sie manuell Ihr ADSL-Router konfigurieren. Wenn es gut aussieht können Sie es von zu Hause aus mit einem beliebigen Web-Browser versuchen Sie, einen kostenlosen öffentlichen Web-Proxy mit Javascript-Unterstützung.

HTTPS obwohl unterstützt, sieht nicht das Beste für normale Benutzer zu sein aufgrund der Komplexität mit Smartphones und den schlechten Leistungen zu einfachen HTTP-Vergleich zu verwenden.

Wenn die Portweiterleitung und Authentifizierung arbeiten, können Sie den "Club" Option verwenden, leicht zugänglich im Internet zu sein, Ihre Daten auf www.ddcs.re veröffentlichen. So testen Sie Ihre eigenen Server die Verwendung eines Web-Proxy erfordert, weil Ihre eigene externe IP-Adresse nicht erreichbar von Ihrem WLAN-Netzwerk ist. Mit dieser Option kann die Verteilung einer sich ändernden URL mit IP-Adresse und Port-Nummer zu vermeiden, nur auf der rechten Seite Server-Linie von Ihrem Servernamen als Symbol, eine kleine Beschreibung Satz und einem Ihrer Bild definiert klicken.

Technischer Hintergrund

Die UPnP-Unterstützung wird durch Teleal Cling 1.0.5 (Copyright (C) 2010 Teleal GmbH, Schweiz) zur Verfügung gestellt, und der HTTP-Server auf der Oberseite des NanoHTTPD Version 1.25 Copyright 2001,2005-2012 Jarno Elonen und 2010 Konstantinos Togias gebaut. Damit diese Anwendung enthält LGPL-Software. Beide sind modifizierte Versionen, nicht nativen Code. Die teleal Cling-Bibliothek ist nur eine JAR-Datei mit ein paar Änderungen durch die Anwendung von Cling-Core erforderlich gebaut, cling-common (1.0.5) und teleal-common (1.0.14) JAR-Dateien ... NanoHttpd wurde modifiziert, um den "Kopf"-Methode zu unterstützen, um die DLNA-HTTP-Header, die Anforderungsprotokollierung hinzufügen und eine erste Homepage bieten. Der Quellcode ist wie die ausführbare Datei zur Verfügung.

Alle in den Kommentaren verwendet Emoticons wurden entworfen und von Enrico Gollnow (Erni) gefertigt. Besuchen Sie seine Website, um mehr Informationen über ihn und seine Smileys (http://www.gomotes.com) zu finden.

Die Passwort-Verschlüsselung Routine verwendet Tom Wu jsbn Bibliothek (Javascript BigInteger und RSA) auf Web-Browser Seite und der SpongyCastle Java-Bibliothek auf der Serverseite.

Diese Anwendung verwendet JmDNS, eine Implementierung von Multi-Cast-DNS in Java für die Erkennung und Registrierung von Diensten. Diese Bibliothek ist vollständig kompatibel mit Apples Bonjour-Protokoll. Ich danke Arthur van Hoff, Rick Blair und Kai Kreuzer für diese effiziente Bibliothek, die unter der Apache-Lizenz, Version 2.0 lizenziert ist.

Diese Anwendung verwendet einen HTML5-Videoplayer namens "Playr", der von Julien 'del Vileiorteorte godelphiki@gmail.com unter MIT-Lizenz entwickelt wurde. Mein ganzer Dank für diesen tollen Job und die Erlaubnis, ihn zu verwenden.

Wir verwenden PDF.JS, um PDF-Dateien über eine WebView anzuzeigen. Dieses Open-Source-Projekt unterliegt einer Apache Version 2-Lizenz. PDF.js (https://mozilla.github.io/pdf.js/) ist ein Portable Document Format (PDF)-Viewer, der mit HTML5 erstellt wurde. PDF.js wird von der Community betrieben und von Mozilla unterstützt.

Das epubjs-reader-Paket (https://github.com/futurepress/epubjs-reader) wird für epub-eBooks verwendet und die Bücher werden in einer WebView angezeigt. Diese Software ist über eine MIT-Lizenz erhältlich.

Wir verwenden jetzt Acme4J als Java-Client (https://shredzone.org) für das _Automatic Certificate Management Environment_ (ACME)-Protokoll, wie im RFC 8555 (https://tools.ietf.org/html/rfc8555 ). ACME ist ein Protokoll, das eine Zertifizierungsstelle (CA) und ein Antragsteller verwenden können, um den Prozess der Verifizierung und Zertifikatsausstellung zu automatisieren. Es ist eine unabhängige Open-Source-Implementierung, die nicht mit Let's Encrypt verbunden ist oder von Let's Encrypt unterstützt wird.

Acme4J benötigt die Jose4j-Bibliothek (https://bitbucket.org/b_c/jose4j/wiki/Home), die eine robuste und einfach zu verwendende Open-Source-Implementierung von JSON Web Token (JWT) und der JOSE-Spezifikationssuite ist.

Komponenten

Die beiden Hauptkomponenten sind der Server und der Client, und nach der Installation zwei Icons auf Ihrem Desktop haben Sie.

Der Server startet eine lange Lauf Service, der in der Tat ist die wirkliche Medien-Server, der UPnP und HTTP-Dienste. Dieser Dienst im Hintergrund läuft, nur ein kleines Symbol im Infobereich der Taskleiste auf Android gesetzt. Eine wichtige Teilaufgabe des Servers ist die Konfiguration. Standardmäßig wird der Server exportiert alle Ihre Dateien auf dem lokalen WiFi-Netzwerk. Sie können aktivieren / deaktivieren Dateien durch die Konfiguration.

Die Client-Prozesse Daten von UPnP-Server auf dem lokalen (Wifi) Netzwerk gefunden verteilt. Es hat als Teilaufgaben ein Mediaplayer für die Ansicht mp4, webm-oder 3GPP-Videos und Hören von MP3-, OGG oder M4A Audiodateien, eine Webview Dialogfenster für die Anzeige von Fotos. Darüber hinaus kann ein Hintergrunddienst zum Herunterladen von Dateien vom Server gestartet werden. Nach dem Start, bevor der Server, der Client initialisieren Sie die UPnP-Service, aber ohne die Verteilung von Daten-Dateien, eine Art leere Server. Dieser Service wird benötigt, um Zugang zu erhalten anderen UPnP-Servern.

Berechtigungen und Ressourcen

In Systemeinstellungen , dann erweiterte Einstellungen können Sie den Akku-Manager finden. Um den Server nach oben halten und läuft permanent, sollten Sie die Leistung für den Energiesparplan aus, und aktivieren Sie diese App in geschützten Anwendungen und in energieintensiven Anwendungen.

Wenn dies möglich ist, müssen Sie Ihr WLAN aktiv halten, wenn Ihr Gerät schläft und der Server läuft, und wenn Ihr Gerät über einen integrierten DLNA-Stack verfügt, sollten Sie nicht in den Systemeinstellungen nach "Geräten in der Nähe" suchen.

der Server erfordert den Zugriff auf das Dateisystem und die Telefoneinstellungen zur Erfassung von Zustandsänderungen , wie auf der Website Wifi oder wenn die Datenübertragung zu lesen, ins Mobilfunknetz , wenn angeschlossen aktiviert. Optional kann der Server SMS senden, wenn die externe IP-Adresse (Option in der Konfiguration) und den Ländercode von ACCESS_COARSE_LOCATION geändert wird, (Keine genaue Lage, nur die zwei Buchstaben-Ländercode ). Das Client-Programm verwendet die Erlaubnis auf externe Speicher zum Speichern von heruntergeladenen Dateien und die Aufnahme von Audio-Erlaubnis für die Ansicht Kurven zu schreiben, wenn Sie Musik hören.

Server-Nutzung

Wie Sie das eXportit-Client

Mit Ihren Web-Browser für den Zugriff auf Server eXportit

Verwenden von FFmpeg für die Multicast-Kanalfunktion

Standardkonfigurationen

Die Veröffentlichung im Internet von zu Hause aus Wifi-Netzwerk

Um Dateien im Internet mit Ihrem exportieren Server veröffentlichen, müssen Sie den HTTP-Server-Port-Aliasing in Ihrem DSL-Router zu konfigurieren. UPnP-Protokoll ist nicht im Internet verfügbar, nur HTTP. Die Standard-Port-Nummer ist 8192 (man kann es durch die Konfiguration zu ändern) und ein Alias-Port für das öffentliche Netz, muss auf dem ADSL-Router mit dem Wifi IP-Adresse des Server zugeordnet exportieren gegeben werden. Der Standard externe Portnummer in der Konfiguration ist 0, aber die Sie festlegen können, was Sie wollen wie 8192 oder 80. Die URL zu verwenden, um Ihren Server zuzugreifen, wird oben rechts im Fenster Serversteuer gegeben.

Verwendung von HTTPS über das Internet

Mein Webserver unterstützt seit Jahren HTTPS mit selbstsignierten Zertifikaten, aber obwohl es funktioniert, führt dieser Weg zu Problemen und Fehlermeldungen. Aus diesem Grund habe ich mich entschieden, das Automatic Certificate Management Environment_ (ACME)-Protokoll zu implementieren, um Standard-X509-Zertifikate zu erhalten und zu verwalten.

Das ACME-Protokoll hat einige technische Anforderungen, es ist nicht für jeden nutzbar. Um dieses Protokoll zu verwenden, benötigen Sie einen festen DNS-Namen auf Ihrer externen IP-Adresse. Das X509-Zertifikat darf nur auf einen DNS-Namen gesetzt werden, nicht auf eine IP-Adresse.

Um das Zertifikat von Let's Encrypt zu erhalten, müssen Sie einen HTTP-Server mit der Standardportnummer (80) für diesen externen DNS-Namen verwenden. Mit meiner Anwendung können Sie das Zertifikat nur auf einem Server abrufen, auf dem der externe HTTP-Port-Alias auf "80" eingestellt ist. Nur ein Server kann diesen Wert in Ihrem Wi-Fi-Heimnetzwerk verwenden. Wenn Sie über ein gültiges Zertifikat verfügen, können Sie den HTTPS-Standardport „443“ nur auf einem Ihrer Webserver verwenden, der als „Alias-Port“ festgelegt ist. Aber um zu vermeiden, dass Sie Ihr Gerät "rooten", sollten Sie Ports über 1024 als "lokale" Portnummern verwenden, beispielsweise 8080 für HTTP und 8443 für HTTPS.

Das "Konfigurations"-Fenster wurde geändert, um Port-Aliase für HTTP- und HTTPS-Protokolle zu unterstützen, und zusätzlich können Sie einen DNS-Namen, von dem Sie wissen, dass er funktioniert, für Ihre externe IP-Adresse angeben Dieser Name wird in Ihrem X509-Zertifikat zusätzlich zum Namen Ihres Netzbetreibers definiert, falls Sie einen haben. Das Zertifikat wird automatisch an andere export-it-Server verteilt, die im selben Wi-Fi-Netzwerk laufen, wodurch HTTPS über das Internet verwendet werden kann, jedoch mit anderen Port-Alias-Werten.