0

iOS アプリがあり、同じ URL スキームを使用してサファリや他のアプリから開きたいのですが、どうすればよいですか?

4

1 に答える 1

0

これは私がこのブログに書いたエントリです: Safari からアプリケーションを起動する方法 http://appleiostips.wordpress.com/2011/07/27/launch-app-from-safari/

ファイル myapp-Info.plist を XCode で開く必要があります。次に、URL タイプという新しい種類の行を追加し、内部に項目 0 を追加します。アイテム内に URL スキームを追加します。この URL スキームでは、アプリケーションに登録する名前を記述します。この例では、 myapp を使用しました。

次に、iOS が myapp://withsomestuff へのリンクを見つけると、アプリケーションが起動され、アプリケーション デリゲート内で handleURL メソッドが呼び出されます。

- (BOOL)application:(UIApplication*) application handleOpenURL:(NSURL*) url
Inside this method you can parse the url to obtain aditional parameters.

    - (BOOL)application:(UIApplication*) application handleOpenURL:(NSURL*) url{
    if (!url) return NO;
    NSString* urlString=[url absoluteString];
    NSLog(@”Received URL %@”,urlString);
    NSString *loginCmd=@”myapp://login?”;
    //Expects to receive myapp://login?user_name&password
    if ([urlString hasPrefix:loginCmd]){
        NSRange rangeAmp=[urlString rangeOfString:@"&"];
        if (rangeAmp.location>([loginCmd length]+1)){
            NSString* password=[urlString substringFromIndex:rangeAmp.location+1];
            NSRange userRange={[loginCmd length],rangeAmp.location-[loginCm length]};
            NSString* user=[urlString substringWithRange:userRange];
        }
    }
returnYES;
}
于 2012-08-30T07:13:53.467 に答える