Cómo tomar el parámetro del esquema de URL.

Estoy usando el esquema de URL en mi aplicación de iPhone, desde una página cambio de usuario a safari, y un clic de un button desde la página web, vuelvo a la aplicación. En ese momento, algunos parameters pasan por la página web como

myapp://parameter=1 

¿Cómo puedo encontrar este parámetro desde mi aplicación? He colocado un punto de quiebre en

  -(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)ur 

pero mientras regresa, no es recibido.

Puede usar este url host para conocer los parameters, donde los parameters pueden ser de cualquier tipo, cualquier cosa después de http:// o label custom:// se capturará en el siguiente código

  NSString *urlParameter = [[url host] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 

Si tiene varios parameters, entonces podría usar el método componentsSeparatedByString para separar los parameters

 NSString *query = [url query]; NSArray *queryComponents = [query componentsSeparatedByString:@"&"]; 

Ahora tienes todas las cadenas en queryComponents como

 param1=value 

Ahora puedes get el primer valor así

 NSArray *firstParam = [[queryComponents objectAtIndex:0] componentsSeparatedByString:@"="]; [firstParam objectAtIndex:0] is the name of param [firstParam objectAtIndex:1] is value of the param 

Prueba este codigo Esto será útil incluso si tuviera numbers de parameters y valores en la url.

 NSURL *url = [NSURL URLWithString:@"xyz.com/result.php?data1=1123660801&data2=250072028055&presult=SUCCESS"]; NSURLComponents *components = [NSURLComponents componentsWithURL:url resolvingAgainstBaseURL:NO]; NSArray *queryItems = [components queryItems]; NSMutableDictionary *dict = [NSMutableDictionary new]; for (NSURLQueryItem *item in queryItems) { [dict setObject:[item value] forKey:[item name]]; }