40 lines
2.1 KiB
HTML
40 lines
2.1 KiB
HTML
{% extends "_layout_de.html" %}
|
|
{% block title %}Klient Packet{% endblock %}
|
|
{% block content %}
|
|
<p>Implementiert das Basis I2P SDK zum Entwickeln von Anwendungen, die
|
|
über I2P kommunizieren.</p>
|
|
|
|
<p>Sobald eine Klientanwendung über I2P kommunizieren will, braucht
|
|
sie zuerst ein {@link net.i2p.client.I2PClient} von der
|
|
{@link net.i2p.client.I2PClientFactory}. Falls es nicht schon eine
|
|
{@link net.i2p.data.Destination} hat, muss es mit dem
|
|
{@link net.i2p.client.I2PClient#createDestination} eine erstellen bevor
|
|
sie weiter machen kann. Sobald es eine hat erstellt sie eine
|
|
{@link net.i2p.client.I2PSession} die als Brücke ins I2P Netzwerk
|
|
arbeitet. Dieses erlaubt das Senden von Nachrichten (via
|
|
{@link net.i2p.client.I2PSession#sendMessage}) und das Empfangen von Nachrichten
|
|
(via {@link net.i2p.client.I2PSession#receiveMessage}). Zusätzlich
|
|
erhält der Klient asynchrone Informationen zur Netzaktivität
|
|
aus der Implementation des {@link net.i2p.client.I2PSessionListener}. </p>
|
|
|
|
<p>Ein einfaches Beispiel zur Nutzung dieser Basisklassen kann in der
|
|
{@link net.i2p.client.ATalk} Anwendung gefunden werden. Sie ist nicht
|
|
wirklich nützlich, ist aber ein sehr stark dokumentierter Quelltext.</p>
|
|
|
|
<p>Dieses Klient Packet hält die Basis Anforderungen zur Kommunikation
|
|
mit I2P bereit, hinzu kommen drei weitere, hilfreiche Unterpackete.
|
|
Diese sind:<ul>
|
|
<li>{@link net.i2p.client.datagram} - für Anwendungen, die ihre Nachrichten
|
|
sowohl authentifiziert als auch beantwortbar brauchen</li>
|
|
<li>{@link net.i2p.client.naming} - für Anwendungen, die lesbare Namen
|
|
in {@link net.i2p.data.Destination}s auflösen wollen</li>
|
|
<li>{@link net.i2p.client.streaming} - für Anwendungen, die eine
|
|
Streaming API nutzen, um die Reihenfolge der Nachrichten sicherstellen
|
|
zu können (<b>Hinweis</b>: die Streaming Bibliothek ist seperat
|
|
vom Haupt SDK vorgehalten - in den mstreaming.jar und streaming.jar)</li>
|
|
</ul></p>
|
|
|
|
<p>Die {@link net.i2p.client.I2PSession} Implementation alleine kommuniziert
|
|
mit dem I2P Router mittels des I2CP (das Klientenprotokoll).</p>
|
|
{% endblock %}
|