studio renombrar que paquete nombre change applicationid application appid android package manifest

renombrar - Android: incluyendo mĂșltiples paquetes de Java para manifestar



que es nombre del paquete de android (4)

Android crea automáticamente la clase llamada "R" en el paquete declarado en el manifiesto de su aplicación. Cuando todas tus clases estén dentro de ese paquete, nunca tendrás que importar explícitamente "R". Sin embargo, si tiene clases en otros paquetes, no lo verán de forma predeterminada y tendrá que incluir

import <app-package>.R;

o

import <app-package>.*;

(sustituyendo el nombre real por <app-package> por supuesto).

Si incluye proyectos de biblioteca en su aplicación, entonces ellos pueden hacer referencia a sus propias clases "R", que se generarán dentro de sus paquetes domésticos. Si tiene varias actividades independientes que deben agruparse en una aplicación final, debe considerar seriamente el uso de proyectos de biblioteca en lugar de fusionar manualmente las cosas. Podría hacerte la vida mucho más fácil.

La aplicación que estoy desarrollando tiene muchas actividades organizadas en siete paquetes java. Originalmente escribí toda la codificación y las cosas para cada grupo de actividades en un paquete java como proyectos diferentes.

Ahora estoy en el punto donde quiero juntar todos los paquetes en un solo proyecto. Cuando agrego un nuevo paquete a la carpeta src, recibo un error para todos mis valores de R.id. * ("R no se puede resolver").

Mi instinto me dice que hay algo elegante que tengo que poner en el manifiesto del proyecto, pero no puedo encontrar ningún recurso en línea para decirme cómo.

(Nota: He leído this y this y todavía no pude averiguar cómo agregar paquetes adicionales a mi proyecto).


Asegúrese de que la declaración de importación en la parte superior de la Actividad haga referencia al archivo R correcto. Cada proyecto tiene su propio archivo R, por lo que si copia una Actividad de un proyecto a otro, seguirá intentando hacer referencia al archivo R del proyecto anterior.

No necesita ninguna inclusión explícita de diferentes paquetes en el manifiesto. Para incluir actividades de dos paquetes diferentes, diga:

com.example.package1.Activity1 com.example.package2.Activity2

puedes hacer lo siguiente:

<manifest package="com.example" . . . > <application . . .> <activity android:name=".package1.Activity1" . . . /> <activity android:name=".package2.Activity2" . . . /> </application> </manifest>


Compruebe que el archivo de diseño -> main.xml es correcto e incluye el android:id="@+id/whateverIdHasCausedYouTheError"

El archivo R.java se actualizará para incluir el id .. y bam, su error debería desaparecer.


El problema puede persistir incluso si cambiamos el archivo de manifiesto. para evitarlo debemos agregar un import com.example.R; en todas nuestras clases.

ejemplo: MainActivity.class en package2

pakage com.example.package2.Activity2 import com.example.R;

(TestActivity.class en package1)

pakage com.example.package1.Activity1 import com.example.R;