2017-03-16 4 views
-1

iOSアプリケーションをURLから開きたいのですが、NSURLを資金アプリケーションに入れたときにprint()が動作しません。Appendlegate print()が動作しません

そのが呼び出さ得ていないので、

import UIKit 

@UIApplicationMain 
class AppDelegate: UIResponder, UIApplicationDelegate { 
    var window: UIWindow? 
    var openUrl:NSURL? //This is used when to save state when App is not running before the url trigered 


    func application(_ application: UIApplication, openURL url: NSURL, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
    //print("Host: \(url.host!)") 
    //let url = url.standardized 
    //NotificationCenter.default.post(name: NSNotification.Name(rawValue: "HANDLEOPENURL"), object:url!) 
    print("bbb") 
    return true 
    } 
} 
+0

を使用し、iOS版にウェブからのリンクに対応するために? –

+0

あなたは何を意味していますか? "application print()は動作しません。"あなたは何を見たいですか?あなたは実際に何を見ていますか? –

+0

@AshleyMillsのコメントに加えて、警告/問題はありますか?このエラーを再現できません –

答えて

1

は、その署名とはAppDelegate方法はありません、ここで参照してください

func application(_ application: UIApplication, openURL url: NSURL, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool 

正しいメソッドシグネチャは次のとおりです。

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool` 

あなたがいますこの方法と混同する

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool 

EDIT あなたは `Foundation`の代わりに、迅速を使用する理由

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool { 
+0

このアプリケーションでは印刷できません(アプリケーション:UIApplication){ print( "bbb") } – tumaz

+0

@tumaz iOSアプリケーション開発とSwiftの基本を確認する必要があると思います。 AppDelegateの任意のメソッドが呼び出されるとは期待できません。これは、ドキュメントを確認してください – dmorrow

+0

を文書化したものに準拠する必要がありますhttps://developer.apple.com/reference/uikit/uiapplicationdelegate – tumaz

関連する問題