2013年7月4日 星期四

定義一種協定(scheme)讓其他app可以呼叫自己寫的app

一,在.plist中的URL types中的URL schemes 加入自己想要的協定名稱,例如myApp
 (非必要)在URL identifier加入自已想要的identifier文字,例如me.spot0206

二,在AppDelegate實作- (BOOL)application:(UIApplication *)applicationhandleOpenURL:(NSURL*)url {   // Do something withthe url here },用來接收回傳的訊息


三,即可以在其他APP中被呼叫,你可以用safari的網址列來自行測試。
 例如輸入,myapp://?foo=1&amp

四,這裡打的網址就會被接收為下面的url
-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    if (!url) {  return NO; }

    NSString *URLString = [urlabsoluteString];
    [[NSUserDefaultsstandardUserDefaults] setObject:URLString forKey:@"url"];
    [[NSUserDefaultsstandardUserDefaults] synchronize];
    return YES;
}

沒有留言:

張貼留言