Tutorial: Entwicklung eines TvDataService: Unterschied zwischen den Versionen
Version vom 6. Januar 2008, 09:23 Uhr ⧼parentheses⧽ Bodo⧼word-separator⧽⧼parentheses⧽ ⧼parentheses⧽ |
Aktuelle Version vom 12. Januar 2008, 01:30 Uhr ⧼parentheses⧽ Deerwood⧼word-separator⧽⧼parentheses⧽ ⧼parentheses⧽ |
||
Zeile 24: | Zeile 24: | ||
* Sämtliche Methoden dieser Klasse werden von der Host-Applikation (also dem TV-Browser) aufgerufen und sind somit die Einstiegspunkte des Plugins. | * Sämtliche Methoden dieser Klasse werden von der Host-Applikation (also dem TV-Browser) aufgerufen und sind somit die Einstiegspunkte des Plugins. | ||
* Die Klasse muss in einem Package liegen, das den selben Namen wie die Klasse selbst hat, allerdings in Kleinbuchstaben. Beispiel : ''mytvdataservice.MyTVDataService'' | * Die Klasse muss in einem Package liegen, das den selben Namen wie die Klasse selbst hat, allerdings in Kleinbuchstaben. Beispiel : ''mytvdataservice.MyTVDataService'' | ||
− | * Schau dir die DreamboxDataService und RadioTimesDataService im SVN an. Dort kann man schnell abschauen, wie man die Klasse implementieren könnte. | + | * Schau dir die [http://tvbrowser.svn.sourceforge.net/viewvc/tvbrowser/trunk/tvbrowser/src/dreamboxdataservice/ DreamboxDataService] und [http://tvbrowser.svn.sourceforge.net/viewvc/tvbrowser/trunk/tvbrowser/src/radiotimesdataservice/ RadioTimesDataService] im [http://sourceforge.net/svn/?group_id=79472 SVN] an. Dort kann man schnell abschauen, wie man die Klasse implementieren könnte. |
=Jar-Datei erstellen= | =Jar-Datei erstellen= |
Aktuelle Version vom 12. Januar 2008, 01:30 Uhr
Inhaltsverzeichnis
Allgemeines
Die TV-Daten werden in TV-Browser über spezielle Plugins - wir nennen sie DataServices - geladen. Auf diese Weise läßt sich TV-Browser beliebig um weitere Sender erweitern (vorausgesetzt, jemand verfügt über die TV-Daten und schreibt ein DataService dazu).
Dieses Tutorial beschreibt die Entwicklung eines DataServices in den Grundzügen. Als weitere Hilfen empfehle ich das TvDataStarterKit, einen Blick in die JavaDoc-Dokumentation von TV-Browser bzw. den Quellcode der existierenden DataServices.
Rechtliches
Wir werden nur DatenServices unterstützen, die die Daten auf legalem Wege besorgen. Dies bedeutet:
- Keine DatenServices, die Daten aus Webseiten auslesen, ohne die Genehmigung der Webseite
- Keine DatenServices, die Daten aus lokalen Datenbanken (z.B. eine Access-Datenbank) auslesen, ohne die Genehmigung des Herstellers der Daten in dieser Datenbank
Entwicklungsumgebung einrichten
Siehe TV-Browser_Build-Anleitung.
Implementieren
Entwickle eine Klasse, die von der Klasse devplugin.AbstractTvDataService
erbt.
Anmerkungen:
- Sämtliche Methoden dieser Klasse werden von der Host-Applikation (also dem TV-Browser) aufgerufen und sind somit die Einstiegspunkte des Plugins.
- Die Klasse muss in einem Package liegen, das den selben Namen wie die Klasse selbst hat, allerdings in Kleinbuchstaben. Beispiel : mytvdataservice.MyTVDataService
- Schau dir die DreamboxDataService und RadioTimesDataService im SVN an. Dort kann man schnell abschauen, wie man die Klasse implementieren könnte.
Jar-Datei erstellen
Als nächstes müssen wir das DataService in eine einzige Datei zusammenpacken, damit man es leicht installieren und anderen Leuten anbieten kann.
Mit folgendem Befehl wird nun die Jar-Datei erstellt:
jar cvf MyTVDataService.jar mytvdataservice
Wichtig: Der Dateiname der Jar-Datei muss dabei mit dem Namen der oben erstellten Klasse identisch sein (Auch Groß-/Kleinschreibung beachten!).
Installation
Kopiere die eben erstellte Jar-Datei in das Verzeichnis plugins deiner TV-Browser-Installation. Jetzt musst du nur noch TV-Browser neu starten und schon kannst du dein DataService benutzen, indem du in der Senderkonfiguration die Senderliste aktualisierst.
Hochladen
Dein Plugin kannst du auf TVBrowser.org im Entwickler-Bereich hochladen und somit allen Nutzern verfügbar machen.