1

iPhone のコール ウェイティング機能 ( にあります) をプログラムでオン/オフしたくありませんSettings > Phone > Call Waiting

私が理解したのは、電話設定がここにあるクラスの-setCallWaitingEnabled:specifier:メソッドを呼び出すことです。私はそれを見つけました:PhoneSettingsCallWaitingController/System/Library/PreferenceBundles/MobilePhoneSettings.bundle/Call Waiting.plist

<?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>id</key>
    <string>com.apple.preferences.phone.call-waiting</string>
    <key>items</key>
    <array>
        <dict>
            <key>cell</key>
            <string>PSGroupCell</string>
        </dict>
        <dict>
            <key>cell</key>
            <string>PSSwitchCell</string>
            <key>get</key>
            <string>callWaitingEnabled:</string>
            <key>label</key>
            <string>Call Waiting</string>
            <key>set</key>
            <string>setCallWaitingEnabled:specifier:</string>
        </dict>
    </array>
    <key>title</key>
    <string>Call Waiting</string>
</dict>
</plist>

バンドルを手動でロードし、上記のクラスを初期化し、私が言ったメソッドを呼び出しましたが、何も起こりません。コードは次のとおりです。

NSBundle *b = [NSBundle bundleWithPath:@"/System/Library/PreferenceBundles/MobilePhoneSettings.bundle"];
BOOL success = [b load];
if (success)
{

    NSLog(@"\n\n\n\n Bundle load successfull! \n\n\n\n ");
    Class PhoneSettingsCallWaitingController = NSClassFromString(@"PhoneSettingsCallWaitingController");
    id tc = [[PhoneSettingsCallWaitingController alloc] init];

    [tc setCallWaitingEnabled:0 specifier:0];

} else NSLog(@"\n\n\n\n Bundle load failure! \n\n\n\n ");

正しい道にいるかどうかはわかりません。キャッチホン設定をオン/オフする別の方法はありますか?

4

1 に答える 1