Корневые привилегии для подстройки мобильного субстрата
Я разрабатываю твик, который, когда интернет доступен, что-то делает. Это делается с помощью API достижимости Apple. Твик загружается в SpringBoard. У меня есть файл.plist, содержащий некоторую информацию в /MyTweaksFolder
, Я могу прочитать это, но я не могу изменить или изменить это. Я предполагаю, что это связано с привилегиями SpringBoard
,
Мой вопрос: как я могу предоставить root-доступ в твике SpringBoard?
1 ответ
Вы не предоставляете привилегии для настройки, вы предоставляете их процессу, в который загружается настройка (SpringBoard в вашем случае). Но я бы не рекомендовал это делать. Я помню, как пытался, и SpringBoard не работал должным образом.
Если вам нужны привилегии root, вы должны создать демона. Как я понимаю, вы подключаете методы SpringBoard. Так что это будет твик и демон. Когда вам нужно что-то сделать от имени пользователя root, ваш твик отправит уведомление демону. Вы даже можете получить правильный ответ. Например, CFMessagePort
API позволяет довольно легко выполнять IPC с вашим демоном и даже синхронно получать ответ для упрощения кода. Вам понравится просто вызвать функцию.
Это все для общего случая. В вашем случае вам просто нужно поместить ваш файл.plist в другой каталог, где у SpringBoard есть права на запись. Хорошее место будет какой-то каталог в /var/mobile/
, Найдите тот, который работает, и поместите туда.plist.