Encuentra el perfil de aprovisionamiento en Xcode 5

104

En Xcode 5, puedo obtener una lista de perfiles de aprovisionamiento debajo Xcode >> preferences >> accounts >> view details. Quiero copiar el perfil y tengo que enviarlo a uno de mis clientes, pero no puedo hacer clic derecho sobre él para encontrarlo usando la opción " Revelar perfil en el Finder ".

¿Cómo puedo obtener un perfil de aprovisionamiento específico en XCode 5 o tengo que descargarlo de developer.apple cada vez?

ingrese la descripción de la imagen aquí

Ankur
fuente
¡Utilice esta solución para Xcode 5! stackoverflow.com/a/18504418/1463604
Nishant
Posible duplicado del elemento de menú
Simon East

Respuestas:

223

Encontré una manera de averiguar cómo se llama su perfil de aprovisionamiento. Seleccione el perfil que desee en la sección de signo de código en la configuración de compilación, luego abra la vista de selección nuevamente y haga clic en "otro" en la parte inferior. Luego, aparece una vista con el nombre del perfil de aprovisionamiento seleccionado actualmente.

Ahora puede encontrar el archivo de perfil en la ruta:

~/Library/MobileDevice/Provisioning Profiles

Actualizar:

Para Terminal:

cd ~/Library/MobileDevice/Provisioning\ Profiles
matzino
fuente
9
Para la terminal: cd ~/Library/MobileDevice/Provisioning\ Profiles
tsafrir
1
para encontrar perfiles generados automáticamente use grep -l "iOSTeam Provisioning Profile: com.your.bundle.id." *
tsafrir
1
¿Es posible cambiar la ubicación predeterminada del perfil ..? ¿Cómo decirle a xcode que usa el perfil desde otra ubicación cuando construimos usando la herramienta de línea de comandos "xcodebuild"?
Sreedhar GS
For terminal: cd ~/Library/MobileDevice/Provisioning\ Profilesdebe ser destacado gracias @tsafrir
Ashok R
30

Chequea aquí:

~/Library/MobileDevice/Provisioning Profiles
yasirmturk
fuente
8
Los archivos de perfil de aprovisionamiento se pueden leer en un editor de texto, por lo que puede abrir los archivos en este directorio en un editor de texto, por ejemplo, open -a TextEdit /Users/$(whoami)/Library/MobileDevice/Provisioning\ Profiles/4A733DA3-07E3-43A3-9AB2-2D25070153EB.mobileprovision y buscar " <key> Name </key> " para encontrar el nombre del perfil tal como aparece en el Centro de miembros de Apple. o en las preferencias de la cuenta de Xcode.
jhavatar
18

Lo siguiente funciona para mí en un símbolo del sistema

cd ~/Library/MobileDevice/Provisioning\ Profiles/
for f in *.mobileprovision; do echo $f; openssl asn1parse -inform DER -in $f | grep -A1 application-identifier; done

Averiguar qué claves de firma utiliza un perfil en particular es más difícil de hacer con una sola línea de shell. Básicamente necesitas hacer:

openssl asn1parse -inform DER -in your-mobileprovision-filename

luego, corte y pegue cada bloque de datos base64 después de la entrada DeveloperCertificates en su propio archivo. Luego puede usar:

openssl asn1parse -inform PEM -in file-with-base64

para volcar cada certificado. La línea después del segundo commonName en la salida será el nombre de la clave, por ejemplo, "Desarrollador de iPhone: Joe Bloggs (ABCD1234X)".

user23614
fuente
14

xCode 6 le permite hacer clic derecho en el perfil de aprovisionamiento en la cuenta -> detalle (la captura de pantalla que tiene allí) y muestra una ventana emergente "mostrar en el buscador".

usuario2962499
fuente
9

Si es suficiente utilizar los siguientes criterios para localizar el perfil:

<key>Name</key>
<string>iOS Team Provisioning Profile: *</string>

puede escanear el directorio usando awk. Este resumen encontrará el primer archivo que contiene el nombre que comienza con "Equipo iOS".

awk 'BEGIN{e=1;pat="<string>"tolower("iOS Team")}{cur=tolower($0);if(cur~pat &&prev~/<key>name<\/key>/){print FILENAME;e=0;exit};if($0!~/^\s*$/)prev=cur}END{exit e}' *

Aquí hay un script que también devuelve la primera coincidencia, pero es más fácil trabajar con él.

#!/bin/bash

if [ $# != 1 ] ; then
    echo Usage: $0 \<start of provisioning profile name\>
    exit 1
fi

read -d '' script << 'EOF'
BEGIN {
    e = 1
    pat = "<string>"tolower(prov)
}
{
    cur = tolower($0)
    if (cur ~ pat && prev ~ /<key>name<\\/key>/) {
        print FILENAME
        e = 0
        exit
    }
    if ($0 !~ /^\s*$/) {
        prev = cur
    }
}
END {
 exit e
}
EOF


awk -v "prov=$1" "$script" *

Se puede llamar desde el directorio de perfiles, $ HOME / Library / MobileDevice / Provisioning Profiles :

~/findprov "iOS Team"

Para usar el script, guárdelo en una ubicación adecuada y recuerde configurar el modo ejecutable; por ejemplo, chmod ugo + x

bvj
fuente
2
Buena cosa. Simplemente agregue cd "${HOME}/Library/MobileDevice/Provisioning Profiles/"antes del comando awk y podrá llamarlo desde cualquier lugar que desee.
onekiloparsec
6

Puede utilizar la "Utilidad de configuración de iPhone" para administrar los perfiles de aprovisionamiento.

ChenXin
fuente
"Utilidad de configuración de iPhone" es reemplazada por "Configurador de Apple"
mahal tertin
pero Apple Configurator no ubica automáticamente los perfiles de aprovisionamiento, como lo hace la Utilidad de configuración de iPhone.
Raptor
6

Escribí un script bash simple para solucionar este estúpido problema. Pase la ruta a una copia con nombre de su provisión (descargada de developer.apple.com) e identificará el archivo con el nombre de GUID correspondiente en su biblioteca de provisión:

#!/bin/bash

if [ -z "$1" ] ; then
  echo -e "\nUsage: $0 <myprovision>\n"
  exit
fi

if [ ! -f "$1" ] ; then
  echo -e "\nFile not found: $1\n"
  exit
fi

provisionpath="$HOME/Library/MobileDevice/Provisioning Profiles"
provisions=$( ls "$provisionpath" )

for i in $provisions ; do
  match=$( diff "$1" "$provisionpath/$i" )
  if [ "$match" = "" ] ; then
    echo -e "\nmatch: $provisionpath/$i\n"
  fi
done
usuario1467074
fuente
3

No es exactamente para Xcode5, pero esta pregunta vincula a las personas que desean verificar dónde están los perfiles de aprovisionamiento:
siguiente documentación https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html

  1. Elija Xcode> Preferencias.
  2. Haga clic en Cuentas en la parte superior de la ventana.
  3. Seleccione el equipo que desea ver y haga clic en Ver detalles. ingrese la descripción de la imagen aquí En el cuadro de diálogo que aparece, vea sus identidades de firma y perfiles de aprovisionamiento. Si aparece un botón Crear junto a un certificado, aún no se ha creado. Si aparece un botón Descargar junto a un perfil de aprovisionamiento, no está en su Mac. ingrese la descripción de la imagen aquí

Diez puede iniciar el menú contextual en cada perfil y hacer clic en "Mostrar en el Finder" o "Mover a la papelera".

pbaranski
fuente