Блокировка iPhone / iPod / iPad, поэтому он может запускать только одно приложение

мы хотели бы "заблокировать" iPhone / iPod / iPad, чтобы пользователь мог запускать только одно приложение (мы разработали это приложение внутри). Я предполагаю, что мы будем смотреть на побег из тюрьмы, а затем замену (?) приложение Springboard по умолчанию.

мы можем это сделать? Если да, то как?

EDIT: Рик опубликовал отличный ответ ниже. Вы можете скачать копию файла mobileconfig с URL-адреса ниже, Если вы посетите этот URL-адрес на устройстве iOS, Safari предложит вам установите профиль. Не забудьте перезагрузить устройство:)

http://ipadhire.co.nz/lockdown.mobileconfig

-

EDIT EDIT: brainray опубликовал ниже и указал, что в iOS 6 есть новая функция под названием "Управляемый доступ", которая позволяет заблокировать устройство для конкретного приложения. Жаль, что эта функция не была доступна год назад-сэкономил бы нам немного хлопот :)

-

EDIT EDIT EDIT: iOS 7 теперь включает полезную нагрузку "App Lock" как часть профиля конфигурации устройства. Из документов Apple: " установив полезную нагрузку блокировки приложения, устройство блокируется в одном приложении, пока полезная нагрузка не будет удалена. Кнопка "Домой" отключена, и устройство автоматически возвращается в указанное приложение после пробуждения или перезагрузки."

подробнее об этом здесь:

https://developer.apple.com/library/content/featuredarticles/iPhoneConfigurationProfileRef/Introduction/Introduction.html#//apple_ref/doc/uid/TP40010206-CH1-SW4

8 ответов


можно поместить iPad или iPhone в режим "Store Demo", чтобы отключить кнопку "Домой" и "проведите пальцем по экрану". Если вы видели iPads в Apple Store под управлением смарт-приложений знак, то вы будете знать, что я имею в виду.

это на самом деле довольно тривиально, чтобы сделать эту работу, все, что вам нужно сделать, это установить правильно отформатированный мобильный config plist по воздуху с веб-сервера.

поставить свой конфиг из интернета все, что вам нужно сделать, это направить iPhone к url, содержащему профиль. Просто откройте ссылку на свой .файл mobileconfig в safari. Если у вас нет веб-пространства, вы можете просто использовать URL-адреса общих папок dropbox или включить веб-сервер mac.

возможно, вы также можете загрузить конфигурацию с помощью IPCU, но я этого не пробовал. этот файл конфигурации не будет загружаться в утилите конфигурации iPhone, поскольку он использует ключи, о которых IPCU не знает. Вы можете объединить это с любой другой конфигурацией предприятия профили у вас есть в игре.

редактировать: @cocoanetics указал, что IPCU не требуется для удаления профиля. Однако обратите внимание, что чтобы вернуть устройство в нормальное состояние, вам нужно будет сделать следующее:

  1. перезагрузка
  2. сначала откройте приложение Настройки - Не открывайте ничего другого, или вам нужно будет перезагрузиться снова
  3. Настройки->Общие->профили->[ваш профиль] удалить он.
  4. перезагрузка

вы должны вернуться к нормальной жизни.

Я включил пример plist, который отключит кнопку home и заблокирует ваше устройство в приложении.

будьте осторожны

после установки этого профиля первое приложение, которое запускается при перезагрузке устройства, будет единственным приложением, которое будет работать до перезагрузки устройства. As @Cawas об этом совершенно отключает возможность возврата на главный экран (если приложение не аварийно завершает работу), в том числе accessibility assistive touch.

обратите внимание, что после установки профиля необходимо перезагрузить устройство (выключить, включить), чтобы оно вступило в силу. Чтобы удалить профиль, подключите устройство к IPCU и удалите его, а затем перезагрузите устройство. Все вернется на круги своя.

<?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>PayloadContent</key>
    <array>
        <dict>
            <key>PayloadDescription</key>
            <string>Disables home</string>
            <key>PayloadDisplayName</key>
            <string>Home Button Lock</string>
            <key>PayloadIdentifier</key>
            <string>com.hbkill.kiosk</string>
            <key>PayloadOrganization</key>
            <string>My Org</string>
            <key>PayloadType</key>
            <string>com.apple.defaults.managed</string>
            <key>PayloadUUID</key>
            <string>B2D02E2D-BAC5-431B-8A29-4B91F71C9FC1</string>
            <key>PayloadVersion</key>
            <integer>1</integer>
            <key>PayloadContent</key>
            <array>
                <dict>
                    <key>DefaultsDomainName</key>
                    <string>com.apple.springboard</string>
                    <key>DefaultsData</key>
                    <dict>
                    <key>SBStoreDemoAppLock</key>
                    <true/>
                    </dict>
                </dict>
            </array>
        </dict>
    </array>
    <key>PayloadDescription</key>
    <string>Disables Home Button</string>
    <key>PayloadDisplayName</key>
    <string>Home Button Lock</string>
    <key>PayloadIdentifier</key>
    <string>com.hbkill</string>
    <key>PayloadOrganization</key>
    <string>My Org</string>
    <key>PayloadType</key>
    <string>Configuration</string>
    <key>PayloadUUID</key>
    <string>614D1FE3-F80D-4643-AF6B-D10C4CC8737A</string>
    <key>PayloadVersion</key>
    <integer>1</integer>
</dict>
</plist>

вы, возможно, перешли от этого, но я думал, что опубликую этот ответ здесь, когда я столкнулся с вопрос, пока я пытался понять, как сделать то же самое.


Это функция iOS 6, которая может быть использована без хакерских попыток. Это называется "Управляемый доступ". Я маленький учебник здесь.

EDIT: в случае, если аккумулятор устройства работает пустым, пока он находится в руках ограниченного пользователя, пользователь может перезагрузить устройство, и оно перезагрузится без управляемого доступа. Однако, если вы решите использовать пароль для устройства, это не должно быть проблемой.


http://www.apple.com/support/ipad/enterprise/

Apple предоставляет инструменты конфигурации предприятия, которые позволяют контролировать, какие приложения разрешены и т. д. Кажется,это делается через управление профилями. См. ссылку для получения более подробной информации


альтернативы (правда гораздо проще) подход, описанный Рик-это:


Я согласен с комментарием от нескольких часов назад: Настройки > Общие > ограничения должны сделать трюк. Если пользователь не может ничего установить, не может получить доступ к Safari или почте, то нет причин когда-либо выходить из приложения.


блокировать доступ в интернет с устройства (MAC-фильтр по wi-fi может сделать трюк). Любая другая проблема, не связанная с интернетом (музыка, игры и т. д.), уже должна быть решена текущей ИТ-инфраструктурой (если ваши разработчики не играют и не слушают MP3 на работе).


Я нашел один способ выйти из этого состояния домашней блокировки. я установил "backgrounder" через cydia, которые заставляют ваше приложение работать в фоновом режиме, если вы нажимаете кнопку "Домой" в течение одной секунды или более. и теперь, когда я нажимаю кнопку "Домой", я возвращаюсь на главный экран.

вот и все.

обратите внимание на longpress.


гм-не был уверен, что это ответ или комментарий, но - решение, которое теперь является частью вопроса, имеет слабость - наши сотрудники службы поддержки использовали это и обнаружили, что если вы "нажмете кнопку питания для "софт-офф", затем удерживайте кнопку "Домой" при включении и слайд, чтобы разблокировать. Иногда iPad запускается на домашней странице, или XXAPPLCATIONXX зависает, а затем выпадает на домашнюю страницу. В любом случае X может получить доступ к домашней странице без пароля."