和描述文件,iOS开发笔记22

作者:新闻中心

今天看到mac首次可以安装siri了,为了体验一把,然后手贱的升级了,升级完mac系统

作用:描述文件主要是用于将前面的 1.cer证书 2.AppID信息 3.设备信息  的一个说明文件,Xcode 在真机调试的时候,会检验里面的3想内容是否符合 当前的 真实 打包测试环境

今天搞了半天的p.12开发证书,发现一些坑,分享一下.

iPhone从4.3升级到5.1后,开发证书又出现莫名其妙的错误。

新萄京娱乐网址2492777 1提醒出这种错误

1.检查 cer 文件(主要是检查 是不是创建cer的哪台电脑的在打包,p12文件也可)

一,打开xcode随便新建一个程序

历时5小时的不断折腾,从developer网站上revoke证书2次,重新生成provisioning,删除mac里的key chain,删除xcode中的证书,再从xcode的organizer中添加证书,修改xcode project中的签名参数,编译运行,最后Build是可以通过了,但仍然出现恼人的a valid provisioning profile for this executable was not found错误,几乎崩溃!

模拟器也不能用,真机更是不能用,然后又重新下载开发证书,生产证书,还是不行.最终乱七八糟的折腾了一番还是不行.最后这个的正确解决办法是这个样子的:

2.检查 AppID (主要检查 此刻真机调试的App 是不是BundleID 是否与创建的一致 )

二,设置你的Bundle identifier为一个可用的字符串,例如com.gongsiname.appname.test

最后新建一个project,把原来的project的源代码全部搬过去,竟然OK了!

新萄京娱乐网址2492777 2新萄京娱乐网址2492777,打开finder点击"前往"新萄京娱乐网址2492777 3应该出现这个

3.检查 真机设备 (主要检查 此时运行的真机是不是已经加入真机调试中)

三,选择你的Team,

难道是xcode中的参数填错了?还是xcode的BUG?

然后你按下 option键:在个人和电脑中间会出现资源库,点击进去

新萄京娱乐网址2492777 4

此处需要一个APPID,如果你是免费用户,真机调试时只能选择3台设备,当运行第4台设备时会出现提示错误;

新萄京娱乐网址2492777 5按步骤点击新萄京娱乐网址2492777 6然后把"DerivedData"这个文件夹里的所有文件全部删除掉

注意1.由xcode创建的影响开发,下面我会额外讲解 2.webAppRelease 是我们公司用用Mui框架来发布的webApp

四,导出描述文件:

注:在做这些的时候务必确定Xcode是关闭退出状态

新萄京娱乐网址2492777 7

a.点击preferences->选择你刚才用的Team,APPID,选择下面的Free内容,

删除后,然后重新运行下吧!又可以运行了不是!

新萄京娱乐网址2492777 8

b.点击View Details..->在Prvisioning Profiles中,你会看到你刚刚使用Bundle identifier的描述文件,

如果解决了你的问题,请点个赞!

新萄京娱乐网址2492777 9

c.右击此文件,show in finder->即可看到你需要的 描述文件.mobileprovision

再往下面 按照步骤走就OK了

五,导出p.12证书:

补充篇:

  • 为什么要导出.p12文件
  • 有两个解决不能添加证书的办法。
  • 第一种方法——“revoke”:
  • 第二种方法——“.p12”:
  • 在别人的电脑上要成功安装,须具备两个文件:

问题一 :

为什么要导出.p12文件

当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)

如图:

新萄京娱乐网址2492777 10

这时候,再点击“ ”时,就会发现点击不了开发和发布证书,也就是添加不了开发证书和发布证书了:

新萄京娱乐网址2492777 11

新萄京娱乐网址2492777 12

有两个解决不能添加证书的办法。

描述文件与 cer 不对称,此时,Xcode 会提示帮你创建,点击Fix Issue 之后,自动创建

第一种方法——“revoke”:

将以前的证书“revoke”掉,如图:

新萄京娱乐网址2492777 13

然后重新生成一个新的证书。

这种方法是可以的,但是会造成相应的Provisioning Profiles失效,这个可大可小。如果只有你一个人则问题不大,如果是一个团队大家都在用,你把这个证书删除了,会导致别人的描述文件失效,这意味着别人不能发布应用了,这可是大问题,所以不提倡这种做法。

说明:此处创建 是需要 你有 开发者账号的,重新生成 描述文件

第二种方法——“.p12”:

我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。

注意:一般.p12文件是给与别人使用的,本机必须已经有一个带秘钥的证书才可以生成.p12文件,如图:

新萄京娱乐网址2492777 14

打开钥匙串,选择我们需要的证书,右击,选择“导出“iPhone Distribition:```”:

新萄京娱乐网址2492777 15

为.p12文件填一个名字,点击存储:

新萄京娱乐网址2492777 16

填一个“密码”,“验证”和密码相同:

新萄京娱乐网址2492777 17

点击好,在桌面上就形成了一个.p12文件了:

新萄京娱乐网址2492777 18

坏处:影响团队开发 (因为,此时最原始的 描述文件被修改,导致那么 用p12 的开发者就用不了了)

在别人的电脑上要成功安装,须具备两个文件:

  • 该证书导出的“.p12”文件。

  • 苹果开发者中的与“证书”对应的“描述文件”

如果需要用于开发的,那么需要这两个文件:

.p12文件本身就是一个加密的证书,所以用这两个文件就可以让其他mac设备使用了:

新萄京娱乐网址2492777 19

拿到这两个文件后,依次双击“证书”,“.p12“文件(需要输入密码,密码就是当时生成.p12时设定的密码,),作用是加入钥匙串中,使我们的电脑具备开发的证明,”描述文件“(作用是置于xcode中,让xcode知道我们开发的合法性),添加完后就可以使用了。

友情链接:

友情链接:

越分享越开心,王彬,2016年7月26日下午11点25

解决办法:从新下载那个由 xcode创建出来的 描述文件,双击安装即可 (不需要重新 安装p12文件,p12文件只有在cer原始文件有变化的时候才会重新生成)

理论上 你重新真机调试就ok了,但是,但是,由于你的 项目中的一些关于 证书的配置文件 信息,没有清除,所以建议不成功的情况下按照下面步骤重新走一遍

1.把钥匙串中的 cer(p12)文件删除

2.把 描述文件 先全部删掉

问题:怎么查找到描述文件

mac - 前往(此时按住 opt键,会出现资源库,这一项,是隐藏文件)-MobileDevice -ProvisioningProfiles (删除里面的描述文件)

新萄京娱乐网址2492777 20

3.将p12 文件 和 描述文件重新 点击安装,清除一下,再真机运行

若还不行

重新创建一个App,把它的BundleID 一样的 空App ,然后把 需要配置的文件给配置了,真机运行 OK (此步骤的主要目的,是讲Xcod中很多关于 当时的BundleID的很多缓存等信息 重新运行,也有种清除的效果),具体台详细,需要进一步研究

然后再次运行自己自己的App ,应该就ok了

若再不行,试试其他的,最多全部重新创建,怕什么

本文由新葡京8455发布,转载请注明来源

关键词: