2017-11-14 17 views
0

カスタムURLスキームを処理して1つのアプリを別のアプリに誘導するにはどうすればよいですか?例えばinstagram://user?username=someusernameは、ユーザー名を使用してユーザープロファイルにユーザーを直接誘導します。私は似たようなものを作る必要があります。カスタムURLスキーム

私はapplication(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Boolapplication(_ application: UIApplication, handleOpen url: URL) -> Boolをチェックアウトしましたが、実装しようとすると赤い線が引かれているように見えます。また、ブラウザからURLを使ってアプリを開くと、呼び出されないようです。一例として、このURLを使って

+0

あなたが使用すべき方法警告は通常、あなたに伝え方法は廃止された場合代わりに。 – EmilioPelaez

+0

@EmilioPelaez警告が表示されない – luke

+0

あなたはそれが非難されているのを見て、それはおそらく今何を使うべきかを言います。または、あなたはUIApplicationのためのドキュメントをgoogleすることができます。 – EmilioPelaez

答えて

0

appName://?id=12345

あなたはかつてのようなURLを使用して起動あなたのアプリで何かを行うことができます

ので

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool { 
    let urlComponents = URLComponents(url: url, resolvingAgainstBaseURL: false) 
    if let items = urlComponents?.queryItems as [NSURLQueryItem]?, 
     (url.scheme == "appName") { 
     if items.first?.name == "id", 
      let id = items.first?.value { 
      print(id) // prints 12345 to console 
      // do something with the id, possibly present/push a controller for the user 
     } 
    } 
    return false 
} 
関連する問題