didFinishLaunchingWithOptions
- (void) doLogic
{
NSString *paraStr = [NSString stringWithFormat:@"%@://return?user=&result=", APP_NAME];
NSString *encodeStr = [CommonUtils stringByURLEncodingStringParameter:paraStr];
NSString *transUrl = [NSString stringWithFormat:@"%@://login?returnurl=%@", TARGET_APP_NAME, encodeStr];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:transUrl]];
}
#pragma mark - handle OpenURL
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
NSLog(@"result = %@", url);
return YES;
}
#pragma mark - URL Encoding String
- (NSString *)stringByURLEncodingStringParameter:(NSString *)originalUrl
{
NSString *resultStr = originalUrl;
CFStringRef originalString = (CFStringRef) originalUrl;
CFStringRef leaveUnescaped = CFSTR(" ");
CFStringRef forceEscaped = CFSTR("!*'();:@&=+$,/?%#[]");
CFStringRef escapedStr;
escapedStr = CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
originalString,
leaveUnescaped,
forceEscaped,
kCFStringEncodingUTF8);
if( escapedStr ) {
NSMutableString *mutableStr = [NSMutableString stringWithString:(NSString *)escapedStr];
CFRelease(escapedStr);
// replace spaces with plusses
[mutableStr replaceOccurrencesOfString:@" "
withString:@"%20"
options:0
range:NSMakeRange(0, [mutableStr length])];
resultStr = mutableStr;
}
return resultStr;
}