アプリケーションの URI スキーム「testscheme」を登録しました。また、URL ハンドラーを登録しまし- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
た NSAppleEventManager
geturl ハンドラーを登録するための以下のコード
NSAppleEventManager *appleEventManager = [NSAppleEventManager sharedAppleEventManager];
[appleEventManager setEventHandler:self andSelector:@selector(handleGetURLEvent:withReplyEvent:) forEventClass:kInternetEventClass andEventID:kAEGetURL];
初めてブラウザーから「testscheme://some parameters」を開くと (アプリケーションが実行されていないとき)、OS がアプリケーションを開きます。
コマンド ライン パラメーターを確認すると、「testscheme://some parameters」がコマンド ライン引数として表示されません。
ただし、アプリケーションが既に実行されているときに同じ URL を開くと、.NET に登録されている GetURL ハンドラーで URL を取得しますNSAppleEventManager
。
初めて起動したときに、コマンド ラインまたは GetURL ハンドラーのいずれかによって、アプリケーションの testscheme url パラメーターを取得したいと考えていました。
ブラウザで開くmailto:frank@wwdcdemo.example.com
と、Mail.appに適切に渡されたパラメータも確認しました。しかし、for Mail.app を使用してコマンド ライン引数を同時にチェックするとps -ef
、アプリ パス以外のパラメーターは表示されません。
これについて私を助けてください。
ありがとうございます。