Используя низкоуровневые предпочтения API

Существуют некоторые случаи, где использование высокоуровневого API не является надлежащим. Если Вы создадите своего рода “инструмент помощника”, работающий от имени другого приложения или приложения, хранящего предпочтения других приложений, то необходимо будет использовать низкоуровневые предпочтения API для записи в предпочтения другого приложения. Перечисление 1 показывает Вам, как сделать это.

Перечисление 1  Пишущий значение в предпочтения другого приложения.

CFStringRef appID = CFSTR("com.apple.anotherapp");
CFStringRef defaultTextColorKey = CFSTR("defaultTextColor");
CFStringRef colorBLUE = CFSTR("BLUE");
 
// Set up the preference.
CFPreferencesSetValue(defaultTextColorKey,
                colorBLUE,
                appID,
                kCFPreferencesCurrentUser,
                kCFPreferencesAnyHost);
 
// Write out the preference data.
CFPreferencesSynchronize(appID,
                kCFPreferencesCurrentUser,
                kCFPreferencesAnyHost);

Обратите внимание на то, что этот пример пишет в предпочтения другого приложения. Нет никакого способа получить пакет ID непосредственно из другого приложения, таким образом, это необходимо для hardcode идентификатор приложения.