app Extension的证书问题

顾学真
2023-12-01

老板要求做来电识别功能,于是接触了Call Directory Extension。添加扩展后,真机测试报错><一看发现extension也需要证书。于是记录下设置证书的方法:


首先看到target中多了我们新增的extension,Xcode已经设置好了它的bundle ID,这个bundle ID是容器app的bundle ID后面加上extension的名字。即如果容器app是com.aaa.bbb,我的extension叫做callRecognition,那么extension的bundle ID就是com.aaa.bbb.callRecognition。


进入developer center,在Certificates, Identifiers & Profiles中选择App Groups。新建一个group,ID要以“group”开头。然后点App IDs,选择容器app的ID,编辑,打开app group功能,并把app加入刚才新建的group。然后,因为原有的provisioning profile不支持app groups,所以需要重新下载安装一次provisioning profiles。


为extension新建一个app ID,同样开启App Groups功能并加入同一个group。在新建app ID时遇到一点问题,网页提示我输入的com.aaa.bbb.callRecognition不可用,于是把ID改成了com.aaa.bbb.callRecognitionA,创建成功,原因至今不明=。=改完别忘了在Xcode里面把extension的ID改成相同的。另外,要改的话只能改最后的名字部分,前面的com.aaa.bbb必须和容器app保持一致。然后为extension创建provisioning profiles。


在Xcode中选择容器app的target,在capability中打开app groups功能,勾选创建的group。并对extension也做同样的操作。注意选择正确的provisioning profile,并且extension和容器app的“development team”选项要保持一致。


这样就可以真机测试了嘿!

 类似资料: