使用MDM通过NSUserDefaults配置企业应用程序

 黛滢陌陌乄 发布于 2023-02-08 13:38

我在10.9上的OS X Server 3.0.1中使用Profile Manager将我的企业应用程序推送到运行iOS7的受管设备.这很好用,我也可以推送设备配置设置.

我的障碍是如何获取Apple的示例项目ManagedAppConfig中提供的信息,并将其应用于由Profile Manager分发的应用程序.

ManagedAppConfig提供了一个简单的plist,它应该用于将数据放入应用程序的NSUserDefaults,然后用于app配置; 但是,没有给出如何使用MDM将此数据字典导入NSUserDefaults的方向.

我显然错过了一些关于如何将数据发送到托管应用程序的NSUSerDefaults的信息,但到目前为止,我的搜索一直没有结果.是否可以使用Profile Manager进行此操作?我还没有找到OS X Server的另一种方法吗?

以下是Apple关于ManagedAppConfig的文档的引用:

"ManagedAppConfig"演示了如何在iOS应用程序中实现托管应用程序配置和反馈支持.此功能允许移动设备管理(MDM)服务器将字典下载到托管应用程序的NSUserDefaults中,以便远程配置设置.

这是带有两个数据的示例plist,它们以某种方式放置在应用程序的NSUserDefaults中:





    serverURL
    http://developer.apple.com/
    disableCloudDocumentSync
    


NSUserDefaults的文档甚至通过MDM提及配置,但没有给出具体细节.

如果您的应用程序支持托管环境,则可以使用NSUserDefaults对象来确定管理员管理哪些首选项以使用户受益.托管环境对应于计算机实验室或教室,管理员或教师可能希望以特定方式配置系统.在这些情况下,教师可以建立一组默认首选项并强制用户使用这些首选项.如果以这种方式管理首选项,则应用程序应通过禁用任何适当的控件来阻止用户编辑该首选项.

我的下午一直在花费这些难以捉摸的信息而没有成功,所以我请求SO社区的帮助.任何人都可以指出我需要使用MDM将数据字典粘贴到NSUserDefaults中的信息吗?

非常感谢.

3 个回答
  • 阅读配置(swift 3):

    if let managedConf = UserDefaults.standard.object(forKey: "com.apple.configuration.managed") as? [String:Any?] {
        if let serverURL = managedConf["serverURL"] as? String{
            return serverURL
        }
    }
    if let serverURL = Bundle.main.object(forInfoDictionaryKey: "serverURL") as? String {
        return serverURL
    }
    return  "https://apple.com/"
    

    如您所见 - 应用程序需要手动启用从MDM捆绑包配置中读取.

    P,S:只有托管应用才能获得这些配置.

    2023-02-08 13:40 回答
  • 我写了一篇关于如何从Apple测试ManagedAppConfig的小博客文章.

    http://tomasmcguinness.com/2014/03/07/exploring-apples-managedappconfig-demo/

    披露:这篇文章描述了我写的www.testmdmapp.com.

    2023-02-08 13:40 回答
  • 显示从MDM服务器下推的托管应用程序配置更改,NSUSerDefaults以便您可以添加一个观察者以提醒您有任何更改NSUserDefaults.从MDM服务器下推的托管应用程序配置字典存储在名为的密钥中:com.apple.configuration.managed

    您的应用程序还可以将包含反馈的字典发送到MDM服务器.作为反馈发送回MDM服务器的字典必须存储在此密钥中com.apple.feedback.managed

    为了测试所有这些,您需要一个由MDM服务器管理的设备,并且该应用程序必须由支持ApplicationConfiguration设置和ManagedApplicationFeedback命令的MDM服务器安装.

    示例应用程序的readme.txt文件建议查看WWDC 2013会话301"扩展您的企业和教育用途的应用程序"以获取此应用程序的演示.

    2023-02-08 13:42 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有