push notification - apple - xcode 8 capacidades de notificación push y configuración de archivos de derechos
apple push notification service (3)
al usar
xcode 8
haciendo la configuración de notificación push, a diferencia de
xcode 7
,
xcode 8
necesita que el desarrollador active el interruptor de capacidades de notificaciones push (ubicado en
TARGETS -> AppName -> Capabilities
como la siguiente imagen),
entonces generará el archivo AppName.entitlements de la siguiente manera
//AppName.entitlements
<key>aps-environment</key>
<string>development</string>
pero para la versión de producción de la aplicación, si cambiamos la cadena a
//AppName.entitlements
<key>aps-environment</key>
<string>production</string>
entonces las capacidades muestran una advertencia
y parece que no importa qué valor de cadena se especifique en aps-environment, aún podemos obtener el token del dispositivo de inserción en la
application:didRegisterForRemoteNotificationsWithDeviceToken:
Entonces, ¿cuál es la configuración correcta de los derechos de notificación push? gracias
Creo que la mejor solución es abrir el paquete del proyecto y abrir
project.pbxproj
cambiar los
CODE_SIGN_ENTITLEMENTS
CODE_SIGN_ENTITLEMENTS = "your-app/production.entitlements";
Estaba luchando con eso hoy en Xcode 8 GM. Después de deshabilitar la configuración, eliminar mi perfil de aprovisionamiento del portal para desarrolladores y volver a generarlo y habilitar la configuración nuevamente, pude eliminar la advertencia en Xcode. Tenga en cuenta que no violé el archivo de derechos. Lo dejé en el entorno de desarrollo y después del archivo obtuve la configuración correcta del entorno aps (producción).
Parece que Xcode todavía tiene muchos errores incluso en GM
Mi problema era que mi cliente de envío estaba desactualizado y solo presionaría con éxito para depurar tokens. Otro problema para el que todavía estoy trabajando en una solución es que solo podía exportar la aplicación a través del gimnasio con legacy-api habilitado, esto no estaba configurando el entorno apns para que fuera ''producción'' y lo dejara como ''desarrollo'' en el '' embedded-mobile.provision ''archivo. Sin embargo, he podido implementar con éxito la aplicación a través del organizador xcode para trabajar con apns (prod) ahora.