openvpn ios client esquema de url personalizado

Mi aplicación tiene la dependencia de la aplicación iOS OpenVPN Connect .

Entonces, debo verificar si la aplicación ya está instalada o no.

si es así, solo abriré la aplicación utilizando el esquema OpenURL, de lo contrario abriré su enlace de tienda de aplicaciones para que el usuario lo instale.

Entonces mi problema aquí es que no pude encontrar ninguna URL abierta asociada con esta aplicación.

¡Se agradece cualquier ayuda!

exporta un tipo de documento. por lo que podría usar un UIDocumentInteractionController para verificar si el tipo de file se puede abrir y, por lo tanto, la aplicación está instalada.

uti es net.openvpn.formats.ovpn

copie un file de ese tipo (puede crear dicho file en OSX) en el package e intente presentar un controller de interacción para él usando presentOpenInMenuFromRect

establézcete como delegado y si dispara willShowMenu, entonces no la aplicación está allí y descartas el menu.

así que para comenzar algo como esto:

NSString *file = ... //path to file with UTI in question UIDocumentInteractionController *c = ... //init with file c.delegate = self; _hasAppInstalledForUTI = NO; [c present...]; if(!_hasAppInstalledForUTI) { //act } 

 - willPresentOpenInMenu { [c dismissAnimated:NO]; _hasAppInstalledForUTI = YES; } 

BTW: revisé la aplicación, no hay un esquema de url.

Si bien puede parecer descarado, creo que una forma sería enviar un correo electrónico a los desarrolladores y preguntarles si tienen un esquema de URL, o si crearían soporte para uno. Es de ganar-ganar porque es más probable que su software se instale si se puede aprovechar de nuevas forms, y obtendrás la funcionalidad que necesitas.

Intenta abrir un file .ovpn .

Aquí hay una vieja pregunta de mí mismo para comenzar a hacer eso.

Fuente

Aunque esto no es específicamente comprobar esa aplicación en particular, pero debería hacer el trabajo.

Para comprobar si el usuario tiene la aplicación en absoluto, haría lo siguiente:

 NSURL *url = "appScheme://" if ([[UIApplication shanetworkingApplication] canOpenURL:url]) { [[UIApplication shanetworkingApplication] openURL:url]; } else { // can't open url } 

Pero no todas las aplicaciones tienen esquemas de url. Sé que el mío no.

Si no puede encontrar ninguna en línea, entonces es probable que no haya ninguna. Intenta contactar a los desarrolladores para averiguar si incluso hay uno para empezar, de lo contrario intenta encontrar otra aplicación que tenga una, y usa esa en cambio.

Creo que quieres abrir la aplicación "openvpn ios" desde tu aplicación. Por favor, consulte el siguiente enlace para el mismo:

http://mobile.tutsplus.com/tutorials/iphone/ios-sdk-working-with-url-schemes/

Siga los pasos que se indican y compruebe si la aplicación está abierta o no.

El soporte para openvpn:// esquema de URL se introdujo en OpenVPN Connect 1.0.6 , de acuerdo con las preguntas frecuentes de OpenVPN Connect, puede usar este código:

 BOOL installed = [application canOpenURL:[NSURL URLWithString:@"openvpn://"]]; 

El siguiente código abre iTunes para instalar OpenVPN Connect si aún no está instalado:

 UIApplication * app = [UIApplication shanetworkingApplication]; BOOL installed = [app canOpenURL:[NSURL URLWithString:@"openvpn://"]]; if (installed) { [app openURL: [NSURL URLWithString:@"openvpn://"]]; } else { [app openURL: [NSURL URLWithString: @"https://itunes.apple.com/app/id590379981?mt=8"]]; } 

EDITADO: en realidad, este enfoque NO funciona, acabo de probarme a mí mismo: la cuestión es que la versión publicada de OpenVPN Connect en AppStore es 1.0.5 , por lo que esta característica no está disponible en ella ((