2012-01-06 27 views
19

Puse un botón de Facebook en mi aplicación de iPhone. Quiero abrir el navegador predeterminado del iPhone al hacer clic en ese botón y cargar la página de inicio de sesión de Facebook.¿Cómo abrir el navegador predeterminado de iPhone?

¿Cómo puedo lograrlo?

Gracias de antemano.

Respuesta

59

IOS 10 ha introducido nuevo método para abrir una URL, ver más abajo:

Swift 3:

let url = URL(string:"http://www.booleanbites.com") 
if #available(iOS 10.0, *) { 
    UIApplication.shared.open(url!, options: [:], completionHandler: nil) 
} else { 
    // Fallback on earlier versions 
    UIApplication.shared.openURL(url!) 
} 

C Objetivo:

NSURL *url = [NSURL URLWithString:@"http://www.booleanbites.com"]; 

if ([[UIApplication sharedApplication] respondsToSelector:@selector(openURL:options:completionHandler:)]) { 
    [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:NULL]; 
}else{ 
    // Fallback on earlier versions 
    [[UIApplication sharedApplication] openURL:url]; 
} 
+0

OK. Thankx Adil. – Arun

+8

Su enlace de "búsqueda" apunta al "botón de inicio de android de phonegap presionado".La pregunta es acerca de la aplicación iOS con el botón para abrir la página principal de Facebook en el navegador predeterminado. No veo una conexión? – JOM

8
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.facebook.com"]]; 
4

Cuando se abre por defecto del iPhone navegador, su aplicación llega a un segundo plano, posiblemente terminado por iOS. ¿Es eso realmente lo que quieres? El usuario no tiene forma de volver a su aplicación.

opciones pareja a tener en cuenta:

  • Integrar Facebook biblioteca IOS en su aplicación. Mucha codificación, ya que necesita escribir algún código de UI para admitir la integración. Por otra parte, de la aplicación y tiene cierto control sobre lo que está pasando y cómo reaccionar a las acciones del usuario

https://github.com/facebook/facebook-ios-sdk

  • navegador Insertar dentro de su aplicación y "abrir el navegador" dentro de tu aplicación Una vez más, usted tiene cierto control sobre lo que está pasando y qué hacer al respecto

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebView_Class/

El punto es: Es su aplicación. ¿Por qué obligarías al usuario a cerrar tu aplicación y comenzar a usar otra cosa sin ninguna forma de volver?

Bueno, ya conoce todos los detalles y en función de aquellos que quiere el navegador predeterminado. Está bien.

+0

Thankx JOM. Ahora lo entendí correctamente. Gracias – Arun

2
Swift: iOS 

var url:NSURL? = NSURL(string:webLink!) 
UIApplication.sharedApplication().openURL(url!) 
3

En Swift

UIApplication.sharedApplication().openURL(NSURL(string:"http://www.facebook.com")!) 

En C objetivo

[[UIApplication sharedApplication] openURL:[NSURL   
URLWithString:@"http://www.facebook.com"]]; 
1

Swift 3:

let url = URL(string: "http://www.example.com")!   
if UIApplication.shared.canOpenURL(url) { 
    UIApplication.shared.open(url, options: [:], completionHandler: nil) 
} 

Si desea añadir un completionHandler:

let url = URL(string: "http://www.example.com")!   
if UIApplication.shared.canOpenURL(url) { 
    UIApplication.shared.open(url, options: [:], completionHandler: { (success) in 
     print("success!") // do what you want 
    }) 
} 
1

OpenUrl está privado, utilice el siguiente código.

NSURL *url = [NSURL URLWithString:@"https://google.com"]; 
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:nil]; 
Cuestiones relacionadas