Blog: http://www.ddcs.re
email: exportit.ddcs@gmail.com
Ev heye armanca wan a sereke ji bo destûra bikaranîna daneyên te located in telefonê Android an jî tablet xwe, li ser cîhazên din jî wekî sîstema Android din an PC we, an ku di medyayê de û minasib li ser set TV te ye. Ji bo ku, ew zimên di protokolan de standard herî, UPnP û Http.
îxrackirina ew bi rexê xwe Server û a Client (du îkonên li ser Sermaseya te Android). pêşkêşkara ava lîsteya pelên video, audio û wêneyê, û herweha pdf û files eBook ew dikare di sîstema Android xwe bibînin. Di lîsteyê de ji van re pelên bi taybetmendiyên xwe bi di bîra danîn û bi riya a Directory Service UPnP û an server HTTP weşandin.
Pelên ku bi tenê li çar categories belavkirin: pelên video (mp4, webM û 3gpp) li audio files (mp3, ogg û M4A), pelên image de (jpeg, gif an png), û ebooks (pdf, prc, epub, pdf, mobi û DjVuName).
li server is dîzaynkirin ne ji bo birêvebirina hezaran dosyayên, çend sed dişibe tiştên ku em di normalê de li ser telefonê an jî tablet.
Berî her tiştî, çawa ku dest bi server û li bendê ji bo dawîya pêvajoya destpêkêyên. Heger tu li ser Wifi an li ser tevna Mobile ne tu statuya û URl 'yên ku ji bo ew hewl jî. Fort piraniya wan kesên ku pêşkêşkarê nelê ji tora Mobile e. Tu pêşî dikare kontrol bike ka çi server te belavkirina bi a Rojihalata geroka webê ya herêmî URL piştî derketin derve window pêşkêşkarê (pêşkêşkarê rast veki li background). Ev jî mimkun e bi navnîşana NAME IPv6 bo têketina rûpel IP ji geroka te bi URL wek "http://[::1]:8192".
Wekî gava duyemîn de, tu dikarî mîhengên pêşkêşkara ji bo guhertina servera xwe û belkî ji remzên font size ji bo zimanê û amûrê xwe bi kar tînin.
Gava li pêş pêk tê di pênasekirina navê bikarhêner û şîfreya wek birêveberê bi gihîştina hemû categories.
Dema ku ew dixebite, tu dikarî navên user zêdetir bi access to categories taybet define.
Û di dawiyê de hûn dikarin "şandinê de port", gava ku tu li ser Wifi mala xwe ve girêdayî be, ji Internetê define. Eger tu bi bikaranîna sepanê full bi piştgiriya UPnP, tu tenê ji bo danasîna navekî ne port null di veavakirina û li ser konsolê jî, eger ew kar dike. Bi sepanê free we ku navrûyê bi destan router ADSL xwe. Gava ku ew xuya dike baş tu dikarî ji malê bi ti web browser we biceribîne, bikaranîna proxy Web giştî azad bi piştgiriya Javascript.
HTTPS tevî ku piştgirî, merheleyê ne ji bo ya herî baş ji bo bikarhênerên normal ji ber tevliheviya bi kar ew bi smartphones û performansa belengaz danberhev bi HTTP sade.
Dema şandinê de port û authentication bi kar, hûn dikarin "club" vebijêrka be bi hêsanî li ser Internetê bi kar tînin, bi weşandina agahiyên xwe li ser www.ddcs.re. Ji bo ceribandinê server xwe bi xwe pêwîstî bi bikaranîna a proxy Web ber xwe bide Adresa IP'yê Link te ye ji tora Wifi xwe bigihînin ne. Ev destûra vebijêrk ji bo belavkirina a URL guhertina bi navnîşana IP û hejmara portê, tenê bibî, li ser xeta server mafê defined by name servera xwe, a hevokê description biçûk û yek ji image te wek icon.
Piştgiriya UPnP ji aliyê Teleal Cling 1.0.5 (Copyright (C) 2010 Teleal GmbH, Swîsre), û Server Http ya li jor li ser ava Versiyon ji NanoHTTPD 1.25, Copyright 2001,2005-2012 Jarno Elonen û 2010 Konstantinos Togias. Bi vî awayî vê sepanê dihewîne software LGPL. Herdu versions de hate in, code dayîkê ne. Di pirtûkxaneyê de Teleal qewîn tenê yek file jar ava bi çend guherandinan pêwîst ku ji aliyê sepanê ji clingcore, clingsupport (1.0.5) e û hevbeş teleal (1.0.14) files jar ... NanoHttpd de hate guherandin ji bo piştgiriya rêbaza "HEAD", ji bo lê zêde bike mailadres DLNA HTTP, request logging û ji bo ne an home page destpêkê. source code de derbasdar wek ku tê bikaranîn e.
Hemû pêkenokan bikaranîn di comments dîzaynkirin û ji aliyê Enrico Gollnow (Erni) bûn. Serdana malpera xwe ji bo dîtina more info li ser wî û pêkenokên xwe (http://www.gomotes.com).
Rûtin encryption şîfreya zimên pirtûkxaneya jsbn Tom Wu da (Javascript BigInteger û RSA) li aliyê geroka xwe ya webê û pirtûkxaneya java SpongyCastle li ser aliyê server.
Ev pêkanîna JmDNS, pêkanîna pêkanîna piraniya DNS-ya Java ya ji bo lêgerîn û qeydkirina xizmetê bikar tînin. Ev pirtûkxaneyê bi protokola Bonjour yê Apple re tevlihevkirî ye. Ji kerema xwe re ji bo Arthur van Hoff, Rick Blair û Kai Kreuzer, pirtûkxaneya çêtirîn e ku ji hêla Apache License, Versiyon 2.0 ve hatiye lîsans.
Vebijêrk ev lîstika lîstikvanek HTML5 tê bikaranîn ku navê Julien 'delphiki' Villetorte gdelphiki@gmail.com ji hêla MIT-lîsans ve çêkiriye, ji kerema xwe ji bo karê vê karê û destûra wê bikar tîne.
Em PDF.JS bikar tînin da ku pelên PDF-ê bi navgîniya WebView nîşan bidin. Ev projeya Çavkaniya Vekirî bi lîsansek Apache Version 2 ve girêdayî ye. PDF.js (https://mozilla.github.io/pdf.js/) temaşekerek Forma Belgeya Portable (PDF) ye ku bi HTML5-ê hatî çêkirin. PDF.js ji hêla civakê ve tê rêve kirin û ji hêla Mozilla ve tê piştgirî kirin.
Pakêta epubjs-reader (https://github.com/futurepress/epubjs-reader) ji bo epub-ê Pirtûkan tê bikar anîn û pirtûk di WebView de têne xuyang kirin. Ev nermalava bi lîsansek MIT heye.
Em niha Acme4J wekî Xerîdar Java (https://shredzone.org) ji bo protokola _Automatic Certificate Management Environment_ (ACME) wekî ku di RFC 8555 de hatî destnîşan kirin (https://tools.ietf.org/html/rfc8555) bikar tînin ). ACME protokolek e ku rayedarek sertîfîkayê (CA) û serlêder dikare bikar bîne da ku pêvajoya verastkirin û derxistina sertîfîkayê otomatîk bike. Ew pêkanînek çavkaniyek vekirî ya serbixwe ye ku ne girêdayî ye û ne ji hêla Let's Encrypt ve hatî pejirandin.
Acme4J pêdivî bi pirtûkxaneya Jose4j heye (https://bitbucket.org/b_c/jose4j/wiki/Home) ku cîbicîkirina çavkaniya vekirî ya JSON Web Token (JWT) û pakêta taybetmendiya JOSE ya bihêz û hêsan e.
Du pêkhatên sereke ne ku pêşkêşkarê û bi muwekîlê, û, piştî sazkirinê, tu du îkonên li ser maseya xwe.
pêşkêşkara dest bi xizmeta running dirêj e ku di rastiyê de, di server Media rast bo UPnP û HTTP xizmetên. Ev xizmet veki li paş, just a icon notification biçûk li ser darikê Android danîn. An subtask girîng yên server, teşegirtina e. By standard bi îxracata server ji hemû daneyên te files li ser torê Wifi herêmî. Tu dikarî hilbijêre / hilnebijêre files bi rêya veavakirina.
daneyên pêvajoyên bi muwekîlê belavkirin ji aliyê pêşkêşkarên UPnP li ser (Wifi) tora herêmî dîtin. Ev heye wek subtasks a Player Media ji bo nîşandana mp4, webM an 3gpp videos û guhdariya mp3, ogg an audio files M4A, a paceya diyaloga Webview ji bo berpêşkirin photos. Di gel wan, xizmeta background dikare ji bo daxistina pelên ji pêşkêşkar dest pê kir. Dema ku li ber server dest pê kir, bi muwekîlê destpêkirin xizmeta UPnP di heman demê de, bêyî ku dabeşkirina files welat, a sort ji pêşkêşkarê vala. Ev xizmet pêwîst e ji bo gihîştina pêşkêşkarên din UPnP.
Mîhengên pergala in, hingê Mîhengên pêşketî, tu dikarî rêveberê battery bibînin. Ji bo ku server li ser xwe û bi bez mayînde, divê tu performance ji bo plana hêza hilbijêre, û çalakkirin û ev app di apps parastin û li apps hêza-lezgîn.
Eger îmkan hebe, divê tu WiFi xwe çalak dema ku amûrê xwe di xew de ye û li server direve, û ji bilî, eger amûrê xwe heye an sergoyê DLNA lihevhatî, divê hûn ji bo "Cîhazên li nêzî" li mîhengên pergala va ne.
pêşkêşkara pêwîstî bi sîstema file û ji bo xwendina settings telefonê de ji bo naskirina Guherandinên dewletê wek li ser Wifi an eger veguhestina welat çalak e, eger ji bo tora mobîl ve girêdayî ye. Bijarteye pêşkêşkarê dikarin SMS dema ku bi navnîşana IP ya Link (vebijêrk di teşegirtina) û Koda welat ji aliyê Access_Coarse_Location guhertin bişînim, (Ne bi location vebir tenê Koda welat du name). bernameya bi muwekîlê zimên destûra bo nivîsandina ji bo veşartinê ji derve ji bo rizgarkirina files daxistin, û destûra qeydên ji bo nîşandana curves dema ku guhdariya music.
Weşandina pelên li ser înternetê bi server ew îxrackirina te, tu ji bo veavakirina ku pêşkêşkarê HTTP port aliasing li router ADSL xwe. protokola UPnP PDFî legellda nîye li ser înternetê, tenê HTTP. Hejmara portê ya standard e 8192 (tu dikarî bi rêya veavakirina xeyrandin), û bendereke alê ji bo tora civakî de, divê bê dayîn li ser router ADSL têkildar de bi navnîşana Wifi IP ya server îxrackirina ew. Hejmara default port derve de veavakirina 0 e, lê tu danîn tiştê ku tu wek 8192 an 80. The URL ji bo bikaranîna gihîştina server xwe dixwazin ye, li ser aliyê jor yên window server dayîn.
Pêşkêşkara min a Webê bi salan piştgirîya HTTPS-ê bi sertîfîkayên xwe-îmzakirî dikir, lê her çend ew kar dike, bi vî rengî pirsgirêk û peyamên xeletiyê dide. Ji ber vê yekê, min biryar da ku protokola Xweseriya Rêvebiriya Sertîfîkayê Environment_ (ACME) bicîh bikim, da ku sertîfîkayên standard X509 bistînin û biparêzin.
Protokola ACME hin pêdiviyên teknîkî hene, ew ji bo her kesî nayê bikar anîn. Ji bo ku hûn vê protokolê bikar bînin, hûn li ser navnîşana IP-ya xweya derveyî navek DNS-ya sabît hewce ne. Sertîfîkaya X509 divê tenê li ser navek DNS-ê ne li ser navnîşanek IP-yê were danîn.
Ji bo wergirtina sertîfîkayê ji Let's Encrypt, divê hûn serverek HTTP bi jimareya porta standard (80) li ser vê navê DNS-ya derve bikar bînin. Bi serîlêdana min re, hûn dikarin sertîfîkayê tenê li ser serverek ku bi nasnavê porta derve ya HTTP-yê wekî "80" hatî saz kirin, bistînin. Tenê serverek dikare vê nirxê li ser tora Wi-Fi ya malê bikar bîne. Dema ku we sertîfîkayek derbasdar hebe, hûn dikarin porta xwerû ya HTTPS ya "443" tenê li ser yek ji pêşkêşkerên xwe yên Webê ku wekî "porta nasnav" hatî danîn bikar bînin. Lê ji bo ku hûn amûra xwe "root" nekin, divê hûn portên li jor 1024 wekî jimareyên porta "herêmî" bi nimûneya 8080 ji bo HTTP û 8443 ji bo HTTPS bikar bînin.
Pêla "vesazkirinê" tê guheztin da ku piştgirîya navên portê ji bo hem protokolên HTTP û hem jî HTTPS bike, û ji bilî vê jî hûn dikarin navek DNS-ya ku hûn dizanin dixebite, ji bo navnîşana IP-ya xweya derve bidin. Ev nav dê di sertîfîkaya weya X509 de ji bilî navê pêşkêşkarê torê we were destnîşan kirin heke we yek hebe. Sertîfîka bixweber li ser pêşkêşkerên din ên export-it ku li ser heman tora Wi-Fi-yê dixebitin tê belav kirin, destûr dide ku hûn HTTPS li ser Înternetê bikar bînin lê bi nirxên din ên navên portê re.