美文网首页
iOS证书问题

iOS证书问题

作者: sunshinfight | 来源:发表于2018-08-10 18:20 被阅读0次

    Certificates(证书)

    部分常用证书

    1. 开发证书:app development(开发和真机调试,有效期1年),push development(调试Apple Push Notification,有效期1年)
    2. 发布证书: app store证书,ad hoc证书(有效期3年), push Production(发布时使用的push证书,有效期1年)

    常用证书的到期和移除影响

    1. app store证书:如果会员有效,则不影响线上app,只是不能上传新的
    2. ad hoc和企业证书:不能运行

    不对称加密

    私钥: 自己保存

    公钥: 外部使用

    • 场景
    1. A私钥签名(加密)发送到B公钥解密,B可以确认发送者的身份是否为A(所以才叫签名)
    2. A公钥加密发送到B私钥解密,保证数据安全

    苹果签名的方式为场景1,build过程中签名,Certificate是公钥,在使用钥匙串制作证书时,实际是通过上传本地生成的公钥,由苹果生成公钥证书///// 没有找到相关文档

    开发设备迁移

    场景:在使用新的设备开发且使用的是原来的开发者账号
    导出后的文件同时包含了生成.ipa和开发者账号的信息


    image

    App ID

    • (team id由苹果产生).(bundle id search string自己填写)
    • App ID配置了匹配了该ID的app(bundle id)可以使用苹果服务(如push,应用内支付),App ID分为通配ID和明确ID,不同的苹果服务对这两种ID有限制,例如如要使用push服务,则必须使用明确的ID。 在打包时如果使用的服务需要证书,则需要提供相应的证书
    • xcode填写不同的bundleId,developer center会自动生成相关的App ID,经测试在xcode改变bundleId,并使用相关的开发证书,就会在developer center生成相关的App ID,且App ID的Name自动生成为:XC + bundleId。

    Profiles(描述文件)

    该文件描述了生成.ipa所需要的各种资源:证书,App ID,需要安装的设备,是为了方便配置的描述文件。

    Devices

    在测试时,需要添加测试设备,如果debug直接安装,则xcode会自动注册UDID。需要注意的是,删除设备只能在新的membership year时进行,也就是说在新的membership year如果添加了新设备,就不能再删除设备了(不能删除设备,表示服务器记录的可以添加的数量不变,在开发者中心网站,是可以删除的,只不过剩余添加设备的数量不会增加)。

    层级结构

    1. Certificates是app打包,开启苹果相关服务所需的证书
    2. App ID包含了app需要的各种苹果服务
    3. Provisioning Profiles 包含了App可以运行的设备,开发者打包所需要的各种证书(push证书,app打包证书等),也就是包含了App ID和Devices

    基本过程

    1. 注册开发者账号,并加入开发者会员,邀请开发者,并为开发者分配角色
    2. 根据app所需的功能配置各类证书
    3. 配置App ID,添加各项服务
    4. 配置provisioning profile,如果使用了automatic signing,不需要配置

    xcode已经拥有了app需要运行的设备UDID和相关服务的证书,签名通过。*

    automatic signing所做的事

    • 创建签名证书///需要测试,不同的角色,debug和发行证书
    • 注册连接的设备
    • 创建和编辑App ID
    • 管理provisioning profiles
    • 编辑entitlements和plist

    Entitlement

    包含app的权限(所需苹果服务)的文件。
    具体请看

    参考文章

    相关文章

      网友评论

          本文标题:iOS证书问题

          本文链接:https://www.haomeiwen.com/subject/mxulbftx.html