锁定iPhone/iPod/iPad,因此它只能运行一个应用程序

wpe*_*rse 58 security iphone ipod jailbreak ipad

我们想要"锁定"iPhone/iPod/iPad,以便用户只能运行一个应用程序(我们已在内部开发此应用程序).我猜我们会关注越狱,然后替换(?)默认的Springboard应用程序.

我们可以这样做吗?如果是这样,怎么样?

编辑: 里克在下面发表了一个很好的答案.您可以从以下URL下载mobileconfig文件的副本,如果您在iOS设备上访问此URL,Safari将提示您安装该配置文件.别忘了重启你的设备:)

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

-

编辑编辑: Brainray发布在下面,并指出iOS 6中有一项称为"引导访问"的新功能,允许您将设备锁定到特定应用程序.遗憾的是这个功能一年前还没有 - 会给我们带来一些麻烦:)

-

编辑编辑编辑:iOS 7现在包含"App Lock"有效负载,作为设备配置配置文件的一部分.来自Apple文档:"通过安装应用程序锁定有效负载,设备将锁定到单个应用程序,直到删除有效负载.主页按钮被禁用,设备在唤醒或重新启动时自动返回指定的应用程序."

在这里阅读更多相关信息:

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

Ric*_*ick 98

可以将iPad或iPhone置于"商店演示"模式,以便禁用主页按钮和滑动到家庭手势.如果您已经在Apple Store中看到运行智能标志应用程序的iPad,那么您就会明白我的意思.

实现这项工作实际上非常简单,您只需要从Web服务器通过无线方式安装格式正确的移动配置plist.

要从网络上提供配置,您只需将iPhone指向包含该配置文件的网址即可.只需在safari中打开指向.mobileconfig文件的链接即可.如果您没有网络空间,则可以使用Dropbox公用文件夹URL或在Mac网络服务器上切换.

您可以使用IPCU加载配置,但我还没试过.此配置文件不会加载到iPhone配置实用程序中,因为它使用的是IPCU不知道的密钥.您可以将此与您正在使用的任何其他企业配置配置文件相结合.

编辑:@cocoanetics指出IPCU不需要删除配置文件.但请注意,要使设备恢复正常,您需要执行以下操作:

  1. 重启
  2. 首先打开设置应用程序 - 不要打开任何其他内容,否则您需要重新启动
  3. 设置 - >常规 - >配置文件 - > [您的配置文件]将其删除.
  4. 重启

你应该恢复正常.

我已经包含了一个示例plist,它将禁用主页按钮并将您的设备锁定到应用程序中.

谨防

安装此配置文件后,重新启动设备时启动的第一个应用程序将是唯一一个将再次重新启动设备的应用程序. 正如@Cawas所说,这完全禁用了返回主屏幕的能力(除非你的应用程序崩溃),包括辅助功能辅助触摸.

请注意,安装配置文件后,必须重新启动设备(关闭电源,打开电源才能使其生效).要删除配置文件,请将设备插入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>
Run Code Online (Sandbox Code Playgroud)

你可能已经离开了这个,但我想我会在这里发布这个答案,因为我在试图找出如何做同样的事情时遇到了这个问题.

  • 重要提示,您的文件必须命名为something.mobileconfig我花了大约一个小时的挫折才意识到这一点.感谢发布Rick,这正是我所需要的. (8认同)
  • 您还可以通过"设置"应用删除个人资料.不需要IPCU. (2认同)

bra*_*ray 23

这是iOS 6的一项功能,无需黑客尝试即可使用.它被称为"引导访问".我的小教程就在这里.

编辑:如果设备的电池在受限用户手中耗尽时,用户可以重新加载设备,并且在没有引导访问的情况下重启设备.但是,如果您选择使用设备密码,这应该不是问题.