Iniciar / iniciar una conexión VPN mediante programación
Estoy desarrollando aplicaciones empresariales que necesitan conectarse a servidores detrás del firewall. ¿Puede mi aplicación iniciar la conexión VPN mediante programación?
En plataformas 2.0+, VPN es compatible con la plataforma. Asumiendo que el usuario ya ha configurado los parámetros VPN, ¿puede mi aplicación iniciar la conexión VPN? Supongamos que el usuario no ha configurado ningún parámetro VPN, ¿puede mi aplicación proporcionar esos parámetros? E iniciar la conexión VPN?
Estamos enfrentando este problema en nuestra tienda. Por ahora, nuestro mejor intento es usar la API interna de Android para conectarse a la VPN de la misma manera que la aplicación de preferencias del sistema.
En primer lugar, debe configurar un entorno que le permita acceder a la API interna: http://devmaze.wordpress.com/2011/01/18/using-com-android-internal-part-1-introduction/
Entonces podemos implementar algo como esto http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.4.4_r1/com/android/settings/vpn2/VpnSettings .java # 258
No sé si tendremos cualquier problema de permiso con esto, pero IMHO esta es la mejor opción que tenemos ahora
EDIT: esto necesita privilegios de root para evitar java.lang.SecurityException: Unauthorized Caller
Errores java.lang.SecurityException: Unauthorized Caller
.
Supongamos que el usuario no ha configurado ningún parámetro VPN, ¿puede mi aplicación proporcionar esos parámetros? E iniciar la conexión VPN?
Sí, creo que es posible con la clase VpnService
como en este ejemplo
Asumiendo que el usuario ya ha configurado los parámetros VPN, ¿puede mi aplicación iniciar la conexión VPN?
Yo también lo estoy buscando. No estoy seguro, pero creo que tal vez se puede hacer con android.net.vpn
. Vea esto
AnyConnect de Cisco tiene API privada: http://www.cisco.com/c/en/us/td/docs/security/vpn_client/anyconnect/anyconnect30/administration/guide/anyconnectadmin30/acmobiledevices.html#71308
Sí, puedes iniciar una conexión VPN. ¿Qué versión de Android usas? Este enlace debe ser útil . Dar detalles para una mejor comprensión.