7

次のコードは、プロキシ設定ダイアログを開こうとしています。

 NSAppleScript *a = [[NSAppleScript alloc] initWithSource:@"tell application \"System Preferences\"\nset current pane to pane \"com.apple.preference.network\"\nactivate\nend tell\ntell application \"System Events\" to tell process \"System Preferences\" to tell window 1\n click button -3\nclick radio button -2 of tab group 1 of sheet 1\nend tell"];
    [a executeAndReturnError:nil];  

Mac OS を 10.9 にアップグレードするまでは問題なく動作していました。AppleScript の 2 番目の部分、

 tell application \"System Events\" to tell process \"System Preferences\" to tell window 1\n click button -3\nclick radio button -2 of tab group 1 of sheet 1\nend tell 

それはもう機能しません。誰かが理由を教えてくれたら、とても感謝します。


編集: これが私の .entitlements ファイル情報です。

  <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.security.app-sandbox</key>
    <true/>
    <key>com.apple.security.files.user-selected.read-write</key>
    <true/>
    <key>com.apple.security.network.client</key>
    <true/>
    <key>com.apple.security.network.server</key>
    <true/>
    <key>com.apple.security.scripting-targets</key>
        <dict>
            <key>com.apple.preference</key>
            <array>
                <string>com.apple.preference</string>
                <string>com.apple.systemevents</string>
            </array>
        </dict>
    <key>com.apple.security.temporary-exception.apple-events</key>
        <array>
            <string>com.apple.preference</string>
            <string>com.apple.systemevents</string>
        </array>
</dict>
</plist>
4

3 に答える 3

3

Mavericks の新機能: システム設定アプリ (バンドル ID: 「com.apple.systempreferences」) にはアクセス グループ (「preferencepane.reveal」) があります。したがって、このアクセス グループ資格を使用して、システム設定アプリに公開コマンドを送信できるようにする必要があります。

<key>com.apple.security.scripting-targets</key>
<dict>
    <key>com.apple.systempreferences</key>
    <array>
        <string>preferencepane.reveal</string>
    </array>
</dict>

sdef ツール (man ページを参照) を使用して、スクリプト可能なアプリケーション アクセス グループを決定できます。

Mac App Review チームは、ユーザー定義の設定を変更するスクリプトを作成できるスクリプト作成権限を付与しない可能性が高いです。

于 2014-02-11T18:01:18.073 に答える