goo*_*ate 18 iphone privacy objective-c ios xamarin
题
如何在iPhone上自动化引导访问模式?我需要自动启用和删除此功能
背景 来自爱荷华州的这个应用程序使用iOS应用程序来显示您的驾驶执照.问题是,将手机交给当局后,他们可以完全访问该设备.
如果我有这个或类似的应用程序的源代码,如何在切换出临时"Kiosk模式"时需要密码,以便手机或(理想情况下)无法提供照片,电子邮件或短信来自USB.
我找到了类似Android的解决方案,但现在正在寻找iOS解决方案
jrt*_*ton 45
您可以在应用内输入和退出指导访问模式.但是,为此,必须对设备进行监督,并安装MDM配置文件,该应用程序的应用程序包ID可以请求引导访问模式的应用程序列表(关键是autonomousSingleAppModePermittedAppIDs.
完成后,要输入指导访问权限,请执行以下操作:
UIAccessibility.requestGuidedAccessSession(true){
success in
print("Request guided access success \(success)")
}
Run Code Online (Sandbox Code Playgroud)
在iOS 7下面
您无法以编程方式将iOS设备置于Kiosk模式,也无法在您的应用上执行任何操作以使其成为Kiosk应用程序(您无法以编程方式禁用主页按钮事件,也无法在应用中获取事件)
要使设备在Kiosk模式下工作,您可以使用Apple的Guided Access.但是您无法以编程方式启用它.有关更多信息,请点击此处
iOS 7和7+
您可以使用:
void UIAccessibilityRequestGuidedAccessSession(BOOL enable, void(^completionHandler)(BOOL didSucceed))
Run Code Online (Sandbox Code Playgroud)
参考UIAccessibilityRequestGuidedAccessSession
UIAccessibilityRequestGuidedAccessSession
将应用程序异步转换为单应用程序模式或从单应用程序模式转换. 宣言
迅速
func UIAccessibilityRequestGuidedAccessSession(_ enable:Bool,_ completionHandler:((Bool) - > Void)!)
Objective-C的
void UIAccessibilityRequestGuidedAccessSession(BOOL enable,void(^ completionHandler)(BOOL didSucceed)); 参数启用
指定YES可将设备置于此应用程序的单应用程序模式,或选择NO以退出单应用程序模式.
completionHandler
通知您的应用程序操作成功或失败的块.该块采用以下参数:didSucceed
如果是,则应用程序成功转换到Single App模式或从Single App模式转换.如果为"否",则应用或设备不符合单一应用模式的条件,或者存在其他错误.讨论
您可以使用此方法将应用程序锁定为单一应用程序模式,并在以后将其从该模式中释放.例如,测试应用程序可能会在测试开始时进入此模式,并在用户完成测试时退出.仅对使用移动设备管理(MDM)监督的设备支持进入单一应用程序模式,并且必须通过MDM为此模式启用应用程序本身.您必须平衡每个呼叫以进入单一应用程序模式,并调用退出该模式.
由于进入或退出单应用程序模式可能需要一些时间,因此此方法异步执行并使用completionHandler块通知您结果.进口声明
导入UIKit可用性
适用于iOS 7.0及更高版本.
您还可以使用UIAccessibilityIsGuidedAccessEnabled检查是否启用了Guided Access.
配置配置文件:借助移动设备管理(MDM),我们可以创建企业配置文件并将其使用任何MDM(例如,众所周知的MobileIron)或借助任何iPhone配置实用程序将其推送到设备。安装此配置文件后,在重新启动设备时启动的第一个应用程序将是唯一可以运行的应用程序,直到再次重新启动设备为止。
引导访问(iOS 6及更高版本):从iOS 6开始,我们可以使用两种方法来实现此目的,即引导访问和监督访问。这两种方法都具有可访问性控制功能,例如允许用户限制对其设备的访问。仅当我们拥有设备的完全访问权限时,才能实现此目的。
我们可以使用UIKit方法UIAccessibilityRequestGuidedAccessSession在iOS 7中以编程方式在iOS App中设置Kiosk模式。根据Apple开发人员文档,“ UIAccessibilityRequestGuidedAccessSession将异步将应用程序切换到单应用程序模式或从单应用程序模式转换”。
如苹果开发人员文档中所述:
UIAccessibilityRequestGuidedAccessSession
Run Code Online (Sandbox Code Playgroud)
异步将应用程序切换到单应用程序模式或从单应用程序模式转换。
void UIAccessibilityRequestGuidedAccessSession(BOOL enable, void(^completionHandler)(BOOL didSucceed))
Run Code Online (Sandbox Code Playgroud)
参量
enable
Run Code Online (Sandbox Code Playgroud)
指定“是”可使设备进入此应用程序的“单应用程序”模式,或“否”退出单应用程序模式。
completionHandler
Run Code Online (Sandbox Code Playgroud)
通知您的应用操作成功或失败的块。该块采用以下参数:
didSucceed
Run Code Online (Sandbox Code Playgroud)
如果为“是”,则应用程序成功切换到“单应用程序”模式或从“单应用程序”模式转换为成功。如果为“否”,则该应用程序或设备不符合“单个应用程序”模式的条件,或者出现了其他错误。讨论您可以使用此方法将您的应用程序锁定为“单应用程序”模式,并在以后从该模式中释放它。例如,应试应用可能会在测试开始时进入此模式,并在用户完成测试后退出。仅使用移动设备管理(MDM)进行监督的设备支持进入单一应用程序模式,并且MDM必须为该模式启用应用程序本身。您必须平衡每个呼叫以进入Single App模式与退出该模式的呼叫。由于进入或退出“单应用程序”模式可能需要一些时间,因此此方法异步执行,并使用通知您结果completionHandlerblock。
Availability
Available in iOS 7.0 and later.
Run Code Online (Sandbox Code Playgroud)
也可以看看
UIAccessibilityIsGuidedAccessEnabled
Run Code Online (Sandbox Code Playgroud)
申报于
UIAccessibility.h
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12505 次 |
| 最近记录: |