El envío de Apple Store falla con el Error ITMS-90046, pero los Dominios Asociados no están entre los derechos

La primera vez que construí mi aplicación y la aplicación Watchkit, tuve habilitada la function "Dominios asociados". Lo he deshabilitado en el panel "Capacidades" de la extensión de watchkit y la aplicación complementaria, y confirmé que la key se ha ido de cada info.plist.

He accedido a la página "Certificados, Identificadores y Perfiles" de Apples, seleccioné la ID de la aplicación para cada aplicación de Watchkit, la extensión y la aplicación, desmarcé los "Dominios asociados", regeneré los perfiles de aprovisionamiento para cada uno, los descargué e instalé.

He hecho un Ctrl-Shift-Command-K limpiar, reiniciar y rebuild. En Sumbission a la tienda de aplicaciones obtengo el siguiente post de error.

He realizado una búsqueda de proyecto dentro de xcode y no puedo encontrar una key com.apple.developer.associated-domains. He buscado en el directory de compilation, nada. No creo que esta key realmente exista en mi código, y sin embargo, iTunesConnect parece pensar que está allí y configurado en '*'.

Captura de pantalla del mensaje de error itms-90046 de Xcode Organizer

Para solucionar este problema:

  • inicia session en el Apple Deveveloper Center
  • Vaya a Certificados, Identificadores y Perfiles.
  • Vaya a Identificadores / ID de la aplicación.
  • Selecciona tu Id. De la aplicación y edita
  • Desmarca los dominios asociados
  • Salvar

Deberá regenerar cualquier file de aprovisionamiento asociado con el ID de la aplicación. Por alguna razón, los "Dominios Asociados" se revisaron para mi aplicación. Deseleccionarlo hizo que la presentación de AppStore funcione.

introduzca la descripción de la imagen aquí

introduzca la descripción de la imagen aquí

Creo que esto es un error.

Gestioné una solución simplemente insertando un nuevo elemento Array en el Entitlements.plist tanto de la aplicación complementaria como de la extensión Watchkit: "com.developer.apple.associated-domains" y un dominio válido para las webcnetworkingentials: cadena. Si bien esto no tendrá ningún efecto práctico ya que ni mis files de aprovisionamiento ni la pestaña Capacidades de la aplicación o extensión están habilitados para los dominios asociados, detuvo cualquier escáner de código en itunesconnect que tropezó con un valor no válido de "*" para la key inexistente .

Captura de pantalla de Entitlements.plist

Si desea usar dominios asociados, asegúrese de que cada input en Entitlements.plist > com.developer.apple.associated-domains use el siguiente formatting:

 <service>:<fully qualified domain>[:port number] 

p.ej.

 webcnetworkingentials:www.example.com applinks:www.example.com activitycontinuation:www.example.com 

Tenga en count [:port number] es opcional, ¡pero se requieren <service> y <fully qualified domain> !

Desde la presentación de la aplicación fallaron los errores, lo que entiendo es, posiblemente, que su perfil de suministro todavía tiene los "dominios asociados" habilitados y que faltan en su file de "derechos de autor" de la aplicación.

Entonces, obviamente, habrá dos escenarios.

Escenario 1 : ¿Desea admitir "dominios asociados"? Esto debería habilitarse para funciones como "Enlaces universales".

Consulte el siguiente enlace:

https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/AddingCapabilities/AddingCapabilities.html

En este caso, no edite manualmente su file de "derecho". En su lugar, siga los pasos.

1 . Seleccione su file de proyecto en Xcode.

2 . Seleccione el destino adecuado en "Destinos"

3 . Seleccione "Capacidades" que está al lado de "General"

4 . Puede ver una opción para "Dominios asociados" como se detalla a continuación.

introduzca la descripción de la imagen aquí

5 . Habilite " Dominios asociados ". Si habilita " Dominios Asociados ", Xcode le pedirá que inicie session en la count de Desarrollador y estará sincronizado con su AppId y perfil de Provisión.

Como se menciona en la captura de pantalla anterior, hará dos cosas mientras habilita " Dominios asociados "

  • Agregue el derecho de dominio asociado a su file de derechos.
  • Agregue la característica de Dominio asociada a su ID de aplicación.

Si hay algún problema al sincronizar su configuration desde Xcode y la count del desarrollador, verifique que la siguiente checkbox esté habilitada.

introduzca la descripción de la imagen aquí

Además, asegúrese de que sus perfiles de aprovisionamiento In House y App Distributions estén correctamente actualizados y sincronizados.

La mayoría del trabajo lo hará Xcode en sí, solo necesitamos escuchar y comprender.

Escenario 2 : su aplicación no necesita la capacidad de " dominio asociado ". En este caso, siga la respuesta dada por @Ciprian Rarau. Está bien explicado.

Como se indica en ERROR ITMS-90164/90046: Derechos de firma de código no válidos, pude resolver el problema realizando la compilation de Clean. Para que conste, recibí el código de error ITMS-90164 .

introduzca la descripción de la imagen aquí

  • Estaba recibiendo: "El ejecutable se firmó con derechos no válidos".
  • La búsqueda con Google dio algunas pistas útiles, pero el ^ post no se detuvo
  • Fue a: Xcode> Ventana> Dispositivos
  • Luego: En la esquina inferior izquierda de la Ventana de Dispositivos, seleccioné el button "Mostrar la console del dispositivo"
  • A partir del button del logging, escané la información y encontré el problema y lo solucioné en un breve espacio de time.
  • En mi caso, implicaba los derechos de com.apple.developer.associated-domains, y necesitaba mantener dominios asociados
  • Usaré la console del dispositivo en el futuro siempre que haya posts de error del dispositivo, ahorre time
  • Resolvió el problema en poco time
  • POR FAVOR, GRACIAS a todos por su ayuda