Tutorial: Entwicklung eines TvDataService: Unterschied zwischen den Versionen

Aus TV-Browser Wiki
Wechseln zu: Navigation⧼comma-separator⧽Suche
Bodo⧼word-separator⧽⧼parentheses⧽
⧼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

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.