Nützliche Tools/Webseiten zur Add-on Entwicklung

  • Tools
    Firebug - Firefox Add-on was unglaublich nützlich ist, um Vorgänge einer auf Seite zu analysieren.
    Wireshark - DER Netzwerksniffer schlechthin. Hilft weiter, wo Firebug aufhört.
    Telerik Fiddler - Alternative zu Wireshark.
    Ettercap - Wenn Wireshark/Fiddler nicht helfen. Software Suite für aktive und passive MITM Analyse. Für Spezialfälle.
    rtmpdump (rtmpsrv, rtmpsuck) - Eignet sich super zum testen von rtmp Streams, ohne ein Add-on schreiben zu müssen.
    FFDec - Tolles Tool zum Dekompilieren von Flash Dateien. Gibt oft Geheimnisse preis.
    Video Download Helper - Firefox Add-on, findet fast alle nicht rtmp Streams

    Webseiten
    Google.com - Kein Scherz. Viele Sachen/Interfaces findet man darüber (z.B. bessere Thumbnails).
    Archive.org Wayback Machine - Hat auch oft wissenswerte Sachen (z.B. alternative APIs).
    Fritzbox Capture - Kann Datenströme abgreifen um sie mit Wireshark analysieren zu können. Nur für Fitzbox User.

    Sonstiges
    Zur Untersuchung von Mobilgeräten bzw. abgeschlossenen Systemen (Android, ATV, WII, ...) eignen sich am besten zwei zusätzliche Netzwerkkarten am PC.

  • Besitzer einer Fritzbox können auch noch mit Hilfe von
    http://fritz.box/html/capture.html
    ihren Datenverkehr mitschreiben.
    Ist brauchbar, wenn man zB herausfinden will, womit sich eine App auf dem Smartphone genau verbindet.
    Zur Analyse nimmt man dann wieder Wireshark.

    Habe ich zwar auch schon länger nicht mehr genutzt, aber ich gehe davon aus, dass das aktuell noch so läuft.

  • Ich empfehle statt WireShark Telerik Fiddler. Damit findet man jede öffentliche API, die eine Seite benutzt.
    Wenn jeder Addon-Entwickler vor der Entwicklungsphase einmal gründlich die Seite untersuchen würde, würden 90% der Addons
    mindestens doppelt so schnell laufen...
    Außerdem möchte ich darauf hinweisen, dass externe Python-Module verwendet werden können, indem sie ins gleiche Verzeichnis extrahiert werden.
    Ansonsten ist es oft hilfreich gründlich auf StackExchange zu vergleichen und immer alle Fälle abzudecken, die eintreten können
    -> try,catch
    (Dies klingt trivial, tatsächlich verwenden aber nur ein Bruchteil der Entwickler solche Techniken, man sieht es an abstürzenden Addons)

  • Besitzer einer Fritzbox können auch noch mit Hilfe von
    http://fritz.box/html/capture.html
    ihren Datenverkehr mitschreiben.
    Ist brauchbar, wenn man zB herausfinden will, womit sich eine App auf dem Smartphone genau verbindet.
    Zur Analyse nimmt man dann wieder Wireshark.


    Für so etwas braucht man aber eine Fritzbox. SSL kann man damit total vergessen. Als Alternative bietet sich ARP Poisining oder ein Proxy an. Werde ich aber hinzufügen.

    Ich empfehle statt WireShark Telerik Fiddler. Damit findet man jede öffentliche API, die eine Seite benutzt.
    Wenn jeder Addon-Entwickler vor der Entwicklungsphase einmal gründlich die Seite untersuchen würde, würden 90% der Addons
    mindestens doppelt so schnell laufen...


    Das ist meiner Ansicht stark übertrieben. Welche Informationen offenbart denn dieses Tool, was Firebug nicht kann? Lange Ladezeiten liegen fast immer an langsamen Servern. Dann wohl eher zum debuggen von Add-ons, wobei das oft nicht nötig ist. Alternativ gibt es noch Ettercap (ist IMO auch fexibler). Mit SSL haben beide Tools Probleme.

    (Dies klingt trivial, tatsächlich verwenden aber nur ein Bruchteil der Entwickler solche Techniken, man sieht es an abstürzenden Addons)


    Fast alle Fehler in Add-ons entstehen eher durch Änderungen an der Webseite/API. Das kann dieses Tool auch nicht verhindern.

  • Der große Vorteil von Fiddler ist, dass es leicht zu bedienen ist (man sieht direkt, wo Mediadateien, JavaScript etc abgerufen wird und muss nicht großartig suchen). Außerdem unterstützt es SSL und ist insbesondere undabhängig von anderen Programmen (mein PC kommt schon beim Start von Firefox an seine Grenzen, dann noch ein Plugin?). Firebug kenne ich nur vom hören, habe es nie installiert weil man dort mMn eine schlechtere Übersicht hat, ist aber von der Funktionalität bestimmt nicht schlechter.

    Du kannst dich gerne selbst überzeugen, ob das "stark übertrieben" ist, wenn ich sage, dass durch gute Analyse Addons mindestens doppelt so schnell laufen.
    Vergleiche zB AddonScriptors Arte.tv mit dem Arte internen Support der Mediathek. AddonScriptors Version ist 4 bis 8 mal schneller.

    Zitat


    Fast alle Fehler in Add-ons entstehen eher durch Änderungen an der Webseite/API. Das kann dieses Tool auch nicht verhindern.

    Das soll dieses Tool auch nicht verhindern.
    Try, catch Blöcke sollen auch keine Fehler verhindern, sie sollen verhindern, dass das Addon abstürzt oder endlos läuft.
    Auf der XBOX hat man regelmäßig tolle Erfahrungen wenn zB das Internet unterbricht, dass ein Addon 2min wartet statt einfach abzubrechen...

  • XBMC/Kodi Python Libraries: http://mirrors.xbmc.org/docs/python-docs/
    Labels: http://kodi.wiki/view/InfoLabels
    Built-In Funktionen: http://kodi.wiki/view/List_of_Built_In_Functions

    (M)eine IDE: JetBrain PyCharm: https://www.jetbrains.com/pycharm/
    und dazu passend die XBMC/Kodi-Module zum einbinden (XBMCstubs): http://forum.kodi.tv/showthread.php?tid=173780

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960

    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • Der große Vorteil von Fiddler ist, dass es leicht zu bedienen ist (man sieht direkt, wo Mediadateien, JavaScript etc abgerufen wird und muss nicht großartig suchen). Außerdem unterstützt es SSL und ist insbesondere undabhängig von anderen Programmen (mein PC kommt schon beim Start von Firefox an seine Grenzen, dann noch ein Plugin?). Firebug kenne ich nur vom hören, habe es nie installiert weil man dort mMn eine schlechtere Übersicht hat, ist aber von der Funktionalität bestimmt nicht schlechter.


    Ich möchte mich hier nicht streiten ;). FF (Firebug) lässt sich auch leicht bedienen, man kann gleichzeitig JavaScript debuggen, SSL ist kein Problem (mit Fiddler/Ettercap/SSLstrip manipuliert man die Zertifikate). Einen Netzwerksniffer braucht man daneben nur selten.

    Du kannst dich gerne selbst überzeugen, ob das "stark übertrieben" ist, wenn ich sage, dass durch gute Analyse Addons mindestens doppelt so schnell laufen.
    Vergleiche zB AddonScriptors Arte.tv mit dem Arte internen Support der Mediathek. AddonScriptors Version ist 4 bis 8 mal schneller.


    Ohne in den Code geschaut zu haben vermute ich mal, das ASDs Version das normale (JSON?) API nutzt. Die "Mediathek" lädt wenn ich mich recht erinnere Metadaten (was für mich ein nogo ist). Das ist eine Sache der Implementierung, nicht des Interfaces.

    Try, catch Blöcke sollen auch keine Fehler verhindern, sie sollen verhindern, dass das Addon abstürzt oder endlos läuft.
    Auf der XBOX hat man regelmäßig tolle Erfahrungen wenn zB das Internet unterbricht, dass ein Addon 2min wartet statt einfach abzubrechen...


    Das hat aber auch nichts mit Fiddler zu tun. Urllib sollte bei Timeout eine Exception schmeißen.

    XBMC/Kodi Python Libraries: http://mirrors.xbmc.org/docs/python-docs/
    Labels: http://kodi.wiki/view/InfoLabels
    Built-In Funktionen: http://kodi.wiki/view/List_of_Built_In_Functions

    (M)eine IDE: JetBrain PyCharm: https://www.jetbrains.com/pycharm/
    und dazu passend die XBMC/Kodi-Module zum einbinden (XBMCstubs): http://forum.kodi.tv/showthread.php?tid=173780


    Hehe, die Docs hab ich glatt vergessen. Füge ich heute Abend hinzu.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!