versiones sistemas quien operativos mojave mac historia definicion creo caracteristicas macos sandbox command-line-tool

macos - sistemas - quien creo mac os



¿Aplicación de Mac OS, sandbox con herramienta de línea de comandos? (1)

He hecho una aplicación que incluye una herramienta de línea de comandos. He habilitado el sandbox de la aplicación y he probado que funciona. También he firmado el código tanto de la aplicación como de la herramienta de línea de comandos.

Pero cuando subí la aplicación a iTunes, recibí un correo electrónico que me decía "La caja de arena de la aplicación no está habilitada".

Aparentemente necesito establecer el archivo de derechos de la clave com.apple.security.app-sandbox con valor true , y listar los ejecutables: /Contents/MacOS/myApp y /contents/Frameworks/x86/myCommandLineTool .

Estoy seguro de que habilité el sandbox en Xcode, así que pensé que el problema era con la herramienta de línea de comandos.

¿Cómo puedo habilitar el sandbox para la herramienta de línea de comandos? ¿O hay una carpeta específica en la que debería poner la herramienta? Cualquier sugerencia de bienvenida, me ha preocupado por varios días.


Tuve el mismo problema y después de alguna búsqueda, prueba y error, esto es lo que funcionó para mí:

  1. crear un archivo de derechos: para mí era solo com.apple.security.inherit establecido en YES. He creado este archivo en xcode en sí.

  2. Ahora firme esta herramienta de línea de comandos usando el comando:

    codesign --entitlements ./entitlements.plist -s "copy & paste your certificate from keychain" ./commandlinetool

  3. Solo para estar seguro, marque usando este comando:

    codesign --display --entitlements - ./commandlinetool

  4. Esta herramienta ya estaba incluida en el proyecto. Tan solo compilar, archivar y enviar

El estado es ahora "en espera de revisión".