¿Cambiar el nombre de un proyecto React Native?

82

¿Hay instrucciones sobre lo que se debe cambiar para cambiar el nombre de un proyecto React Native? Tengo una aplicación llamada algo similar a MyAppIOS y quiero cambiarle el nombre a simplemente MyApp (ahora que no es compatible con Android)

Algún chico
fuente

Respuestas:

65

La forma en que hice esto para Android (hacky, pero funciona) simplemente cambió el campo de cadena nombre_aplicación en

android/app/src/main/res/values/strings.xml

Cambiará el nombre de su aplicación de Android instalada a lo que ponga como valor.

httpNick
fuente
1
La mayoría debería darse cuenta de esto, pero para su información, esta respuesta es SOLO para ANDROID .
chapeljuice
84

Puede cambiar el atributo de nombre package.json, ejecutarlo react-native upgradey dejar que reaccione sobrescriba los archivos android / ios. Sin embargo, no sobrescriba sus archivos de índice si hay código sin guardar.

Luego cambie su línea Appregistry de

AppRegistry.registerComponent('MyAppIOS', () => MyAppIOS);

A:

AppRegistry.registerComponent('MyApp', () => MyApp);
denixtry
fuente
1
También tuve que cambiar el nombre de la clase principal correspondientemente: class MyApp extiende Component {.... etc.
Per Quested Aronsson
4
esto no elimina los archivos antiguos de MyAppIOS, por lo que también querrá hacer: $ rm -rf android/app/src/main/java/com/myappios && rm -rf ios/MyAppIOS*
Neil Sarkar
6
Creo que eso react-native upgradetambién actualizará su react-native, tenga cuidado porque esto podría romper algo con sus dependencias.
Herlon Aguiar
Encontramos una serie de pasos adicionales repartidos por la web: publicamos una lista completa (¡y aceptamos
Freewalker
42

Lo que simplemente funciona para mí varias veces se explica a continuación;

  • Primero copie el directorio en el que se encuentra su aplicación para cambiar de nombre. Y vaya a su directorio recién clonado.
  • Cambie el nombre en el index.ios/android.jsarchivo que se le da como parámetro AppRegistry.
  • Cambie el nombre y la versión en consecuencia en package.json
  • eliminar /iosy las /androidcarpetas que quedan de su aplicación anterior, así como el app.jsonarchivo si lo tiene.
  • ejecutar $react-native upgradepara generar carpetas /iosy /androidnuevamente.
  • ejecutar $react-native linkpara cualquier dependencia externa.
  • finalmente corre $react-native run-ioso lo que quieras.
milkersarac
fuente
1
Las versiones más nuevas de react native también hacen que cambie los valores en app.json si no recuerdo mal.
Christopher Bradshaw
4
Sí, parece que después de 0.41 react-native ofrecen una forma oficial de volver a generar carpetas nativas /iosy /android. Para obtener más información, se puede consultarreact-native eject
milkersarac
Buena fuente: medium.com/the-react-native-log/…
gusgard
27

Para iOS, también está disponible la forma de cambiar la configuración de xcodeproj.

Muestre <el nombre de su aplicación> -> Info.plist y agregue el nombre para mostrar del paquete .

cambiar el nombre de la aplicación iOS:

ingrese la descripción de la imagen aquí

janus_wel
fuente
16

Probablemente llegue un poco tarde, pero para las personas que buscan una solución sólida, existe un paquete npm react-native-rename que puede hacer la magia.

Denys Mikhalenko
fuente
8
  1. Actualice displayName en app.json al nuevo nombre
  2. Eliminar directorios ios / y android / en el proyecto raíz
  3. En la línea de comando Ejecutar:

    react-native eject
    react-native link 
    
Mohammadreza Zandi
fuente
7

También es posible que desee consultar el paquete npm ( react-native-rename ):

Uso:

reaccionar-nativo-renombrar <nuevoNombre>

Funciona bien para mi proyecto.

CTiPKA
fuente
En mi aplicación, este comando elimina mis archivos java en android / app / src / main / java / com / appname.
Johncy
ADVERTENCIA: No utilice esta biblioteca. arruinará tu proyecto. Nunca use esto.
MRSafari
6

Puede usar el react-native-renamepaquete npm.

npm install react-native-rename
react-native-rename [newName]

https://www.npmjs.com/package/react-native-rename

Joao Pedro Leite S Lisboa
fuente
1
Un enlace a una solución es bienvenido, pero asegúrese de que su respuesta sea útil sin él: agregue contexto alrededor del enlace para que sus compañeros usuarios tengan una idea de qué es y por qué está allí, luego cite la parte más relevante de la página. está enlazando a en caso de que la página de destino no esté disponible. Las respuestas que son poco más que un enlace pueden eliminarse.
Filnor
Además, debe escribir sus respuestas solo en inglés, ya que este es un sitio solo en inglés. Para portugués, vaya a pt.stackoverflow.com
Filnor
3
ADVERTENCIA: No utilice esta biblioteca. arruinará tu proyecto. Nunca use esto.
MRSafari
@MRSafari -1, funcionó bien para mí en un proyecto expulsado (no expo)
Chris Sherriff
@MRSafari ¿Por eso hay git?
iRohitBhatia
5
  1. Para la aplicación IOS, también está disponible el cambio en la configuración de xcodeproj.

Abra el Info.plistarchivo desde el directory/ios/{appname}directorio de su proyecto y cambie el nombre para mostrar del paquete.

<key>CFBundleDisplayName</key>
<string>NEW APP NAME</string>
  1. Para la aplicación de Android, puede cambiar en la carpeta de Android del directorio de su proyecto.

    cd android/app/src/main/res/values/

abre el strings.xmlarchivo y cambia el nombre de tu aplicación en

 <string name="app_name">NEW APP NAME</string>
Cheema harpreet
fuente
4

Como se menciona aquí ( https://github.com/facebook/react-native/issues/4227 ), no es necesario que agregue una Bundle display nameclave, como dice @janus_wel.

Simplemente puede actualizar Bundle namede $(PRODUCT_NAME)a My App.

Shivek Khurana
fuente
Esta es la única solución que funcionó para mí. He añadido un entorno de compilación llamada CUSTOM_DISPLAY_NAME (para soportar diferentes nombres para aplicaciones de depuración y liberación), luego se actualiza simplemente Bundle nameser$(CUSTOM_DISPLAY_NAME)
Kevin Cooper
1
  • En primer lugar, copie la dirección en la que desea que se cambie el nombre de la aplicación. Y vaya a su directorio recién clonado.

  • Reemplace el nombre en el archivo index.ios / android.js que se proporciona como parámetro a AppRegistry.

  • actualice el nombre y la versión en consecuencia en package.json elimine las carpetas / ios y / android que quedan de su aplicación anterior y de la

  • ejecute $ react-native upgrade para volver a generar carpetas / ios y / android. y ejecute $ react-native link para cualquier dependencia externa.

  • finalmente, ejecute $ react-native run-ios o de lo contrario.

poojagarg
fuente
1

En caso de que ninguna de las soluciones funcionó para usted o intentar algo rompió su aplicación. Esto va a lo básico.

  1. Inicie un nuevo proyecto react-native con el nombre que desee cambiar su aplicación.
  2. Copie la lista de dependencias de su proyecto anterior al nuevo package.json
  3. Copie archivos de proyecto antiguos, asegúrese de mantener la misma estructura.
  4. correr npm install
  5. correr react-native run-android

Esto debería volver a encarrilarte

Sarthak Dwivedi
fuente
0

La solución que funcionó para mí es primero cambiar el nombre de la carpeta de su proyecto react-native y luego

npm install react-native-rename

react-native-rename newName

Esto funciona para mi

Akhzar Nazir
fuente
0

Cambie el nombre de la aplicación react-native con solo un comando react-native-rename

Instalación

yarn global add react-native-rename o npm install react-native-rename -g

Uso ejecute el siguiente comando en el directorio del proyecto.

react-native-rename <newName>

Ejemplo:

react-native-rename "Travel App"

Kassem Itani
fuente
0

Se deben seguir los siguientes pasos al cambiar el nombre del proyecto / aplicación en react Native 1. crear una nueva carpeta de prueba

  1. Copie y pegue todos los archivos de la demostración en la carpeta de prueba

  2. Cambiar el nombre en el archivo package.json

  3. Cambiar el nombre en el archivo package-lock.json

  4. Cambiar el nombre en el archivo App.json

  5. Eliminar carpetas / ios y / android

  6. Ejecute el comando react-native eject para crear carpetas / ios y / android nuevamente

  7. ejecute el enlace react-native para cualquier dependencia externa.

  8. finalmente ejecute su aplicación usando el comando react-native run-android.

Para obtener más información, visite https://youtu.be/_lgH9LXf818

Dr. Chandra Kant Sharma
fuente