2015-05-15 28 views
7

Un profilo di provisioning appena generato non sembra più compatibile con le versioni precedenti della stessa app. La nuova app funziona con il nuovo profilo, tuttavia non vogliamo aggiornare tutte le app collegate ai vecchi backend di versione e non sono tutte compatibili con la nuova app. Abbiamo bisogno di rinnovare i profili a breve per mantenere attive le vecchie app. Lo abbiamo già fatto, ma ora abbiamo i seguenti problemi.È possibile rinnovare i profili di provisioning senza dover aggiornare le app aziendali iOS?

Quando si apre l'applicazione con un profilo di provisioning aggiornato, non riesce con questo messaggio nel log della console:

entitlement 'com.apple.developer.team-identifier' has value not permitted by provisioning profile 'My Profile' 

Durante l'esame del profilo, si scopre che l'array che contiene identificatori team è ora non è più un array, ma un singolo elemento.

precedente Profilo provisioning:

<key>com.apple.developer.team-identifier</key> 
<array> 
    <string>SomeIdentifier</string> 
</array> 

Aggiornate profilo di provisioning:

<key>com.apple.developer.team-identifier</key> 
<string>SomeIdentifier</string> 

E 'possibile aggiungere un identificatore di squadra per un IOS provisioning profilo? In questo modo diventerebbe di nuovo un array.

Nel progetto Xcode, sono riuscito a trovare l'identificatore del team in due punti. Nel file pbxproj e in un certificato. Sembra che non sia possibile aggiungere alcun identificatore nel progetto per lo stesso obiettivo poiché si tratta di un'assegnazione di stile di coppie valore-chiave.

Ho anche tentato di modificare il nuovo profilo di provisioning e avvolgere semplicemente i tag dell'array attorno all'elemento (sperando che non rientrasse nell'ambito della firma). Sfortunatamente Xcode si blocca quando cerco di installare il profilo compromesso su un dispositivo (probabilmente non gestisce eccezioni di firma).

Un modo per aggiungere un identificatore o un altro modo per ottenere un profilo rinnovato compatibile sarebbe molto apprezzato.

risposta

4

Non penso che ci sia un modo per modificare il profilo di provisioning come si sta guardando. Se c'è allora sarà la violazione della sicurezza Apple.

I primi giorni, abbiamo riscontrato gli stessi problemi con il nostro Enterprise Apps in cui l'app ha smesso di aprire per tutti i nostri utenti - e il problema era il certificato scaduto. Non ho potuto trovare il rinnovo al volo per Enterprise Apps come facciamo per AppStore Apps.

Ho dovuto automatizzare il processo di creazione dello stesso IPA con certificato rinnovato tramite Jenkins e memorizzarlo sul server, l'app preleva automaticamente il nuovo binario e chiede agli utenti di aggiornarlo.

Se è possibile scoprire qualunque altro buon senso - sarei interessato :-)

+0

L'anno scorso siamo stati in grado di farlo in quel modo senza problemi. Quest'anno Apple ha cambiato una piccola cosa causando la rottura delle vecchie app. Sembra che non abbiamo altra scelta che sopportarlo. Fortunatamente i vecchi file sorgente sono stati trovati nel nostro sistema di controllo della souce e sono contento che l'ultima versione di XCode sia in grado di costruirli senza rompere nulla (finora). È piuttosto una seccatura e gli amministratori e il team operativo non sono troppo contenti della soluzione. Sperando che i giorni della licenza perpetua tornino un giorno. Questo è uno scherzo piuttosto costoso. Grazie per il tempo di rispondere :-) –