Condividi tramite


Distribuzione di app watchOS nell'App Store

Importante

Assicurarsi di esaminare la sezione Risoluzione dei problemi per eventuali problemi che potrebbero verificarsi.

  • Assicurarsi di avere eseguito le attività seguenti:

    • Profili di provisioning di distribuzione creati per i progetti.
    • Destinazione di distribuzione (MinimumOSVersion) per l'app padre iOS impostata su 8.2 o versioni precedenti (8.3 non è supportato).
  • In iTunes Connessione:

    • Creare la voce dell'app iOS (o aggiungere una nuova versione a un'app esistente).
    • Aggiungere l'icona Espressione di controllo e gli screenshot.
  • Quindi in Visual Studio per Mac (Visual Studio non è attualmente supportato):

    • Fare clic con il pulsante destro del mouse sull'app iOS e scegliere Imposta come progetto di avvio.
    • Passare alla configurazione dell'App Store .
    • Usare la funzionalità Di archiviazione per creare un archivio di applicazioni.
  • Infine, passare a Xcode 6.2+

    • Passare a Libreria finestre > e scegliere Archivi.
    • Selezionare l'applicazione e l'archivio dall'elenco.
    • (Facoltativamente) Convalidare... archivio.
    • Invia... l'archivio e seguire la procedura per caricare in iTunes Connessione per la revisione e l'approvazione.

Leggere suggerimenti specifici correlati a questi elementi di seguito. Vedere la sezione Risoluzione dei problemi in caso di problemi.

Profili di provisioning della distribuzione

Per compilare per la distribuzione di App Store, è necessario creare un profilo di provisioning di distribuzione per ogni ID app nella soluzione.

Se si dispone di un ID app con caratteri jolly, sarà necessario un solo profilo di provisioning, ma se si dispone di un ID app separato per ogni progetto, sarà necessario un profilo di provisioning per ogni ID app:

The App Store Distribution profile

Dopo aver creato tutti e tre i profili, questi verranno visualizzati nell'elenco. Ricordarsi di scaricare e installare ognuno di essi (facendo doppio clic su di esso):

The list of available profiles

È possibile verificare il profilo di provisioning in Opzioni progetto selezionando la schermata Compila > firma bundle iOS e selezionando la configurazione AppStore | i Telefono.

L'elenco Profilo di provisioning mostrerà tutti i profili corrispondenti. Verranno visualizzati i profili corrispondenti creati in questo elenco a discesa.

The iOS Bundle Signing dialog

iTunes Connect

Seguire la panoramica della distribuzione delle app, in particolare:

Quando si configura l'app in iTunes Connessione, non dimenticare di aggiungere l'icona Espressione di controllo e gli screenshot:

The Watch icon and screenshots in iTunes Connect

Il file icona deve essere 1024x1024 pixel e avrà una maschera circolare applicata quando viene visualizzata. L'icona non deve avere un canale alfa.

È necessario almeno uno screenshot, è possibile inviare fino a cinque. Devono essere 312x390 pixel e dimostrare l'app Watch in azione. È possibile usare il simulatore di controllo 42mm per acquisire screenshot con queste dimensioni.

Visual Studio per Mac

  1. Assicurarsi che l'app iOS sia il progetto di avvio. In caso contrario, fare clic con il pulsante destro del mouse per impostarlo:

    Setting the startup project

  2. Scegliere la configurazione della build di AppStore :

    The AppStore build configuration

  3. Scegliere la voce di menu Compila > archivio per avviare il processo di archiviazione:

    The Build menu

È anche possibile scegliere la voce di menu Visualizza > archivi per visualizzare gli archivi creati in precedenza.

The Archives view

Xcode

Xcode mostrerà automaticamente gli archivi creati in Visual Studio per Mac.

  1. Avviare Xcode e scegliere Libreria finestre>:

    The Window menu

  2. Passare alla scheda Archivi e selezionare l'archivio creato con Visual Studio per Mac:

    The Archives tab

  3. Facoltativamente, convalidare... l'archivio, quindi scegliere Invia... per caricare l'app in iTunes Connessione.

  4. Scegliere il team di sviluppo (se si appartiene a più di uno) e quindi confermare l'invio:

    The development team section

  5. Visita di nuovo iTunes Connessione per vedere il file binario caricato. Passare alla pagina di configurazione dell'app e scegliere Versione preliminare dal menu in alto per visualizzare l'elenco Compilazioni :

    The apps configuration page in iTunes Connect

È quindi possibile inviare l'app per l'approvazione nella pagina Versioni . Per altre informazioni, vedere panoramica della distribuzione di app iOS.

Risoluzione dei problemi

Ecco alcuni errori che potresti riscontrare durante l'invio all'App Store e i passaggi che puoi eseguire per risolverli.

L'opzione di menu Archivio non è visibile in Visual Studio per Mac

Seguire i passaggi precedenti per configurare la soluzione per l'archiviazione. Se non è possibile impostare correttamente il progetto di avvio, assicurarsi che la configurazione di compilazione sia impostata prima di eseguire il debug o il rilascio prima di tentare di modificare il progetto di avvio. Impostare quindi di nuovo la configurazione di compilazione su AppStore.

Icona Non valido

Invalid Icon - The watch application '...watchkitextension.appex/WatchApp.app'
contains an icon file '...watchkitextension.appex/WatchApp.app/AppIcon27.5x27.5@2x.png'
with an alpha channel. Icons should not have an alpha channel.

Seguire le istruzioni per rimuovere il canale alfa dalle icone.

Mancata corrispondenza di CFBundleVersion

CFBundleVersion Mismatch. The CFBundleVersion value '1' of watch application
'...watchkitextension.appex/WatchApp.app' does not match the CFBundleVersion
value '1.0' of its containing iOS application `YouriOS.app`.

Tutti i progetti nella soluzione, ovvero l'app iOS, l'estensione espressione di controllo e l'app espressioni di controllo, devono usare lo stesso numero di versione. Modificare ogni file Info.plist in modo che il numero di versione corrisponda esattamente.

Icone mancanti

Missing Icons. No icons found for watch application '...watchkitextension.appex/WatchApp.app'.
Please make sure that its Info.plist file includes entries for CFBundleIconFiles.

Seguire le istruzioni nell'uso delle icone per aggiungere tutte le immagini necessarie al progetto Watch App.

Icona mancante

Missing Icon. The watch application '...watchkitextension.appex/WatchApp.app'
is missing icon with name pattern '*44x44@2x.png' (Home Screen 42mm).

Assicurarsi di avere la versione più recente di Visual Studio per Mac e che AppIcon.appiconset contenga un set completo di immagini. Se viene ancora visualizzato questo errore, visualizzare l'origine del Contents.json per confermare che contiene una voce per tutte le immagini necessarie. In alternativa, dopo aver verificato di usare la versione più recente di Xamarin, eliminare e ricreare AppIcon.appiconset.

Importante

Esiste un bug noto nel supporto dell'icona espressione di controllo di Visual Studio per Mac: prevede un'immagine di 88x88 pixel per l'immagine 29x29@3x (che deve essere 87x87 pixel).

Non è possibile correggerlo in Visual Studio per Mac: modificare l'asset immagine in Xcode o modificare manualmente il file Contents.json.

Supporto watchkit non valido

Invalid WatchKit Support - The bundle contains an invalid implementation of WatchKit.
The app may have been built or signed with non-compliant or pre-release tools.

Questo messaggio può essere visualizzato durante la convalida e l'invio o in un messaggio di posta elettronica automatizzato da iTunes Connessione dopo un caricamento apparentemente riuscito.

Importante

Devi archiviare l'app in Visual Studio per Mac e quindi passare a Xcode 6.2+ per convalidare e caricare in iTunes Connessione.

Usare il canale Stable Xamarin e Xcode 6.2+.

Profilo di provisioning non valido

Invalid Provisioning Profile. The provisioning profile included in the bundle
...iOSWatchApp.watchkitapp [iOSWatchApp.app/PlugIns/...iOSWatchApp.watchkitextension.appex/WatchApp.app]
is invalid. [Missing code-signing certificate.]

I profili di provisioning della distribuzione devono essere forniti per tutti e tre i progetti in una soluzione di app watch: l'app iOS, l'estensione Espressione di controllo e l'app Espressioni di controllo, in modo esplicito (tre profili) o tramite un singolo profilo con caratteri jolly. Verificare che i profili di provisioning esistano in iOS Dev Center e che siano stati scaricati e aggiunti al Mac.

Diritti di firma del codice non validi

ITMS-90046: Invalid Code Signing Entitlements. Your application bundle's signature contains
code signing entitlements that are not supported on iOS. Specifically, value
'...watchkitextension' for key 'application-identifier' in '...watchkitextension'
is not supported. The value should be a string startign with your TEAMID, followed
by a dot '.' followed by the bundle identifier.

Assicurarsi che i profili di provisioning siano configurati correttamente in Apple Dev Center e che siano stati scaricati e installati. Verificare anche che siano impostati nella finestra delle proprietà di Visual Studio per Mac per ogni progetto.

Architettura non valida

Invalid architecture: Apps that include an app extension
and framework must support arm64.

È possibile aggiungere solo app di controllo per le app unificate (64 bit) app Xamarin.iOS. Fare clic con il pulsante destro del mouse sul progetto di app iOS, quindi passare alla scheda Opzioni Compila avanzate per iOS > e assicurarsi che le architetture supportate per la configurazione appStore-i Telefono includa ARM64 (ad esempio. >>ARMv7 + ARM64).

Questo bundle non è valido.

ITMS-90068: This bundle is invalid. The value provided for the key
MinimumOSVersion '8.3' is not acceptable.

L'applicazione iOS padre deve avere MinimumOSVersion impostato su '8.2' o versioni precedenti.

Utilizzo dell'API non pubblica

Your app contains non-public API usage.
Please review the errors, and resubmit your application.

Assicurarsi di usare la versione più recente degli strumenti di Xcode e Xamarin. Il codice non deve accedere ad alcuna API non pubblica.

Errore di compilazione MT5309

Error MT5309: Native linking error: clang: error: no such file or directory:

Questo errore è probabilmente il risultato della ridenominazione dell'installazione di Xcode da Xcode.app. Ad esempio, questo errore si verificherà se si rinomina l'installazione in XCode 6.2.app.