iOS - 防止删除iPhone配置文件或检查是否已安装

时间:2012-07-11 01:22:27

标签: objective-c ios cocoa configuration-files enterprise

我正在开发一款iOS企业应用程序,该应用程序依赖于手机上的配置文件。不幸的是,用户可以“取消”这个配置文件,这真的搞砸了我们的应用程序。

所以我想知道 a)是否可以防止删除配置文件或

b)有没有办法检查配置文件是否已安装(例如,在运行时,如果不存在,我们可以再次安装)?

2 个答案:

答案 0 :(得分:8)

  • 如果您希望配置文件不被用户篡改/禁用,这是可能的!如果您使用 Apple Configurator 在常规标签中构建.mobileconfig文件,请选择security作为never。请注意:一旦配置文件安装在设备上,除非您恢复设备,否则无法恢复

  • 简而言之,目前没有任何记录方式甚至可以通过编程方式将配置文件(.mobileconfig)文件调用/安装到设备上:所以如果您正在考虑检查配置文件是否存在如果不安装它,它是不可能的(至于目前为止的可用文档) - 如果你确实找到了让我知道的方式

注意:

.mobileconfig个文件只能通过Safari / Mail运行。

这种类似的SO讨论可能有所帮助:Installing a configuration profile on iPhone - programmatically

答案 1 :(得分:1)

可以检查是否安装了.mobileconfig。 你需要做的是:

  1. 创建CA(证书颁发机构)并将其导出为.cer。
  2. 使用已创建的CA颁发证书,导出与.cer。
  3. 一样
  4. 使用Apple Configurator应用程序在证书区域中添加CA .cer。 移动配置配置文件将具有CA .cer。
  5. 颁发证书(第二步)添加到应用包。
  6. 使用安全框架评估( SecTrustEvaluate )发布 第2步证书。