Cambio de nombre de la aplicación en Xcode 6
ios8 xcode6 (6)
Tengo una aplicación que necesito cambiar de nombre para que el código pueda reutilizarse solo con pequeños cambios y tengo dificultades.
Seguí este enlace y parecía que lo cubría, pero cuando intenté construirlo, recibí un error de enlace que también sigue:
Enlace al recurso:
http://matthewfecher.com/app-developement/xcode-tips-the-best-way-to-change-a-project-name-in-xcode/
Este es el error de enlace que recibo y la información que veo
Ld /Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Products/Debug-iphoneos/solfEightFiveTests.xctest/solfEightFiveTests normal arm64 cd "/Users/jeffjanes/Xcode Projects/solfEightFive/shell" export IPHONEOS_DEPLOYMENT_TARGET=8.0 export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -bundle -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk -L/Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Products/Debug-iphoneos -F/Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Products/Debug-iphoneos -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk/Developer/Library/Frameworks -filelist /Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Intermediates/solfEightFive.build/Debug-iphoneos/solfEightFiveTests.build/Objects-normal/arm64/solfEightFiveTests.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -dead_strip -bundle_loader /Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Products/Debug-iphoneos/shell.app/shell -framework XCTest -fobjc-arc -fobjc-link-runtime -miphoneos-version-min=8.0 -Xlinker -dependency_info -Xlinker /Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Intermediates/solfEightFive.build/Debug-iphoneos/solfEightFiveTests.build/Objects-normal/arm64/solfEightFiveTests_dependency_info.dat -o /Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Products/Debug-iphoneos/solfEightFiveTests.xctest/solfEightFiveTests ld: file not found: /Users/jeffjanes/Library/Developer/Xcode/DerivedData/solfEightFive-aqlpurtbbyfkqmgjdryrxicllljh/Build/Products/Debug-iphoneos/shell.app/shell clang: error: linker command failed with exit code 1 (use -v to see invocation)
¿Hay algo que este olvidando? Intenté limpiarlo y eso pareció no tener efecto.
Esto es solo una aclaración: el proceso descrito en el enlace anterior sugiere lo siguiente:
Haga doble clic lentamente en el nombre del proyecto en el panel del navegador del proyecto en la parte superior izquierda de la pantalla. A continuación, permita que Xcode cambie el nombre de los archivos.
Y
Renombrando el esquema de la misma manera.
Eso es todo lo que hice, tal vez eso en sí mismo no fue suficiente, así que si alguien sabe cómo hacerlo, hágamelo saber.
En Xcode 7, después de cambiar el nombre de un proyecto de CocoaTouch Framework, tuve que administrar esquemas y hacer clic en "Crear autocrear esquemas ahora". Entonces quité el esquema con el nombre original.
En primer lugar, intenté publicar esto solo como un comentario, pero aún no tengo permiso para hacerlo.
No conozco Xcode 6 muy bien, pero como asumo que cada archivo de proyecto que utiliza está basado en texto, puede intentar algo como esto en el shell, asumiendo que MyProjectDir
es su directorio de proyectos y OldProjectName
es el nombre antiguo de su proyecto.
Primero debes limpiar y cerrar el proyecto en Xcode.
cd MyProjectDir
find . -type f -exec grep -i OldProjectName {} /; -ls
Esto le mostrará una lista de todos los archivos con líneas que contienen el nombre antiguo del proyecto (cada uno primero con las líneas correspondientes, seguido de la entrada de directorio del archivo que contiene en formato "ls -l"). Por esto, al menos debes saber qué archivos aún contienen el nombre antiguo. Tal vez cambiar eso usando un editor de texto haga el trabajo.
Tambien puedes hacer
cd MyProjectDir
find . -iname "*OldProjectName*" -ls
para enumerar todos los archivos que contienen el nombre del proyecto anterior. Luego, puede cambiar el nombre de esos archivos o incluso eliminarlos si está seguro de que son generados por Xcode.
Por supuesto, asegúrese de hacer una copia de seguridad de su proyecto primero!
La causa de esto es una referencia persistente al producto de la aplicación anterior. Debe eliminar la carpeta Derived Data
y realizar una limpieza. Deberías estar todo listo después de eso. Vea este enlace para más lectura:
Resolví esto abriendo MyProject.xcodeproj / project.pbxproj con un editor de texto y reemplazando manualmente los nombres incorrectos (* .app)
También experimenté este problema recientemente. Su proyecto XCode debe tener dos objetivos. Un objetivo para su aplicación el otro objetivo para las pruebas.
En la configuración de compilación para el objetivo de prueba hay un nombre de configuración Test Host. El valor de esta configuración no se actualiza una vez que cambie el nombre de la aplicación.
Modifique correctamente el valor de configuración del Host de prueba y todo debería funcionar.
Tuve lo que parece ser el mismo problema.
Lo resolví por:
- navegando al directorio de problemas: en su caso: shell.app.
- mv shell OLD_NAME. En otras palabras: cambie el nombre del archivo al nombre antiguo de su proyecto.
- Limpiar + Ejecutar