zoukankan      html  css  js  c++  java
  • 苹果企业账号打包发布APP流程详解

    原文链接:http://www.cnblogs.com/mddblog/p/4718228.html

    一、通过企业账号申请证书

      1 Certificate Signing Request (CSR)文件

      在Mac系统中进入“钥匙串访问”,选择“钥匙串访问”-“证书助理”-“从证书颁发机构请求证书…”,如图1所示:


      —>填写前两项,并选择“存储到磁盘”,如图2所示:

      2 请求Certificate证书

      登录https://developer.apple.com —>MemberCenter—>Certificates, Indentifiers & Profiles—>Certificates,如图3所示:

      —>在图4页面,点击右上角加号,添加一个证书:

      —>选择In-House and Ad Hoc,点继续,如图5所示:

      —>如图6:Choose File选择第1步的CSR文件上传,点击generate生成cer证书,下载后双击安转(需要输入Mac的密码)

      3 App ID

      点击右上角的加号按钮,如图7所示:

      —>有两项需要填(如图8所示),name为描述可以随便填写.bundleID必须与APP的bundleID完全一致(如图9所示)。至于App Services根据自己需要选择。最后点击继续->submit->done

     

     

     

      4 生成最终的Provisioning Profile(企业版不需要device即iPhone的UDID,因此跳过)。

      选择Provisioning Profile->ALL,点击右上角加号:

     

      —>选择刚创建的AppID,点击继续,如图12所示:

      

      —>选择cer证书点击继续.图13 给最终生成的Profile文件命名方便自己识别。然后点击生成,并下载双击打开。至此证书环节完毕

    二、打包ipa,手动生成plist

      这一步开始前,需要将手机插入电脑,并调试选项选择真机。(防止无法Archive),如果没有真机,可以选择iOS Device(这个没有测试)。

      1 打包ipa

      1.1 Edit scheme

      用Xcode打开对应APP。Product->Scheme->Edit scheme,填写Archive name,即为打包后的ipa名字,如图14所示

      1.2 选择对应证书,即刚才生成的证书,如图15所示:

      1.3 归档,Product->Archive,并按图16,图17操作:

      完成之后会生成一个ipa包。

    三、发布APP

      要发布还必须有一个plist文件,在Xcode6之前会自动生成一个plist文件,但是Xcode6之后需要我们自己创建plist,文章最后提供一个plist模板,复制并重命名为plist后打开根据提示操作即可.图18为plist的截图,可以看到有三个URL,分别存放ipa,大小图标。下图的1(ipa)、2(大图)、3(小图)填写我们自己生成的URL,即将ipa和大小图标放在我们自己的服务器,当用Safari打开plist时会根据填的plist里面的1、2、3对应的URL来下载安装ipa、大小图标。

      那么plist放在哪里呢(即Safari打开plist的URL是多少呢)?苹果对plist存放地址有要求,必须是https的,如果没有https网站,我们可以把plist放在https://git.oschina.net。具体做法就是在上面创建一个项目(不能是私人的),然后将编辑好的plist传到项目,最后将plist的URL赋值下来,比如https://git.oschina.net/waitwait/companytest/blob/master/MDDTest.plist。然后我们在Safari中输入:itms-services:///?action=download-manifest&url=https://git.oschina.net/waitwait/companytest/blob/master/MDDTest.plist就可以安装了(一定要将红色字符串和蓝色URL一起输入)。

      Safari操作的具体流程是:

       1 Safari解析我们输入的那一串字符串,找到plist文件

       2 根据plist文件里面提供的信息下载并安装ipa包,还会访问大小图标,大小图标在ipa包正在下载时显示,当下载完毕后显示程序自带的图标

      下载安装后,如果想打开程序还需要在手机 设置->通用->描述文件与设备管理(不同系统可能名字不一样) 里面选择相应的证书信任后,方可打开程序

    那么,如何获取别人的APP,或者避免别人下载自己的APP呢?

    注意,公用的https链接会被封掉,可以试试github,百度云,七牛云存储等等。最好还是用自己的

    下面是plist模板的文本形式,将其复制到文本然后重命名.plist,用Xcode打开按照提示编辑即可。

     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>items</key>
     6     <array>
     7         <dict>
     8             <key>assets</key>
     9             <array>
    10                 <dict>
    11                     <key>kind</key>
    12                     <string>software-package</string>
    13                     <key>url</key>
    14                     <string>ipa包URL(必填)</string>
    15                 </dict>
    16                 <dict>
    17                     <key>kind</key>
    18                     <string>full-size-image</string>
    19                     <key>needs-shine</key>
    20                     <false/>
    21                     <key>url</key>
    22                     <string>下载时大图(非必填)</string>
    23                 </dict>
    24                 <dict>
    25                     <key>kind</key>
    26                     <string>display-image</string>
    27                     <key>needs-shine</key>
    28                     <false/>
    29                     <key>url</key>
    30                     <string>下载时小图(非必填)</string>
    31                 </dict>
    32             </array>
    33             <key>metadata</key>
    34             <dict>
    35                 <key>bundle-identifier</key>
    36                 <string>BundleID(必填)</string>
    37                 <key>bundle-version</key>
    38                 <string>1.0</string>
    39                 <key>kind</key>
    40                 <string>software</string>
    41                 <key>subtitle</key>
    42                 <string>副标题(非必填)</string>
    43                 <key>title</key>
    44                 <string>应用名(必填)</string>
    45             </dict>
    46         </dict>
    47     </array>
    48 </dict>
    49 </plist> 
  • 相关阅读:
    数据结构与算法
    ROS 机器人技术
    我常用的 VSCode C:C++ 插件!
    Ubuntu 常用的录屏、截图、Gif 软件!
    从 0 开始机器学习
    Word 设置页码从指定页开始的详细步骤!
    Ubuntu16.04 更新 ruby-2.6!
    配置 Git 不用每次 push 都输入密码!
    解决 rubygems.org 无法访问的问题!
    PHP 反序列化漏洞入门学习笔记
  • 原文地址:https://www.cnblogs.com/mddblog/p/4718228.html
Copyright © 2011-2022 走看看