[Projektvorstellung] Avira Open Source FileDownloader

Avira

Neu angemeldet
Registriert
29 Juni 2016
Beiträge
3
Hallo werte ngb-Commuity,
ich möchte euch hier eines von Aviras Open Source Projekten vorstellen.
Es handelt sich um eine Implementierung eines FileDownloaders basierend auf dem .Net Framework; Lizensiert unter der MIT Lizenz.

Was genau ist der FileDownloader? Ein HTTP/S Downloader, erweitert um die Funktionalität unterbrochene Downloads an der abgebrochenen Stelle fortzusetzen.
Warum wurde der FileDownloader geschrieben? Weil das .Net Framework bisher keine Möglichkeit für eine Wiederaufnahme von unterbrochenen Downloads bietet.
Wann sollte man FileDownloader benutzen? Der Hauptaugenmerk liegt auf dem Download von großen Dateien bei langsamer bzw. schlechter Internetverbindung. Im Falle eines Abbrechens der Verbindung braucht der FileDownloader nach wieder Herstellen der Verbindung nur den verbleibenden Teil der heruntergeladenen Datei downloaden.

Minimale Anforderungen um das Projekt zu bauen sind Visual Studio 2013 bzw. Community Edition und .Net Framework 3.5

Eine Dokumentation mit ein paar Beispielen sowie Informationen zu der Lizenz finden sich direkt im GitHub Projekt.



Ich würde mich über Feedback freuen: Bugs, Nutzbarkeit, Dokumentation. :)
 
Zuletzt bearbeitet:
- Wieso ist nirgends auf den offiziellen Seiten von Avira darüber zu lesen?
- Kannst du / Ihr euch irgendwie verifizieren, dass es offiziell ein Avira Projekt ist und kein privates von einem Mitarbeiter

- Wieso noch ein Downloader? Was kann der besser als auf dem Markt vorhandene?


Edit: Nach der Bestätigung von Lokalrunde die ersten beiden Punkte gestrichen.
 
Zuletzt bearbeitet:
Kurze Information dazu: Der Account ist verifiziert, es handelt sich um einen offiziellen Account.
 
Avira hat den Weg ins NGB gefunden. Wow.

@poesie noire: Ich denke hier geht es eher um eine Programmierschnittstelle als um ein eigenständiges Programm.
Bei Softwareentwicklung versucht man gewöhnlich Funktionalität aus bereits bestehenden Bibliotheken zu ziehen, um nicht jede Kleinigkeit selbst implementieren zu müssen. Zum Beispiel könntest du in jedem Programm eine "rohe" Socketverbindungen aufbauen und selbst das TCP/IP und HTT-Protokoll darauf implementieren. Das in jeder Software selbst durchzuführen ist nicht nur aufwändig, sondern natürlich auch fehleranfällig. Daher wird man im Regelfall fertige Bibliotheken, welche Schnittstellen bieten, die sich zur Kommunikation über das HTT-Protokoll eignen, verwenden. Avira hat sich nun entschlossen eine Bibliothek zu veröffentlichen, mit der es möglich ist, unterbrochene Downloads wieder aufzunehmen.

@Avira: Korrigiere mich, falls ich falsch liege.

Ich finde die Idee gut und finde es schön, dass sich Avira entschließt Softwareteile zu publizieren.
Andererseits fände ich es auch spannend mit einem Avira Vertreter über Sinn und Unsinn von AntiVirus Software zu diskutieren. :D
 
Dann richtet sich das Programmierer? Für mich als Endnutzer also eher uninteressant?
 
Mal heut mittag testen. Visual Studi hab ich ja, ob ich dann was damit anfangen kann, eher nicht :D
 
  • Thread Starter Thread Starter
  • #7
Danke für das positive Feedback. :) Sinn und Unsinn von Antivirus Software ist dann nochmal ein anderes Thema, mal sehen ob man da ggf. später noch was in einem anderen Bereich zu machen kann.

Im Grunde genau wie virtus es beschrieben hat. Es handelt sich nicht um ein eigenständiges Produkt für einen Endanwender sondern um eine Implementierung eines Downloaders, die in anderen Projekten verwendet werden kann.

Viel Spaß, bin auf Rückmeldung gespannt.
 
Was mir ins Auge springt - es gibt diesen "CompletedState.Failed" im "Start download" - Beispiel auf Github.

Wäre es hier möglich noch genauer zu spezifizieren, durch beispielsweise Error Codes, warum der Download genau fehlgeschlagen ist?
Zum Beispiel der Host ist nicht erreichbar oder die Anfrage unterlag einem Timeout oder ähnliches, was sich dann abfangen/behandeln lässt.
 
  • Thread Starter Thread Starter
  • #9

In dem StartDownload Beispiel wird nicht nur der Status zurück gegeben, sondern ein Result Objekt. Der Status ist ein Property des Objekt.
Das findest du hier:


Dort bekommst du alle wichtigen Informationen zum Download inkl. der Exception warum der Download abgebrochen wurde.
 
Hallo Avira,

wenn das bereits möglich ist, super. Ich habe nur nicht den Code studiert (shame on me...) - da ich mich nicht mit CSharp beschäftige, aber wenn die Funktionalität gegeben ist, passt es ja.

Ein schönes Wochenende :)
 
Zurück
Oben