How to take the parameter from URL scheme.

前端 未结 3 1097
死守一世寂寞
死守一世寂寞 2021-02-06 17:49

I am using URL scheme in my iPhone app,from a page I switch user to safari,and a button click from Web page,I am reverting back to app At that time ,some parameters are passed b

相关标签:
3条回答
  • 2021-02-06 18:06

    You can use this url host to find out the parameters, where parameters could be of any kind, anything after http:// or custom tag custom:// will be caught in the following code

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

    If you have multiple parameters then you could use componentsSeparatedByString method to separate the parameters

    0 讨论(0)
  • 2021-02-06 18:13

    Try this code. this ll useful even if you had numbers of parameters and values in 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]];
    }
    
    0 讨论(0)
  • 2021-02-06 18:20
    NSString *query = [url query];
    NSArray *queryComponents = [query componentsSeparatedByString:@"&"];
    

    Now you got all strings in queryComponents like

    param1=value
    

    Now you can get first value like that

    NSArray *firstParam = [[queryComponents objectAtIndex:0] componentsSeparatedByString:@"="];
    
    [firstParam objectAtIndex:0] is the name of param
    [firstParam objectAtIndex:1] is value of the param
    
    0 讨论(0)
提交回复
热议问题