Norite greito prisistatymo? Tiesiog žiūrėkite aukščiau esantį vaizdo įrašą!
Praėjusiais metais išleidau programą, pavadintą „ Pafera failų serveris . Tai konsolės programa, parašyta „Rust“ kalba, kurioje veikia žiniatinklio failų tvarkyklė jūsų įrenginiuose, leidžianti lengvai dalytis failais su bet kuo, kuriame yra žiniatinklio naršyklė su patogia skaidrių demonstravimo funkcija, kad būtų rodomos jūsų nuotraukos ir „shiba“ piktogramos. Tai reiškia, kad galite nueiti į vakarėlį ir leisti 200 draugų naršyti naujausias atostogų nuotraukas savo telefonuose savo laiku ir tempu.
Vėliau, kai iš draugų ir atsitiktinių interneto nepažįstamų žmonių atėjo įvairūs pasiūlymai ir naudojimo modeliai, pradėjau pridėti vis daugiau funkcijų. Dabar jis gali sinchronizuoti visus katalogų medžius, perkoduoti medijos failus, atidaryti failus su vietinėmis operacinės sistemos programomis ir automatiškai sinchronizuoti failus visuose įrenginiuose.
Tačiau, kadangi tai yra konsolinė programa, visada buvo viena didelė problema, dėl kurios ji negalėjo būti universaliu sprendimu visuose jūsų įrenginiuose:
Konsolės programos negali veikti „iOS“, tai reiškia, kad „iPhone“ ar „iPad“ įrenginiuose negalite paleisti „Pafera“ failų serverio...
Iki šiol.
Turėjau šiek tiek laisvo laiko per Kalėdų atostogas, kol Juodkalnija šventė šventes, todėl paeksperimentavau su „Flutter/Dart“ parašydamas kelių platformų papildomą programą, kuri leistų lengvai naršyti serveriuose iš telefono. Tokiu būdu mano mažiau į technologijas linkę draugai galėtų tiesiog paspausti du mygtukus ir prisijungti prie mano serverių.
Pakeliui supratau, kad iš tikrųjų galite naudoti „Dart“, kad paleistumėte savo žiniatinklio serverį „iOS“ įrenginiuose, ir pagalvojau...
Ei! Kodėl aš tiesiog neįdiegiu failų serverio „Dart“ programoje!
Taigi po dviejų savaičių programa yra čia.
Dabar našumas yra siaubingai lėtas, palyginti su „Rust“ versija. Rust serveris gali aptarnauti apie 40 000 užklausų per sekundę...
Nors „Dart“ versija gali aptarnauti tik apie 400...
Bet svarbiausia, kad jis veikia...
ir jis įdiegiamas „iPhone“ įrenginiuose!
Dėl PDFx bibliotekos klaidos su naujausiomis „Flutter“ versijomis turėjau nustoti naudoti gražias visų mygtukų piktogramas, nes jos buvo rodomos kaip bjaurios juodos linijos.
Tačiau pagrindinė operacija išlieka ta pati.
Kai visi prisijungs prie to paties „WiFi“ tinklo arba jūsų telefono viešosios interneto prieigos taško, tiesiog spustelėkite programos piktogramą, pasirinkite aplanką, kurį norite bendrinti, ir palieskite „Pradėti serverį“.
Tada spustelėkite QR kodo mygtuką, leiskite savo draugams jį nuskaityti ir tada jie galės su malonumu naršyti aplanką savo telefonuose ir net transliuoti filmus iš jūsų telefono tiesiai į savo telefonus.
Jei jūsų draugas naudoja nešiojamąjį ar stalinį kompiuterį, tai taip pat nėra problema. Tiesiog įveskite URL, rodomą virš QR kodo jų įrenginyje, ir jie galės padaryti tą patį.
Jei nenaudojate „iOS“ ar „Android“, tai taip pat nėra problema. „Flutter Apps“ puikiai veikia OSX, „Windows“ ir „Linux“, todėl gausite tas pačias funkcijas ir dar daugiau, jei savo sistemoje įdiegsite rsync, FFMpeg ir ImageMagick, kad programa būtų naudojama.
Be paprasto failų bendrinimo, yra nemažai papildomų funkcijų, todėl čia pateiksiu trumpą apžvalgą.
Prieglobos serverio pavadinimas rodomas kitiems įrenginiams spustelėjus "Ieškoti kitų serverių". Galite naudoti jį norėdami greitai atskirti vieną įrenginį nuo kito, jei vienu metu bendrinate kelis įrenginius.
Aplankas yra failų sistemos aplankas, kurį iš tikrųjų bendrinate. Galite spustelėti "Naudoti dokumentų aplanką" numatytąjį dokumentuose / bendrinama, arba galite spustelėti "Pasirinkti aplanką" pasirinkti kitą aplanką. Taip pat gali reikėti spustelėti "Naudoti dokumentų aplanką" jei „iOS“ tinkamai neatnaujina programos nustatymų grįždama iš miego režimo.
Naudoti esamą IP automatiškai aptinka dabartinį jūsų įrenginio „WiFi“ IP adresą. Kaip ir „Naudoti dokumentų aplanką“, naudokite jį, jei „iOS“ tinkamai neatnaujina programos ir vis dar naudoja IP iš ankstesnio „WiFi“ tinklo.
"Bendrinti visose sąsajose" nustato viešąjį IP 0.0.0.0, o tai reiškia, kad visi serveryje bus rodomas bet koks, prie kurio esate prisijungę. Patogus staliniuose kompiuteriuose su daugiau nei vienu ryšiu, tačiau būkite atsargūs naudodami jį viešose vietose.
"Pradėti bendrinti" paleis serverį ir atidarys pagrindinį puslapį, kurį galėsite tvarkyti. Dar kartą spustelėjus serveris bus sustabdytas ir jūsų failai bus apsaugoti.
"Įkelti paskutinius nustatymus" ir "Išsaugoti esamus nustatymus" daryti tiksliai tai, ką sako. Jūsų nustatymai bus saugomi Documents/paferafileserver.cfg, kaip ir konsolės Rust versija.
Įvairios slaptažodžių parinktys yra skirtos tam, kad skirtingiems žmonėms būtų suteiktas skirtingas prieigos lygis.
Paprastai visi gali matyti jūsų failus tiesiog prisijungę prie jūsų serverio, bet jei pažymėsite "Įgalinti privačius failus" žemiau jų, niekas negalės matyti jūsų failų be skaitymo slaptažodžio.
Rašymo slaptažodis naudojamas failams įkelti, perkelti, kopijuoti arba ištrinti. Be to, niekas kitas negali nieko padaryti su jūsų sistema, išskyrus jūsų failų peržiūrą.
Apvalkalo slaptažodis yra nenaudingas mobiliojoje programoje, bet labai naudingas stalinių kompiuterių operacinėse sistemose ir „Terux“ sistemoje „Android“. Tai leidžia paleisti savavališkas sistemos komandas, dėl kurių ji yra labai galinga ir tuo pat metu labai pavojinga. Ši funkcija yra išjungta pagal numatytuosius nustatymus ir jūs abu turite įvesti apvalkalo slaptažodį ir pažymėkite "Įgalinti apvalkalo komandas" žemiau, norėdami juo naudotis.
Įvairios įjungimo ir išjungimo parinktys leidžia pasirinkti, ką kiti žmonės gali padaryti jūsų sistemoje net kai jie jau turi tinkamą slaptažodį. Tai nepaiso visų kitų parinkčių, todėl jei išjungsite failų kopijavimą, niekas – net jūs pats – negalės kopijuoti failų.
Speciali parinktis "Išjungti SSH raktų tikrinimą" skirta žmonėms, tokiems kaip aš, kurie nuolat klajoja, sinchronizuodami failus pirmyn ir atgal tarp skirtingų įrenginių. Paprastai SSH paprašys patvirtinimo, kai prisijungs prie sistemos, kurios IP adresas pasikeitė, net jei tos sistemos tapatybė jau žinoma. Ši parinktis leis automatiškai sinchronizuoti failus skirtinguose tinkluose nenukreipdami į konsolę, kad patvirtintumėte SSH ryšius. Naudokite jį atsargiai būdami tinkluose, kurių patys nevaldote.
Skirtingai nei veikia Termux ar darbalaukio aplinkoje, iOS ir Android programos neturi prieigos prie apvalkalo, rsync, ImageMagick ar FFMpeg, todėl visos išplėstinės sinchronizavimo ir perkodavimo funkcijos yra išjungtos.
Kadangi mobiliosios operacinės sistemos gali bet kada užmušti fonines programas, automatinės užduotys taip pat yra išjungtos.
Yra galimų visų šių aspektų sprendimo būdų, tačiau laiko, reikalingo šioms funkcijoms integruoti, šiuo metu neplanuoju. Jei kas nors norės man sumokėti už jų pridėjimą, pamatysime, kas nutiks. 😁
Kaip ir visų mano projektų, šaltinio kodas yra priglobtas „Codeberg“ ir gali būti rasti čia .
Iš anksto sukompiliuotų dvejetainių failų atveju galite naršykite leidimų katalogą čia ...
Arba tiesiog spustelėkite toliau pateiktas nuorodas:
Dėl „Apple“ pasirašymo reikalavimų „iOS“ ir OSX naudotojai turi palaukti, kol programa bus pasiekiama „App Store“, arba atsisiųsti šaltinio kodą ir susikurti savo įrenginių versiją.
Kadangi tai yra naujas leidimas, esu tikras, kad įvairiose sistemose bus daug klaidų ir keisto elgesio. Jei norite išbandyti šią programą beta versijoje, atsiųskite man el. laišką, nurodydami savo įrenginį ir operacinės sistemos versiją, ir aš jums pateiksiu „TestFlight“ sąranką.
„Flutter“ programos platinimas iš tikrųjų yra daug sudėtingesnis nei „Rust“ versija, kai įkeliu tik vieną vykdomąjį failą ir baigiu viską, todėl supraskite, kai „Apple“ užtrunka tris savaites, kol patikrina mano programą ir leidžia ją į „iOS“. App Store. Viskas turėtų būti daug lengviau, kai pagal ES sprendimą „Apple“ privalo leisti trečiųjų šalių programas.
Kaip visada, tikiuosi, kad ši programa jums bus naudinga, o jei norite pritaikyti ją savo reikmėms, visada būsiu techninis konsultantas. smagiai!
Apie Autorius |
|
![]() |
Jimas programuoja nuo tada, kai 90-aisiais gavo IBM PS/2. Iki šiol jis vis dar renkasi HTML ir SQL rašymą ranka, o savo darbe daugiausia dėmesio skiria efektyvumui ir teisingumui. |