Recibo este error al intentar compilar mi aplicación de Android React Native. La aplicación de Android no puede resolver BuildConfig.DEBUG.
:app:processDebugJavaRes UP-TO-DATE
:app:compileDebugJavaWithJavac
/Users/amirsharif/mobile-rappad/android/app/src/main/java/com/rappadmobile/MainActivity.java:29: error: cannot find symbol
.setUseDeveloperSupport(BuildConfig.DEBUG)
^
symbol: variable BuildConfig
location: class MainActivity
>1 error
:app:compileDebugJavaWithJavac FAILED
Puedo resolverlo temporalmente simplemente configurándolo en verdadero. Esto podría haber sucedido después de que cambié el nombre de una aplicación (ya que eso es algo que también he intentado hacer).
Probablemente tenga que cambiar algo con Gradle para que vuelva a generar el tipo correcto de archivos.
/**
* Automatically generated file. DO NOT MODIFY
*/
package com.app;
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String APPLICATION_ID = "com.rappadmobile";
public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.0";
}
react-native
Sobrecarga119
fuente
fuente
La forma en que Android sabe dónde encontrar ciertos archivos y cómo conectar ciertos archivos es mediante el uso de campos establecidos en AndroidManifest.xml. Dado que la configuración predeterminada de un proyecto React Native hace referencia a todo con. (Nombre del recurso), esto significa que todo se resolverá con respecto al nombre del paquete establecido en la
<manifest>
etiqueta. Entonces, para que todo funcione de inmediato y todo se genere como se espera, la ruta a MainActivity.java debe ser la misma que el nombre del paquete.ejemplo:
el nombre del paquete de su aplicación:
com.mycompanyname.myappname
ubicación de MainActivity.java:
android/app/src/main/java/com/mycompanyname/myappname/MainActivity.java
fuente
Reconstruí el proyecto con
react-native upgrade
. Mi problema fue entonces que tenía archivos antiguos que hacían referencia a los nombres de paquetes antiguos (porque cambié el nombre de la aplicaciónpackage.json
). Una vez que los eliminé, resolví el problema.fuente
En su
MainActivity.java
, puede comprobar que la primera línea espackage com.YOU_APP_NAME;
Si esta línea no existe, debe agregarla.
fuente
En mi caso, cambié el nombre del paquete tanto en el archivo BUCK como en el archivo Manifest.
En el archivo BUCK, cambie de la siguiente manera.
fuente
Una combinación de algunas respuestas me ayudó, resumen:
MainApplication.java
etc.)BUCK
archivofuente
package.json
y qué quiere decir con "conectar"?La actualización de react-native resolvió este error:
Ahora construye de nuevo -
fuente
react-native link
nuevo después para volver a vincular las dependencias nativas.Si cambió el nombre de su,
bundle identifier
es probable que deba cambiar:Tu
android/app/src/main/....../MainApplication.java
paquete e importaciones .Aunque
react-native-rename
usé el paquete npm , no se encargó de algunos archivosMainApplication.java
yMainActivity.java
.fuente
Elimine los archivos antiguos que podrían estar allí en android / app / src / main / java / com Simplemente conserve el archivo con el nuevo nombre de la aplicación. Entonces hazlo
react-native upgrade
.fuente
Compruebe si se ha perdido la instalación de react-native-gest-handler.
con hilo
hilo añadir react-native-gestor-handler
o con npm
npm install --save react-native-gesto-handler
Entonces
react-native link react-native-gesto-handler
fuente
Experimenté esto mientras seguía https://dev.to/karanpratapsingh/quick-guide-for-updating-package-name-in-react-native-3ei3 . Estaba cambiando el nombre de mi aplicación de
com.company_app
acom.mycompany.myapp
, aparentemente, había algunos archivos que todavía necesitaba actualizar pero no estaban incluidos en la guía que estaba siguiendo, creo que la guía es solo para general, como una nueva aplicación nativa de reacción, resolví esto haciendo una búsqueda globalcom.company_app
y simplemente reemplazando cada unocom.mycompany.myapp
cuando tenga sentido.fuente