Ответ 1
Для приложения/права на джейлбрейк вам нужно сделать что-то вроде этого. Сначала создайте файл с именем entitlements.xml
(или что вам угодно):
<!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.backboard.client</key>
<true/>
</dict>
</plist>
Если вам нужно, вы можете добавить больше. Этот примерный файл предоставляет приложение только com.apple.backboard.client
.
На самом деле не важно , где вы помещаете этот файл. Ключ:
- Вам нужно будет изменить файл Xcode
SDKSettings.plist
, как показано здесь.CODE_SIGNING_REQUIRED
должен быть установлен наNO
. - Не кодируйте подписи своего приложения в Xcode. В Настройки сборки убедитесь, что для идентификатора знака кода установлено значение Не использовать код.
- После того, как вы Сстроили ваше приложение для устройства iOS (не Simulator!), перейдите в каталог на вашем Mac, где находятся выходные файлы. Для приложения с именем
HelloWorld
вы ищете папкуHelloWorld.app
. Он может отличаться в зависимости от вашей конфигурации, поэтому я не буду пытаться сказать вам, где это. Если есть сомнения, используйте команду командной строкиfind
. - Загрузите
ldid
, предварительно построенный из этого местоположения или в качестве источника здесь. - Скопируйте файл entitlements.xml в тот же каталог, где находится
HelloWorld.app
. (Примечание: у вас нет , чтобы иметь его здесь... если вы поместите его в другое место, просто отредактируйте командную строку, которую я покажу вам ниже). - Измените каталог в каталог, в котором находится файл entitlements.xml.
- Поддельный код с этой командой:
$ldid -Sentitlements.xml HelloWorld.app/HelloWorld
После этого вам нужно будет перенести всю папку HelloWorld.app, чтобы установить приложение на свое устройство. Там много способов сделать это, и похоже, что у вас уже есть способ.
У меня есть вся эта настройка процесса с помощью script, чтобы было проще.
Примечание: Я не утверждаю, является ли это право правильным правом использовать для вызова BKSDisplayServicesSetScreenBlanked()
на iOS 6. Я этого не тестировал. Я знаю, что это право позволяет вам использовать SBDimScreen()
для более низких версий iOS. Но этот ответ - это просто описание , как, чтобы добавить такой вид права на приложение для джейлбрейка.