it-swarm.com.de

Methode zur Übergabe von Benutzername und Passwort in VpnService.Builder 

Ich entwickle die Anwendung, in der ich VPN-Netzwerk verwenden möchte. Um ein VPN-Netzwerk im Gerät zu erstellen, müssen wir es über das Menü (Einstellungen-WLAN und Netzwerk-VPN-Einstellungen) des Geräts konfigurieren.

Ich möchte so viele Einstellungen per Code mit fest codierten Informationen vornehmen.

Ab API-Level 4.0 stellt Android API zur Verfügung, um die VPN-Dienste zu verwalten.

Um die Implementierung dieser Methoden zu kennen, habe ich das Beispielprojekt von Android ToyVPN verwendet. Aber bei so vielen Methoden habe ich keine Methode gefunden, um Benutzernamen und Passwort zu übergeben. informationen die ich zum verbinden von vpn netzwerken habe sind.

  1. VPN-Servername
  2. Username
  3. Passwort

Mit diesen drei Informationen stelle ich erfolgreich eine Verbindung zum VPN-Netzwerk her, wenn ich manuell vom Gerät aus konfiguriere. Aber ich möchte das programmatisch machen. Hier ist die Klassendatei, die zum Herstellen einer Verbindung zum VPN-Netzwerk verwendet wird. ToyVpnClient.Java und ToyVpnService.Java . Zusätzlich zu dieser Beispielanwendung kommt es zu Abstürzen im Gerät.

Jede Hilfe wird geschätzt.

20
Juned

Der VpnService , über den Sie sprechen, ist nicht das, was Sie denken. Es ist nur ein Rahmen für Sie, um Ihre eigene VPN-Lösung zu erstellen. Einmal eingerichtet, erhalten Sie die gesamte Kommunikation auf der Netzwerk (IP) -Schicht und können alles tun, was Sie wollen, z. B. verschlüsseln und an Ihren Server senden - das Beispiel hierfür ist das ToyVpn-Projekt in/samples /. Android-14/Verzeichnis. Sie benötigen auch einen eigenen serverseitigen Code, um die Entschlüsselung und das erforderliche Routing des Datenverkehrs durchzuführen.

Leider können Sie das integrierte Android-VPN nicht programmgesteuert einstellen. Das Beste, was Sie tun können, ist, dem Benutzer ein Dialogfeld zu zeigen, in dem er erklärt, wie es eingestellt wird, und dann die Systemeinstellungen mit dem richtigen Bildschirm aufzurufen.

4
cermak.cz

Es ist möglich, die interne API Android.jar (com.Android.internal) und hidden (@hide) zu verwenden. Siehe den folgenden Link:

Wie programmgesteuert eine neue VPN-Schnittstelle mit Android 4.0 erstellen?

0
Raghav Sharma