Блог: http://www.ddcs.re/ru
по электронной почте: exportit.ddcs@gmail.com
Она имеет как главная цель, чтобы разрешить использование ваших данных, расположенных в вашем телефоне или планшете, на других устройствах, таких как другой Android системы или ПК, или если носитель совместим на экране телевизора. Для этого он использует самые стандартные протоколы, UPnP и HTTP.
экспорт реализует сервером и клиентом (два иконки на рабочем столе Android). Сервер создать список видео, аудио и графических файлов, и, кроме того PDF-и электронных книг файлы он может найти в вашем Android системы. Список этих файлов с их характеристиками установлены в памяти и опубликованы через UPnP Directory Service и HTTP-сервер.
Файлы распределяются только в четырех категориях: видео файлы (mp4, WebM и 3GPP) аудиофайлы (MP3, OGG и M4A), файлы изображений (JPEG, GIF или PNG) и электронных книг (PDF, PRC, EPUB, PDB, Mobi и DjVu).
Сервер не предназначена для управления тысячи файлов, несколько сотен выглядит так, как у нас обычно на телефон или планшет.
Прежде всего, просто запустить сервер и дождаться окончания процесса инициализации. Если вы находитесь на Wi-Fi или по мобильной сети можно проверить состояние и URL-адреса, чтобы попробовать. Форт большинство людей недоступности сервера от сети мобильной связи. Вы можете сначала проверить, что ваш сервер распространении с веб-браузера, указывая на местный URL, пройдя в окно сервера (реальный сервер работает в фоновом режиме). Можно также использовать адрес обратной связи IPv6 для доступа к странице HTML из браузера с URL, как "http://[::1]:8192".
Как втором этапе, вы можете использовать конфигурацию сервера, чтобы изменить имя сервера и, возможно, адаптировать размер шрифта своего устройства.
Следующий шаг заключается в определении имени пользователя и пароля от имени администратора с доступом ко всем категориям.
Когда она работает, вы можете определить дополнительные имена пользователей, имеющих доступ к конкретным категориям.
И, наконец, вы можете определить "перенаправление портов", когда вы подключены на вашем домашнем Wi-Fi был доступен из Интернета. Если вы используете полную приложения с поддержкой UPnP, нужно всего лишь определить без псевдонима нуль порта в конфигурации и проверьте на консоли, если он работает. С помощью бесплатного приложения вы должны настроить вручную свой ADSL маршрутизатор. Когда она хорошо выглядит вы можете попробовать его из дома с любого веб-браузера у вас есть, с помощью бесплатного общественного веб-прокси с поддержкой Javascript.
HTTPS хотя поддерживается, не выглядит, чтобы быть лучшим для обычных пользователей из-за сложности его использования со смартфонами и бедных представлений по сравнению с простой HTTP.
При переадресации портов и аутентификация работает, вы можете использовать опцию "клуб", чтобы быть легко доступны в Интернете, публикуя данные о www.ddcs.re. Чтобы проверить свой собственный сервер требует использования веб-прокси, потому что ваш собственный внешний IP-адрес недоступен из вашей Wi-Fi сети. Данная опция позволяет избежать распределения изменяющегося URL с IP-адресом и номером порта, просто нажав на правой линии сервера, определенного имени сервера, небольшое описание предложения и один из вашего изображения в качестве значка.
Поддержка UPnP обеспечивается Teleal Cling 1.0.5 (Copyright (C) 2010 Teleal GmbH, Швейцария), а также Http Сервер построен на вершине NanoHTTPD версии 1.25, Copyright 2001,2005-2012 Ярно Elonen и 2010 Константинос Togias. Таким образом, эта заявка содержит LGPL программного обеспечения. Оба модифицированные версии, а не машинный код. Библиотека TelealCling только один кувшин файл построен с некоторыми изменениями, требуемых от указанного cling-core, cling-support (1.0.5) и teleal-common (1.0.14) JAR-файлов ... NanoHttpd был изменен для поддержки метода "HEAD", чтобы добавить DLNA HTTP заголовки, ведение журналов запросов и обеспечить начальную домашнюю страницу. Исходный код доступен как исполняемый файл.
Все смайлики, используемые в комментариях были разработаны и сделаны Энрико Gollnow (Эрни). Посетите его сайт, чтобы узнать более подробную информацию о нем и его смайликов (http://www.gomotes.com).
Схема шифрования пароля используется jsbn библиотеку Тома Ву (JavaScript BigInteger и RSA) на стороне браузера веб-и Java библиотеки SpongyCastle на стороне сервера.
Это приложение использует JmDNS, реализацию многолистового DNS в Java для обнаружения и регистрации сервисов. Эта библиотека полностью совместима с протоколом Bonjour от Apple. Я благодарю Артура ван Хоффа, Рика Блэра и Кая Крейзера за эту эффективную библиотеку, лицензированную по лицензии Apache версии 2.0.
Это приложение использует видеопроигрыватель HTML5 под названием Playr, разработанный Julien 'delphiki' Villetorte gdelphiki@gmail.com в соответствии с лицензией MIT, все мои благодарности за эту прекрасную работу и разрешение на ее использование.
Мы используем PDF.JS для отображения PDF-файлов через WebView. На этот проект с открытым исходным кодом распространяется лицензия Apache версии 2. PDF.js (https://mozilla.github.io/pdf.js/) — это средство просмотра Portable Document Format (PDF), созданное с использованием HTML5. PDF.js управляется сообществом и поддерживается Mozilla.
Пакет epubjs-reader (https://github.com/futurepress/epubjs-reader) используется для электронных книг epub, и книги отображаются в WebView. Это программное обеспечение доступно по лицензии MIT.
Теперь мы используем Acme4J в качестве Java-клиента (https://shredzone.org) для протокола _Automatic Certificate Management Environment_ (ACME), как указано в RFC 8555 (https://tools.ietf.org/html/rfc8555). ). ACME — это протокол, который центр сертификации (ЦС) и заявитель могут использовать для автоматизации процесса проверки и выдачи сертификата. Это независимая реализация с открытым исходным кодом, которая не связана и не одобрена Let's Encrypt.
Acme4J нужна библиотека Jose4j (https://bitbucket.org/b_c/jose4j/wiki/Home), которая представляет собой надежную и простую в использовании реализацию JSON Web Token (JWT) с открытым исходным кодом и набор спецификаций JOSE.
Два основных компонента являются сервер и клиент, и, после установки, у вас есть две иконки на рабочем столе.
Сервер начинает длинный запущенный сервис, который является на самом деле, реальный сервер Медиа предоставления UPnP и HTTP услуги. Данная услуга работает в фоновом режиме, просто маленький значок уведомления устанавливается на Android задач. Важным подзадача сервера, конфигурация. По умолчанию сервер экспортирует все свои файлы данных в локальной сети Wi-Fi. Вы можете выбрать / отменить выбор файлов через конфигурацию.
Данные клиентские процессы распространяемые UPnP серверов, имеющихся в локальной сети (Wi-Fi). Она имеет как подзадачи медиаплеер для показа mp4, WebM или 3GPP видео и слушать MP3, OGG или M4A аудио файлов, в диалоговом окне Webview для отображения фотографий. Кроме того, фоновый сервис может быть запущен для скачивания файлов с сервера. При запуске, прежде чем сервер, клиент инициализировать службу UPnP, но без распространения файлов данных, своего рода пустой сервер. Эта услуга необходима, чтобы получить доступ к другие серверы UPnP.
В настройках системы, то дополнительные настройки, вы можете найти менеджера батареи. Чтобы сохранить сервер и работает на постоянной основе, вы должны выбрать производительность для схемы управления питанием, и активировать это приложение в защищенных приложениях и в энергоемких приложений.
Если это возможно вы должны держать свой WiFi активным, когда устройство находится в спящем режиме и работает сервер, а кроме того, если ваше устройство имеет встроенный стек DLNA, вы не должны искать "рядом устройств" в системных настройках.
сервер требует доступа к файловой системе и считывать настройки телефона для обнаружения изменений состояния как на Wi-Fi или если передача данных активируется при подключении к сети мобильной связи. При желании сервер может отправить SMS, если внешний IP-адрес изменяется (опция в конфигурации) и код страны по ACCESS_COARSE_LOCATION, (А не точное местоположение только код страны две буквы). клиентская программа использует разрешение на запись на внешнее устройство хранения для сохранения загруженных файлов, а также записывать аудио разрешение для показа кривых при прослушивании музыки.
Для публикации файлов в Интернете с экспорт сервере, вы должны настроить порт сглаживание HTTP сервера в вашей ADSL маршрутизатор. Протокол UPnP не размещены в Интернете, только HTTP. Номер порта по умолчанию 8192 (вы можете изменить его через конфигурацию), и псевдоним порт для сети общего пользования, должны быть предоставлены на ADSL маршрутизатор, связанный с Wi-Fi IP-адрес сервера экспорт. Значение по умолчанию внешний порт в конфигурации 0, но вы можете установить, что вы хотите, как 8192 или 80. URL-адрес, используемый для доступа к вашему серверу, дается на верхней правой части окна управления сервером.
Мой веб-сервер годами поддерживал HTTPS с самозаверяющими сертификатами, но, хотя он работает, этот способ вызывает проблемы и сообщения об ошибках. Именно поэтому я решил внедрить протокол Automatic Certificate Management Environment_ (ACME), чтобы получать и поддерживать стандартные сертификаты X509.
К протоколу ACME предъявляются некоторые технические требования, поэтому его могут использовать не все. Чтобы использовать этот протокол, вам нужно фиксированное DNS-имя на вашем внешнем IP-адресе. Сертификат X509 должен быть установлен только на DNS-имени, а не на IP-адресах.
Чтобы получить сертификат от Let's Encrypt, вам необходимо использовать HTTP-сервер со стандартным номером порта (80) на этом внешнем DNS-имени. С моим приложением вы можете получить сертификат только на сервере, работающем с псевдонимом внешнего порта HTTP, установленным на «80». Только один сервер может использовать это значение в вашей домашней сети Wi-Fi. Если у вас есть действующий сертификат, вы можете использовать порт HTTPS по умолчанию «443» только на одном из ваших веб-серверов, указанном как «псевдоним порта». Но чтобы избежать «рутирования» вашего устройства, вы должны использовать порты выше 1024 в качестве «локальных» номеров портов по образцу 8080 для HTTP и 8443 для HTTPS.
Панель «конфигурация» изменена для поддержки псевдонимов портов для протоколов HTTP и HTTPS, и, кроме того, вы можете указать DNS-имя, которое, как вы знаете, работает, для вашего внешнего IP-адреса. Это имя будет указано в вашем сертификате X509 в дополнение к имени вашего сетевого провайдера, если он у вас есть. Сертификат автоматически распространяется на другие серверы export-it, работающие в той же сети Wi-Fi, что позволяет использовать HTTPS через Интернет, но с другими значениями псевдонимов портов.