2009-03-29 8 views

答えて

36

-[NSUserDefaults registerDefaults:]を送信すると、既定のユーザー既定でWebKitDeveloperExtrasYESに設定されます。もちろん、アプリ全体に適用されます。

ユーザーはNOに変更することができますので、常にそれが重要であると想定しないでください(たとえば、コンテキストメニューのカスタマイズ時)、常にチェックしてください。

警告:この設定は必ずしも要素インスペクタを有効にするとは限りません。 Appleは、メニューバーのDebugメニューを制御するために将来拡張するかもしれない。これは容認できない危険性があるかもしれません。

+0

これは機能します。驚くばかり!サイドノート:最初のロード時に設定を行います。これは、アプリが再起動されるまで有効になりません。これを回避する方法がわからない - おそらくデフォルトプロパティファイルを提供する... – user53937

+1

loglibrarian:それ以前に設定してください。 applicationWillFinishLaunching:が十分でない場合は、main()関数で設定します。 –

+0

私はここに私の運を押していることを知っているが、プログラムでWebインスペクタを起動する方法はありますか?おそらくプライベートなAPIですか? – user53937

1

私はそうしようとしましたが、Webインスペクタが表示されませんでした。

[[NSUserDefaults standarduserDefaults] registerDefaults:[NSDictionary dictionaryWithObject:[NSNumber numberWithBool:YES] forKey:@"WebKitDeveloperExtras"]]と同じではありませんか?

+0

マイナス]正面には、はい。 –

+0

ありがとうございます。 webkit-devメーリングリストから私は別の応答を受けました。 これは+ initializeのようにできるだけ早く実行するか、Unixプロンプトで発行する必要があります。 デフォルトはcom.yourcompany.programnameを書き込みますWebKitDeveloperExtras -bool true –

8

私の場合(MacOSX 10.6.5)は動作しませんでした。

は私のWebView WindowControllerのwindowDidLoad方法で次の操作を行う必要がありました:...それを行うには

 
/* Initialize webInspector. */ 
[[NSUserDefaults standardUserDefaults] setBool:TRUE forKey:@"WebKitDeveloperExtras"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 
+0

これを有効にするには、再起動が必要でした。 Webviewがインスタンス化される前に、これが必要なのでしょうか? – uchuugaka

37

REALLY簡単な方法を端末内にある....⌘⬆☺

defaults write com.yourcompany.yourbundleid WebKitDeveloperExtras TRUE

(OSX 10.8で、代わりdefaults write com.yourcompany.yourbundleid WebKitDeveloperExtras -bool trueを使用)。これは動作します前あなたMUST YOUR特定の "アプリケーション" に変更com.yourcompany.yourbundleid(またはそれが何であれ、同社のアプリbundle ID**

このことについての素晴らしい事:

NOTE! ... いいえいいえを忘れてを取り出して、それをオフにしたり、コメントアウトしたりしてください ...これはローカル設定です...そして、どのWebkit対応アプリにも設定できます...開発者メニューなどが表示されない場合WebViewの上(クリック)☝..

ないフレットと "インスペクタを表示" に進みます。

また、同じラインに沿って、そうかわからない、以下も同様何かを行うことができます..しかし、私はそれを試してみましたhaventは。..

defaults write com.yourcompany.yourbundleid IncludeDebugMenu 1

+0

私は 'defaults write com.yourcompany.yourbundleid WebKitDeveloperExtras -bool true'を使う必要がありました。 – thomthom

22

アップルrecommends

defaults write com.example.myApp WebKitDeveloperExtras -bool true 

しかし、私が知る限り、アプリケーションをサンドボックスから実行している場合(開発のいくつかの段階で行う必要があるかもしれません)、これはもう機能しません。NSKlobalDomainのWebKitDeveloperExtrasキーの値を設定することは、この問題を解決するために役に立ちます。

defaults write NSGlobalDomain WebKitDeveloperExtras -bool true 
関連する問題