苹果开发
     分类:Dev     有: 0 条评论

苹果开发

     分类:Dev     有: 0 条评论

开发者账户申请

个人、公司账户是99美元一年,app可以发布到APP Store;企业账户是app在内部使用,不可以发布到APP Store,年费299美元。

1、先注册Apple ID,绑定手机、安全邮箱、信用卡(visa卡),并开启双重认证,注意不是两步认证(https://support.apple.com/zh-cn/HT204915
如果是初次注册应该可以直接开启双重认证;但修改过安全设置后需要等待5-7天时间才可以修改安全认证。

2、注册邓白氏编码
申请网址:https://developer.apple.com/enroll/duns-lookup/

A. 选择国家China,这个时候会弹出“请使用罗马字符,不支持其他字符集。”,不用管它,直接填写英文就可以了。
B. Legal Entity Name: 公司完整的英文名
C.Tradestyle or DBA:不用填写
D. Headquarters address of your company/organization和Mailing address of your company/organization分别是公司总部地址和公司接收邮件的地址,如果一样就填写相同地址。
Street Address 街道详细地址 CIty/Town 市或者区 State/Province 直辖市或者省 Postal Code 邮编
Phone Number:你自己的手机号
E. your work contact information你工作的联系信息
Given Name 姓
Family 名字
Job Title 工作职称
Phone Number:你自己的手机号
Work Email 你的邮箱

注意:以上的信息一定要用英文并且一定要真实

准备的资料:

公司中文名称:公司名
英文公司名:[英文名]
中文办公地址:
英文办公地址:
邮编:
企业类型:民营
是否是独立企业:是
公司英文简称或英文商标:无
主营业务:信息系统设计、集成、运行维护。
员工人数:40
苹果联系人:
   姓名:
   性别:男
   职务:
   电话:

提交资料后需要等待两三天,期间会有电话或邮件(或者需要补充资料)。之后会收到邮件,含邓白氏编码,这个过程大约1-7天左右。

3、按以下步骤进行开通账户
https://blog.csdn.net/a378732680/article/details/43272431


证书申请

全新申请

所需证书说明:


1、创建App ID(一个应用一个)
登录开发者账户
https://developer.apple.com

选择Certificates, IDs & Profiles

在左侧菜单选择App IDs,然后点击右上角的添加图标,
在接下来的页面里面填写App ID描述,
在App ID Suffix栏选择Explicit App ID,这里填写的ID即是控制台上传证书页面需要填写的APP IDs(Build ID每个应用都是唯一的,一个ID就代表一个应用,各大平台上传都需要这个Build ID,要记录下来)
在App Services中选择服务功能,勾选上Push Notifications项,点击Continue进入下一步。



在新页面中点击Submit,然后点击Done,创建App ID成功。


2、云编译p12证书制作
若开发账号下已经存在certificate了可以跳过创建的步骤,一个账号下有一个certificate即可,多个应用可以共用(一个账户下有一个证书,一个账户下可以多个app共用一个证书,每个应用又有对应配套的测试证书、正式商城证书、推送证书;都是成套存在的)。

生成certSigningRequest文件
打开应用程序-->实用工具-->钥匙串访问
选择从证书颁发机构请求证书

接下来填写邮件地址,选择存储到磁盘,点击继续

保存文件到桌面。

一般文件名:CertificateSigningRequest.certSigningRequest

点击左边的Production,在右边出来的页面的右上角选择添加

如果是个人或公司账号,选择App Store and Ad Hoc,点击Continue进入下一步,在下一页中点击Continue。

选择Choose File选择之前生成的certSigningRequest文件,点击Continue
如图所示,cer证书创建成功,点击Download将证书下载到本地,然后双击打开证书

一般文件名:ios_distribution.cer


在钥匙串中找到安装的证书,
PS:若提示此证书是由未知颁发机构签名的(有红色文字,显示不被信任),请下载Apple Worldwide Developer Relations Certification Authority证书进行安装,地址http://developer.apple.com/certificationauthority/AppleWWDRCA.cer
安装完证书后会显示绿色字,可信任。

在左边选择“登录”和“我的证书”,找到证书,在证书上面点击鼠标右键,然后在菜单中选择导出证书,如图:

在弹出页面中指定证书名,点击存储,然后输入证书密码(此密码在控制台上传证书页面输入),点击好,生成p12格式证书。

一般文件名:ios_distribution.p12


3、云编译mobileprovision证书制作
这里以个人、公司账号创建App Store类型发布证书为例。

App Store类型证书(发布到应用商城的证书)
App Store证书只能用于发布应用到AppStore,不能安装在非越狱设备上面。如图,点击左侧菜单Distribution,然后点击右侧页面右上角的添加图标,最后选择App Store,点击Continue进入下一步

如图,选择上面创建的App ID,点击Continue进入下一步

如图,选择certificates,点击Continue进入下一步

输入证书名称,点击Generate,进入下一步完成创建

起个名字:app_store_Public.mobileprovision


云编译mobileprovision测试证书制作
添加测试设备
首先获取设备的UDID,打开iTunes,连接设备,如图,找到序列号,然后点击序列号,该栏会变成UDID,点击鼠标右键,拷贝UDID。

回到网站页面,如图选择左侧菜单Devices下面的All,在右侧页面点击右上角添加图标,进入下图所示页面:

输入Name和获取的UDID,点击Continue进入下一页,下一页中点击Register,最后点击Done,添加设备完成。(也可以使用模板导入)

UDID    描述(中间是Tab键;只写内容,其他都不写)
3bnkrj3ngkjvfreiwfnlrewg    xxx的iphone

Ad Hoc类型证书
对于个人和公司账号,Ad Hoc类型证书可以安装到指定的测试设备上面调试。如图,选择Ad Hoc,点击Continue进入下一步

选择App ID(这个测试描述文件绑定一个应用),点击Continue进入下一步

选择certificates,点击Continue进入下一步

选择设备,然后点击Continue

输入证书名称,点击Generate,进入下一步完成创建,下载证书。

起个名字:Ad_Hoc_Test.mobileprovision

注意:UDID只会影响测试证书的设备安装数,每次导入后都要在Provisioning Profiles---> Distribution中修改测试证书所应用的设备。在点Done前下载测试证书,再上传到apicloud进行编译,,设备才能安装,否则只有上一版本证书里的设备才能安装。


4、云编译Apple Watch对应mobileprovision证书制作

若支持Apple Watch,需要在网站上传证书界面上传watchkitapp.mobileprovision和watchkitextension.mobileprovision证书,其中watchkitapp.mobileprovision证书对应的包名为应用的包名加上.watchkitapp构成,watchkitextension.mobileprovision证书对应的包名为应用的包名加上.watchkitextension构成。

例如应用包名为com.company.app,那么两证书对应的包名分别为com.company.app.watchkitapp和com.company.app.watchkitextension。

制作流程与上面的mobileprovision证书制作流程一样。


5、推送证书制作(这个证书在开发和生产环境都能用)

在左侧菜单选择Certificates下面的Production,进入到如下界面:

点击右上角的添加图标,进入以下页面,选择如图所示内容,点击Continue进入下一步

在App ID栏选择对应的App ID,点击Continue,在下一页中点击Continue

选择之前生成的certSigningRequest文件,然后点击Generate进入下载界面
点击Download下载证书到本地,双击安装到钥匙串中。

起个名字:aps_push.cer

如下图,在钥匙串中找到此证书,在该证书上面点击鼠标右键,选择导出,然后存储为.p12格式文件,输入证书密码。至此,创建服务端p12格式推送证书完毕。

起个名字:message_push.p12

至此,需要用到的证书都申请完成了。

参考资料:
https://docs.apicloud.com/Dev-Guide/iOS-License-Application-Guidance
个人或企业账户:
开发者证书申请
ios证书详解,主要讲证书里各种概念
iOS证书申请和签名文件生成

企业版(内部APP):
iOS企业证书的申请:https://www.jianshu.com/p/ce914659a0da
iOS企业证书的申请与制作:https://www.jianshu.com/p/7bcb185d40c0
发布企业APP:https://www.jianshu.com/p/0418f5051185


已有证书添加新APP


注意:证书(iOS Distribution,也就是之前保存的ios_distribution.p12文件)可以用原来的,一个iOS Distribution证书可以创建很多个APP,,也可以一个iOS Distribution证书对应一个APP。

1、创建App ID(一个应用一个)
登录开发者账户
https://developer.apple.com

选择Certificates, IDs & Profiles

在左侧菜单选择App IDs,然后点击右上角的添加图标,
在接下来的页面里面填写App ID描述,
在App ID Suffix栏选择Explicit App ID,这里填写的ID即是控制台上传证书页面需要填写的APP IDs(Build ID每个应用都是唯一的,一个ID就代表一个应用,各大平台上传都需要这个Build ID,要记录下来)
在App Services中选择服务功能,勾选上Push Notifications项,点击Continue进入下一步。



在新页面中点击Submit,然后点击Done,创建App ID成功。

注意:创建好了,点编辑,找到Push Notifications项,并创建(Production SSL Certificate),创建好后会跳转到所有证书页面,会有个:Apple Push Services类型的证书。这是消息推送的证书。


2、申请App Store证书和Ad Hoc证书
步骤按“新申请”的步骤来,中间添加测试设备可以忽略,生成Ad Hoc证书前会提示选择测试设备,可以复用原来的列表。

Provisioning Profiles项下新建App Store证书和Ad Hoc证书,记得选取新的App IDs旧的iOS Distribution证书。最后完成


3、导入到xcode中要在系统中安装ios_distribution.p12,并在工程中导入App Store证书或Ad Hoc证书才可进行编译打包。


软件配置

如果是在APICloud中,开发期间上传测试证书(Ad_Hoc_Test.mobileprovision),发布到商城时要修改为正式证书(app_store_Public.mobileprovision);同时上传:ios_distribution.p12

推送:
上传推送证书(message_push.p12),如果使用APICloud的推送就在APICloud上上传;如果是第三方平台,如极光推送,就在在第三方平台上传证书。

开发调试:
开发过程中会不断的添加测试机器,每添加一个UDID,就需要授权文件中包含该机器;然后在APICloud重新编译版本,新设备才能安装成功。


APP上线审核

苹果审核文档:https://developer.apple.com/cn/app-store/review/guidelines/
避免一些坑:https://baijiahao.baidu.com/s?id=1609760663509034086&wfr=spider&for=pc

1、准备iPhone6尺寸的截图(或者宣传海报);安装xcode 9以上版本。登录appleid.apple.com,进入安全设置,生成一个App专用密码。
2、点击APP Store Connect,接下来按流程走,很多是不需要填的。

3、登录APICloud,更换为正式(商城)证书,然后编译正式版ipa包。
4、上传app使用xcode中的工具:Applicaton Loader:点击左上角Xcode-->Open Developer Tools-->Applicaton Loader
使用开发者账户 + App专用密码登录。选择ipa包提交。
5、填写必要的信息,后提交等到审核。

参考资料:
https://www.jianshu.com/p/259129a240cf
https://www.jianshu.com/p/9a492c04ab63
https://www.jianshu.com/p/9a492c04ab63
https://blog.csdn.net/xiacsd/article/details/53897996


各种问题

ios2.1大礼包被拒经验分享

https://zhuanlan.zhihu.com/p/38482403

(●゚ω゚●)