ios - Clave de CFBundleExecutable inesperada
itunesconnect cocoapods (11)
Acabo de agregar la palabra "BNDL" al lugar apropiado en la
plist
"Código de tipo de sistema operativo del creador del paquete".
Después de pasar un tiempo buscando en Google, algo me dice que el problema es nuevo.
Teníamos un proyecto totalmente funcional compatible con iOS7-8. Por supuesto, se envió varias veces con éxito a AppStore.
Utilizamos pods, mucho seguimiento y monitoreo, como GA e Instabug.
Ahora decidimos enviar una versión de la aplicación desarrollada en Xcode 7 en iOS 9 a TestFlight.
Deshabilitamos el código de bits, ya que muchos pods, como Flurry y otras bibliotecas preconstruidas, no lo incluyen.
La compilación fue exitosa, después del envío a iTunesConnect obtenemos esto:
Teníamos lo mismo para la biblioteca GoogleAppIndexing (también en pods), pero la eliminamos, solo para que funcionara. Ahora - Instabug. Está yendo demasiado lejos, así que estoy tratando de entender qué está sucediendo en iOS 9 y cuáles son los cambios que hicieron que un proyecto funcionara completamente para comenzar a arrojar tales errores.
Cualquier pensamiento e idea son bienvenidos! Comparta su experiencia, y si me perdí algo, con gusto compartiré mis pasos.
En mi caso, simplemente
info.plist
y
info.plist
La carpeta
SDK
In incluye el archivo
info.plist
que no está en uso.
Eso crea el problema para mí.
info.plist
archivo
info.plist
no
info.plist
y elimínelo del código fuente.
Encontré el mismo problema hoy con el mismo mensaje de error exacto al intentar enviar nuestra aplicación (usando Xcode 7 beta 5) pero en lugar del bit
instabug.bundle
, fue para mí
TencentOpenApi_IOS_Bundle.bundle
.
Resolví el problema al encontrar el paquete con nombre en el proyecto y, tal como lo sugiere el mensaje de error,
Info.plist
el
Info.plist
que está en el paquete al eliminar la clave
CFBundleExecutable
.
La clave
CFBundlePackageType
ya estaba configurada en
BNDL
así que no la toqué.
Después de estos cambios, hice Producto> Limpiar y luego no tuve problemas para enviar la aplicación a la tienda de aplicaciones.
Espero que esto ayude.
Resuelvo este problema de la siguiente manera: Tenemos que eliminar todos los "archivos ejecutables" de los siguientes paquetes:
- GooglePlus.bundle
- GPPCommonSharedResources.bundle
- GPPShareboxSharedResources.bundle
Asegúrese de que el "Código de tipo de paquete" sea igual a BNDL
Importante: no edite nada en la info.plist el proyecto principal.
Pantallas adjuntas como deberían ser su "info.plist" listada arriba de cada paquete.
Si la compilación se envía a través de Menos de (<) Xcode 7.0 , se enviará y también lo he resuelto de la siguiente manera para Xcode 7 :
info.plist
en el proyecto Project Navigator como la siguiente imagen:
Ahora abrió estos archivos
info.plist
uno por uno y eliminó la clave
BundleExecutable
EXCEPTO
BundleExecutable
del objetivo
Ahora limpió el proyecto y lo logró y se presenta sin problema.
Si ve este error desde una biblioteca instalada a través de CocoaPods, intente una
pod update <OFFENDING POD NAME>
Eso resolvió el problema para mí.
Simplemente verifique su Configuración de compilación => Activar código de bits y configúrelo NO
Una nota adicional: a veces, si tiene objetivos adicionales, habrá propiedades de objetivos que también pueden incluir la clave (en la sección "Información"), así que asegúrese de verificarlos y eliminarlos de allí también. Descubrí esto con uno de los paquetes que estaba tratando de incluir. Eliminé la información de la lista, pero seguí recibiendo el error.
AviarySDK
esto con
AviarySDK
en Xcode 7 GM, mientras lo enviaba a la App Store.
Primero, verificaría si está utilizando la última versión de su biblioteca; es posible que el proveedor ya haya solucionado esto. Sin embargo, si aún enfrenta este problema, como lo describe Sleiman, debe eliminar la clave CFBundleExecutable del archivo plist de la biblioteca infractora.
Cmd + Shift + O y escriba "Info.plist", luego puede encontrar el archivo apropiado:
Una vez que edite el plist, es posible que vea nombres descriptivos (en lugar de
CFBundleExecutable
y otras claves. No pude editar este archivo en un editor externo, así que tuve que cambiar para ver claves / valores sin procesar haciendo clic derecho en la lista :
Ahora puede ver la clave
CFBundleExecutable
(que tiene una descripción de "Archivo ejecutable") que puede eliminar.
Para AviarySDK hice esto dos veces, una para cada
Info.plist
ve en la imagen de arriba, y luego pude enviar con éxito.