1. 现象:
发布在 app store 的 qzone,app bundle identifier:com.tencent.qzone
证书支持com.tencent.*
然后自已写的测试demo,bundle identifier:com.tencent.iOSTest
拿了一堆将机器identifier添加进device list里了的机器,来真机运行这个demo,结果发现有的机器可以运行,有的机器不能运行,不能运行的机器提示如下:
![](https://i-blog.csdnimg.cn/blog_migrate/7bb81661f9b622cbb5cef0b7219efbd4.png)
2.解决办法:
工程签名设置:
![](https://i-blog.csdnimg.cn/blog_migrate/fa5d82d9a36c8b6bc4dbc78e839d8b20.png)
发现两个地方都没有指定证书,然后能运行的机器上有证书:
![](https://i-blog.csdnimg.cn/blog_migrate/dfef63a815f89255a47c0f0bf9de54d2.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ab0f5a5044fefe25ec2410737f39d11f.png)
即能运行的机器上有com.tencent.* 通配符证书,结果能运行,不能运行的机器上没有这个通配符证书。
于是
工程设置将 Provisioning Profile里设置为:
![](https://i-blog.csdnimg.cn/blog_migrate/7624ec41431dd0e81d706484359f7a59.png)
即指定通配符证书后,再在不能运行的真机上再运行一次, 结果ok,问题解决。