Nuestros programadores estrellas han agotado sus reservas de café, en su búsqueda día y noche por la resolución, hasta que Alicia halló el hallazgo en GitHub y ahora la comparte con nosotros.
Solución:
Paso 1: cambie el nombre del proyecto
- Haga clic en el proyecto que desea cambiar de nombre en el “Navegador de proyectos” en el panel izquierdo de la ventana de Xcode.
- En el panel derecho, seleccione el “Inspector de archivos” y el nombre de su proyecto debe encontrarse en “Identidad y tipo”. Cámbielo a su nuevo nombre.
- Cuando el cuadro de diálogo le pregunte si cambiar o no el nombre de los elementos de contenido del proyecto, haga clic en “Cambiar nombre”. Di sí a cualquier advertencia sobre cambios no confirmados.
Paso 2: cambie el nombre del esquema
- En la parte superior de la ventana, al lado del botón “Detener”, hay un esquema para su producto con su nombre anterior; haga clic en él, luego elija “Administrar esquemas…”.
- Haga clic en el nombre anterior en el esquema y se volverá editable; cambie el nombre y haga clic en “Cerrar”.
Paso 3: cambie el nombre de la carpeta con sus activos
- Sal de Xcode. Cambie el nombre de la carpeta maestra que contiene todos los archivos de su proyecto.
- En la carpeta maestra con el nombre correcto, además del archivo .xcodeproj con el nombre recién nombrado, probablemente haya una carpeta ANTIGUA con el nombre incorrecto que contiene los archivos de origen. Cambie el nombre de la carpeta OLD a su nuevo nombre (si usa Git, puede ejecutar
git mv oldname newname
para que Git reconozca que se trata de un movimiento, en lugar de eliminar/agregar nuevos archivos). - Vuelva a abrir el proyecto en Xcode. Si ve una advertencia “La carpeta OLD no existe”, descarte la advertencia. Los archivos de origen en la carpeta renombrada aparecerán atenuados porque la ruta se ha roto.
- En el “Navegador de proyectos” en el panel de la izquierda, haga clic en la carpeta de nivel superior que representa la carpeta ANTIGUA cuyo nombre cambió.
- En el panel de la derecha, en “Identidad y tipo”, cambie el campo “Nombre” del nombre ANTIGUO al nombre nuevo.
- Justo debajo de ese campo hay un menú de “Ubicación”. Si la ruta completa no se ha corregido, haga clic en el ícono de la carpeta cercana y elija la carpeta renombrada.
Paso 4: cambie el nombre de los datos de la lista de compilación
- Haga clic en el proyecto en el “Navegador de proyectos” a la izquierda y, en el panel principal, seleccione “Configuración de compilación”.
- Busque “plist” en la configuración.
- En la sección Embalaje, verás
Info.plist
yProduct Bundle Identifier
. - Si hay un nombre ingresado en
Info.plist
actualizarlo. - Haz lo mismo para
Product Bundle Identifier
, a menos que utilice la variable $PRODUCT_NAME. En ese caso, busque “producto” en la configuración y actualiceProduct Name
. SiProduct Name
se basa en $TARGET_NAME, haga clic en el elemento objetivo real en la lista OBJETIVOS a la izquierda del panel de configuración y edítelo, y todas las configuraciones relacionadas se actualizarán inmediatamente. - Busque la configuración de “prefix”y asegurarse de que
Prefix Header
La ruta también se actualiza con el nuevo nombre. - Si usa SwiftUI, busque “Activos de desarrollo” y actualice la ruta.
Paso 5: repita el paso 3 para las pruebas (si las tiene)
Paso 6: repita el paso 3 para los datos básicos si su nombre coincide con el nombre del proyecto (si lo tiene)
Paso 7: limpia y reconstruye tu proyecto
- Mando + Cambio + k limpiar
- Mando + B para construir
Para agregar a la excelente respuesta de @ luke-west:
Al usar CocoaPods
Después del paso 2:
- Salga de XCode.
- En la carpeta maestra, cambie el nombre
OLD.xcworkspace
paraNEW.xcworkspace
.
Después del paso 4:
- En XCode: elige y edita
Podfile
desde el navegador de proyectos. Deberías ver untarget
cláusula con el nombre OLD. Cámbielo a NUEVO. - Salga de XCode.
- En la carpeta del proyecto, elimine el
OLD.podspec
expediente. rm -rf Pods/
- Correr
pod install
. - Abra el código X.
- Haga clic en el nombre de su proyecto en el navegador de proyectos.
- En el panel principal, cambie a la
Build Phases
pestaña. - Bajo
Link Binary With Libraries
buscarlibPods-OLD.a
y eliminarlo. - Si tiene un encabezado Bridging de objetivo-c, vaya a Configuración de compilación y cambie la ubicación del encabezado de OLD/OLD-Bridging-Header.h a NEW/NEW-Bridging-Header.h
- Limpiar y ejecutar.
Una solución más rápida usando comandos de shell (también funciona con CocoaPods):
POR FAVOR cd
A UN REPOSITORIO NO GIT ANTES DE CONTINUAR ⚠️
Paso 1: requisitos previos
- Copie la carpeta de su proyecto original a un temporal
/NewProjectFolder
FUERA de su repositorio git. ⚠️ los cambios en .git podrían dañar su índice git ☠
Paso 2 – Terminal abierta
Ahora vamos a cambiar el nombre del proyecto de oldName
para NewProject
.
- Cierre XCode.
- Ir a tu
/NewProjectFolder
.
cd /Path/to/your/NewProjectFolder
- Instale las herramientas adicionales necesarias.
brew install rename ack
- Cambiar el nombre de los archivos y directorios que contienen la fuente string. Tendrá que EJECUTAR ESTE COMANDO DOS VECESporque los directorios serán renombrados primero, luego los archivos y directorios dentro de ellos serán renombrados en la siguiente iteración.
find . -name 'oldName*' -print0 | xargs -0 rename --subst-all 'oldName' 'NewProject'
- Compruebe si todos los archivos que contienen la fuente string son renombrados. Debería ver una salida vacía.
find . -name 'oldName*'
- Reemplace todas las apariciones del string en todos los archivos.
ack --literal --files-with-matches 'oldName' --print0 | xargs -0 sed -i '' 's/oldName/NewProject/g'
- Compruebe si todas las ocurrencias del string en todos los archivos fueron reemplazados. Debería ver una salida vacía.
ack --literal 'oldName'
- Correr
pod install
- Agregar
NewProjectFolder
a su repositorio. - ¡Estás listo!
valoraciones y reseñas
Ten en cuenta mostrar este enunciado si si solucionó tu problema.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)