2014-04-14 19 views
11

ho questo metodoUIApplication sharedApplication openURL non funziona

- (IBAction)facebookButtonPress:(id)sender { 
    NSLog(@"fb hit"); 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[@"www.facebook.com/asbreckenridge" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]]; 
} 

e non capisco il motivo per cui safari doesnt aprire il link. Ricevo il 'fb hit' registrato, quindi il metodo viene chiamato, ma non apre il collegamento in Safari, cosa sto facendo male?

risposta

8

Provalo senza codifica come questa.

- (IBAction)facebookButtonPress:(id)sender { 
    NSLog(@"fb hit"); 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[@"www.facebook.com/asbreckenridge"]]]; 
} 

provare anche cambiare l'URL per http://www.facebook.com/asbreckenridge

+1

E 'un po' strano, sembra proprio essere un problema con il codice –

+1

[[UIApplication sharedApplication] openURL: [NSURL URLWithString: @ "www.facebook.com/asbreckenridge"]]; Non funziona – SBM

7

Prova questo:

- (IBAction)facebookButtonPress:(id)sender { 
NSLog(@"fb hit"); 
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.facebook.com/asbreckenridge"]]; 
} 
+0

Impressionante, non so cosa fosse sbagliato ma funziona ora – AndrewSB

+5

'' http: // 'mancava. In generale, le parentesi aggiuntive con la codifica non sono una brutta cosa da fare. Ma nel caso di questo URL costante non ha alcun effetto. –

+0

Questo ha senso, grazie Hermann – AndrewSB

1

Nel mio caso problema era extra "/" alla fine.

non funziona:
@"http://www.facebook.com/asbreckenridge/"

funziona bene:
@"http://www.facebook.com/asbreckenridge"