突然發(fā)現(xiàn)xcode8工程雹锣,注冊遠(yuǎn)程通知后拿不到deviceToken网沾。
首先呢,我們先比較一下xcode7蕊爵,xcode8打開推送的開發(fā)后
所發(fā)生的事情
xcode7
xcode8
xcode8在打開時(shí)辉哥,會在entitlement添加
<key>aps-environment</key>
<string>production</string>
字段
(已經(jīng)有entitlement文件的話,會直接加入該字段攒射,沒有的話會新增entitlement文件)
這里有個(gè)問題是APS Environment的環(huán)境怎么是development的醋旦,這個(gè)不用擔(dān)心了。蘋果已經(jīng)做了處理:也就是說會依據(jù)我們所選的證書配置成自動轉(zhuǎn)換了
dis證書的話会放,就對應(yīng):
<key>aps-environment</key>
<string>production</string>
那么我該如何查看environment中的aps-environment配置的環(huán)境是否正確呢饲齐,首先我們查看包中的environmen文件,這是最直接的咧最。要是找不到怎么辦呢捂人,不用擔(dān)心。
codesign --display --entitlements :- ./test.app
codesign --display --entitlements :- 加上你的.app路徑矢沿,回車就好了滥搭。
信息如下了:
<dict>
<key>application-identifier</key>
<string>********.********</string>
<key>aps-environment</key>
<string>production</string>
<key>beta-reports-active</key>
<true/>
<key>com.apple.developer.team-identifier</key>
<string>**********</string>
<key>get-task-allow</key>
<false/>
</dict>