/ / Inicie OpenVPN a través de la intención desde otra aplicación: android, android-intent, openvpn

Inicie OpenVPN a través de la intención de otra aplicación: Android, Android Intent, OpenVPN

Hola compañeros Stackoverflowers,

Hace unos días encontré esta pequeña y ordenada función para iniciar y conectar OpenVPN desde otra aplicación usando intenciones.

    private void startVPN(){
Intent openVPN = new Intent("android.intent.action.VIEW");
openVPN.setPackage("net.openvpn.openvpn");
openVPN.setClassName("net.openvpn.openvpn", "net.openvpn.openvpn.OpenVpnClient");
openVPN.putExtra("net.openvpn.openvpn.AUTOSTART_PROFILE_NAME","10.10.10.10 [10.10.10.10]");
startActivityForResult(openVPN,0);

}

Ahora mi pregunta es:

¿Solo necesito tener OpenVPN (connect o para Android) instalado o necesito crear algo como una biblioteca .jar para usarlo?

Respuestas

0 para la respuesta № 1

Estas llamando startActivity, por lo tanto, necesitará cualquier aplicación que incluya eso net.openvpn.openvpn paquete y Intent filtrar.

setClassName está llamando a ese paquete para una clase particular que finalmente tomará algo de Intent extras

Entonces, no hay archivo JAR, sí, para necesitar la aplicación instalada. Si no tienes la aplicación instalada, creo que onActivityResult volverá con otro que OK código de respuesta.


0 para la respuesta № 2

la intención que creaste solo abre openVpnaplicación y para eso la aplicación openVpn debe instalarse en el dispositivo o este código se bloqueará. Puede verificar si el código resolverá la intención

 // Verify that the intent will resolve to an activity
if (sendIntent.resolveActivity(getPackageManager()) != null) {
startActivity(sendIntent);
}