0

我開發OSX的應用程序並處理自定義URL在我的應用程序NSApp表示自定義URL處理

<a href="openApp:[email protected]">Open My profile!</a> 

當應用程序正在運行我能進去

- (void)handleGetURLEvent:(NSAppleEventDescriptor *)event withReplyEvent:(NSAppleEventDescriptor *)replyEvent{ 


} 
事件處理

但是,當應用程序未運行:它確實來AppDidFinishedLaunching,我無法檢測其調用是否正常或自定義URL,

應用程序啓動時有什麼方法檢測嗎?

在此先感謝

+0

可能重複[如何與處理默認URL方案](http://stackoverflow.com/questions/1991072/how-to-handle-with-a-default-url-scheme) –

+0

我在這裏回答了這個問題:http://stackoverflow.com/questions/ 1991072/how-to-handle-with-a-default-url-scheme。請注意,在沙盒應用程序與非沙盒應用程序中安裝方案處理程序時存在細微差異。當啓用沙箱時,應該在applicationWillFinishLaunching中安裝處理程序:,否則在applicationDidFinishLaunching中安裝處理程序 –

回答

0

無需實現-applicationDidFinishLaunching:的,你應該實現更現代的委託方法-application:didFinishLaunchingWithOptions:。然後,您可以檢查launchOptions字典並查找密鑰UIApplicationLaunchOptionsURLKey。如果您在字典中找到該密鑰,則會啓動您的應用以響應自定義網址。 URL本身是與字典中的該鍵相對應的值。

您可以使用同樣的方法(尋找不同的鑰匙,當然)說,如果你的應用程序是在響應推出了一個通知,定位事件等

+0

我在OSX上,而不是在iOS上,並且沒有獲取-application:didFinishLaunchingWithOptions :.相當於OSX – Amitg2k12

+0

Doh - 對此感到抱歉。等我更新答案時繼續。 – Caleb