1
我想打開一個應用程序,並從它返回一些返回值,如成功或失敗。怎麼做?如何使用x-callback-url?
從文檔
[scheme]://[host]/[action]?[x-callback parameters]&[action parameters]
問題1:
我應該在[動作參數]什麼地方呢?這是強制性的嗎?
發送應用甲
- (IBAction)openReceivingAppBButtonPressed:(id)sender {
NSString *xcallBack = @"x-callback-url/payment?&amount=1.00";
NSString *URLEncodedText = [xcallBack stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *ourURL = [NSURL URLWithString:[@"receivingAppB://" stringByAppendingString:URLEncodedText]];
if([[UIApplication sharedApplication] canOpenURL:ourURL]){
[[UIApplication sharedApplication] openURL:ourURL];
}
}
接收應用B
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
[self returnToSendingAppAWithResponse];
return true;
}
-(void)returnToSendingAppAWithResponse{
NSString *xcallBackSuccess = @"success";
NSString *URLEncodedText = [xcallBackSuccess stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *ourURL = [NSURL URLWithString:[@"sendingAppA://" stringByAppendingString:URLEncodedText]];
if([[UIApplication sharedApplication] canOpenURL:ourURL]){
[[UIApplication sharedApplication] openURL:ourURL];
}
}
問題2:
在接收的應用程序,是它正確調用另一個的OpenURL調用發送應用程序A返回成功消息?
我能夠實現我想要的。但只是懷疑這是否是使用x-callback-url的正確方式。 x-callback-url似乎對我無用。