zoukankan      html  css  js  c++  java
  • iOS app内部生成描述文件(一)看破描述文件

      最近公司安排了一个项目 客户的需求如下

        1、app输入APN参数后 本机生成描述配置文件(也就是不要用apple配置.app ,现在改名叫Apple configurator.app) 

        2、描述文件需要本机直接安装 

      其他的就不说了

      我根本不会,所以网上的搜了一些文章,有用的不多。但是有一篇给了一个重要的提示,是一个PDF的名字:Enterprise_Deployment_Guide_CH.pdf。 这本书apple官网已经没有链接了,至少我没有搜索到。不多度娘还是蛮好的,可以下载到。这里面讲了iPhone配置文件的一些重要参数以及格式。 

      PDF里面的例子看上去是XML写的,不过细细研究一下。XML的格式是苹果自定义的,我猜想是不是Plist。幸运的是,我猜对了。。。

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
     3 <plist version="1.0">
     4 <dict>
     5     <key>PayloadContent</key>
     6     <array>
     7         <dict>
     8             <key>PayloadContent</key>
     9             <array>
    10                 <dict>
    11                     <key>DefaultsData</key>
    12                     <dict>
    13                         <key>apns</key>
    14                         <array>
    15                             <dict>
    16                                 <key>apn</key>
    17                                 <string>1</string>
    18                                 <key>username</key>
    19                                 <string>2</string>
    20                                 <key>password</key>
    21                                 <string>3</string>
    22                             </dict>
    23                         </array>
    24                     </dict>
    25                     <key>DefaultsDomainName</key>
    26                     <string>com.apple.managedCarrier</string>
    27                 </dict>
    28             </array>
    29             <key>PayloadDescription</key>
    30             <string>xxxx</string>
    31             <key>PayloadDisplayName</key>
    32             <string>APN描述文件</string>
    33             <key>PayloadIdentifier</key>
    34             <string>xxxxxx</string>
    35             <key>PayloadOrganization</key>
    36             <string>xxxx</string>
    37             <key>PayloadType</key>
    38             <string>com.apple.apn.managed</string>
    39             <key>PayloadUUID</key>
    40             <string>9A8C3A97-4FDF-49BA-979D-B256ECD73427</string>
    41             <key>PayloadVersion</key>
    42             <integer>1</integer>
    43         </dict>
    44     </array>
    45     <key>PayloadDescription</key>
    46     <string>设备配置的描述文件</string>
    47     <key>PayloadVersion</key>
    48     <integer>1</integer>
    49     <key>PayloadDisplayName</key>
    50     <string>APN</string>
    51     <key>PayloadUUID</key>
    52     <string>DC8AD461-A7E3-4E0C-B656-A556457644AC</string>
    53     <key>PayloadType</key>
    54     <string>Configuration</string>
    55     <key>PayloadOrganization</key>
    56     <string>xxxxx</string>
    57     <key>PayloadIdentifier</key>
    58     <string>xxxx</string>
    59     <key>PayloadRemovalDisallowed</key>
    60     <false/>
    61 </dict>
    62 </plist>

      喜欢尝试的coder,可以在Xcode里面见一个plist或者.mobileconfig的文件 把代码拷贝进去。TIPS:会XML的可以直接看啦,不会的话,右击->Open As->ASCII Property Plist  然后你就见到熟悉的Plist结构啦。。。

    这里面的配置参数 请参考上面提到的PDF。说明一点 配置分两块 一个是Root 也就是最外面的框架,许多参数PDF都有说明;Root里面还有一个配置,结构类似,那是配置的主体 (可以有多个主体配置) , 然后呢 plist是一个NSDictionary,读取的话应该没问题的咯。

      好啦,描述文件我们已经看清了。

      To Be Continue  。。。

  • 相关阅读:
    延迟加载时发生no session错误的解决办法
    零零散散的一些知识点(一)
    零零散散的一些知识点(二)
    自己写的一个日历表
    js复制网址
    load方法在延迟加载时可能出现的错误。
    JSON基本介绍
    JBOSS4.0 JDBC数据源配置大全
    EJB学习笔记一
    Android程序完全退出的方法
  • 原文地址:https://www.cnblogs.com/akforsure/p/4378645.html
Copyright © 2011-2022 走看看