¿Cómo duplicar un proyecto de ejemplo de SDK en el espacio de trabajo?
Mi objetivo es duplicar el proyecto de muestra de Bloc de notas de tal manera que si hago tintineo con los archivos de origen para aprender a través de la experimentación, los archivos de ejemplo originales no se verán afectados. El racional detrás de este objetivo se explica muy bien en las balas 1-2-3 en este post por @Neutrino.
Basado en el post de @ Neutrino, realicé los siguientes pasos:
- No se encontró error de repositorio en la instalación de ADT en eclipse Indigo
- Android ADT bundle
- Creación rápida en Android con eclipse
- Eclipse github plugin: Cometer cambios de error - Entrada no encontrada por path
- Eclipse android sdk bundle no puede abrir Android SDK Manager
Paso 1: Copiar código de ejemplo a una ubicación temporal (fuera del directorio de espacio de trabajo):
1. Close Eclipse. 2. Copy the entire sample folder **NotePad** from C:\android-sdk-windows\samples\android-7 to C:\Users\androideve\Documents\NotePad
Paso 2. Importe de la copia al espacio de trabajo:
1. Start Eclipse 2. File > New > Project > Android Project [Next] > Create project from existing **source**: C:\Users\androideve\Documents\NotePad 3. Delete project from Package Explorer (without deleting its files from disk!) 4. File > Import... > General > Existing Projects into Workspace [Next] > Browse: C:\Users\androideve\Documents\NotePad > Check "Copy projects into workspace" [Finish] 5. Delete entire folder C:\Users\androideve\Documents\NotePad from disk.
Esto resulta en la creación del proyecto, pero viene con 21 errores sin ninguna pista de qué los causa (recuerde, soy un novato de Android y no escribí el programa de Bloc de notas):
Description Resource Path Location Type Error generating final archive: java.io.FileNotFoundException: C:\sb\workspace\NotesList\bin\resources.ap_ does not exist NotesList Unknown Android Packaging Problem error: Error: String types not allowed (at 'layout_height' with value 'match_parent'). note_editor.xml /NotesList/res/layout line 17 Android AAPT Problem error: Error: String types not allowed (at 'layout_width' with value 'match_parent'). note_editor.xml /NotesList/res/layout line 17 Android AAPT Problem error: Error: String types not allowed (at 'layout_width' with value 'match_parent'). noteslist_item.xml /NotesList/res/layout line 17 Android AAPT Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 148 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 151 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 175 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 177 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 194 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 195 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 265 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 269 Java Problem R cannot be resolved to a variable NoteEditor.java /NotesList/src/com/example/android/notepad line 276 Java Problem R cannot be resolved to a variable NotesList.java /NotesList/src/com/example/android/notepad line 83 Java Problem R cannot be resolved to a variable NotesList.java /NotesList/src/com/example/android/notepad line 94 Java Problem R cannot be resolved to a variable NotesList.java /NotesList/src/com/example/android/notepad line 177 Java Problem R cannot be resolved to a variable NotesLiveFolder.java /NotesList/src/com/example/android/notepad line 48 Java Problem R cannot be resolved to a variable NotesLiveFolder.java /NotesList/src/com/example/android/notepad line 51 Java Problem R cannot be resolved to a variable TitleEditor.java /NotesList/src/com/example/android/notepad line 71 Java Problem R cannot be resolved to a variable TitleEditor.java /NotesList/src/com/example/android/notepad line 80 Java Problem R cannot be resolved to a variable TitleEditor.java /NotesList/src/com/example/android/notepad line 83 Java Problem
¿Qué hice mal y qué necesito para crear y ejecutar la copia de este ejemplo de NotePad?
- Eclipse no reconocerá la revisión de la biblioteca de soporte de Android 9
- Fuentes Eclipse Zoom out & Zoom in Issue
- ¿Qué versión de Eclipse se incluye con el paquete SDK ADT para Android Dev?
- ¿Qué es un buen sistema de control de código libre para el desarrollo de android de eclipse?
- Emulador para samsung galaxy tab 10.1
- ¿Qué hace exactamente el comando "Fix Project Properties"?
- No se puede importar com.google.android.maps.MapView
- Eclipse no reconoce "R.id ..." con Android
OK, creo que estoy llegando (observe las sutiles diferencias entre los pasos originales y los siguientes):
Paso 1: Copiar código de ejemplo a una ubicación temporal (fuera del directorio de espacio de trabajo):
1. Close Eclipse. 2. Copy the entire sample folder **NotePad** from C:\android-sdk-windows\samples\android-8 to C:\Users\androideve\Documents\NotePad
Paso 2. Importe de la copia al espacio de trabajo:
1. Start Eclipse 2. File > New > Project > Android Project [Next] > Create project from existing **source**: C:\Users\androideve\Documents\NotePad > Build Target: **Uncheck** Android 1.5. **Check** Android 2.2. [Finish] 3. Delete project from Package Explorer (without deleting its files from disk!) 4. File > Import... > General > Existing Projects into Workspace [Next] > Browse: C:\Users\androideve\Documents\NotePad > Check "Copy projects into workspace" [Finish] 5. Delete entire folder C:\Users\androideve\Documents\NotePad from disk.
Ahora, el proyecto se crea como antes, pero en lugar de 21 errores, sólo tengo una advertencia:
Description Resource Path Location Type Attribute minSdkVersion (3) is lower than the project target API level (8) AndroidManifest.xml /NotesList line 1 Android ADT Problem
También tengo dos mensajes rojos en la consola:
[2011-02-10 12:45:50 - com.android.ide.eclipse.adt.internal.project.AndroidManifestHelper] Unable to read C:\android-sdk-windows\AndroidManifest.xml: java.io.FileNotFoundException: C:\android-sdk-windows\AndroidManifest.xml (The system cannot find the file specified) [2011-02-10 12:45:50 - com.android.ide.eclipse.adt.internal.project.AndroidManifestHelper] Unable to read C:\android-sdk-windows\AndroidManifest.xml: java.io.FileNotFoundException: C:\android-sdk-windows\AndroidManifest.xml (The system cannot find the file specified)
Es cierto: No hay AndroidManifest.xml en C: \ android-sdk-windows, pero hay uno en el directorio de NoteList. ¿Por qué se queja de esto? ¿Por qué está buscando en C: \ android-sdk-windows?
De todos modos, después de crear una configuración de lanzamiento, el proyecto copiado-verbatim de la muestra procedió a funcionar en el emulador sin ningún problema (ahora puedo finalmente proceder a aprender el lado de la programación de él).
En resumen, la fuente del problema fue que estaba usando la muestra de Android 7 (en lugar de Android 8) y que procedí con la meta de compilación 1.5 (en lugar de 2.2).
Todo está bien ahora. 🙂
Intente asegurarse de que sus declaraciones de importación son correctas:
R no se puede resolver – Error de Android
Además, ¿por qué crees que está buscando en C:\sb\workspace\NotesList\bin\resources.ap_
? No es donde se almacena su proyecto, ¿verdad?
¿Puedo sugerir intentar hacer esto en su lugar:
- Elimine el proyecto de su área de trabajo, también eliminarlo del disco (o renombrarlo si desea mantenerlo para que no entre en conflicto con el proyecto que va a importar)
- En Eclipse,
File > Import
y elija la opciónExisting Projects into Workspace
- Seleccione
Select root directory
y busque la carpeta Samples hasta encontrar el directorio raíz NodePad - Haga clic en
Open
o en cualquier opción relevante "Aceptar". - Marque la casilla
Copy projects into workspace
- Haga clic en
Finish
Esto debería importar una buena copia de carbono de la demostración API para su manipulación, dejando la fuente original en el árbol de directorios libre de modificaciones
Haga clic con el botón derecho en su proyecto de Eclipse, elija propiedades, vaya a Android y asegúrese de que el SDK correcto está seleccionado.
Solución más simple:
- "Nuevo";
- "Proyecto Android"
- Inserte un nombre de proyecto temporal (no el final que desea);
- Seleccione un "Build Target" para el que haya descargado ejemplos;
- Seleccione "Crear proyecto de muestra existente" y elija el ejemplo de código que desee;
- Haga clic en "Finalizar";
- Haga clic derecho sobre el proyecto y seleccione "Copiar";
- Haga clic derecho en un área vacía en el Explorador de proyectos y seleccione "Pegar";
- Inserta el nombre final que has elegido para el proyecto;
- Seleccione "Usar ubicación predeterminada" si desea que el proyecto esté en la ruta habitual dentro del área de trabajo.
Eso es todo, el proyecto y el código ahora están duplicados y funcionan en su espacio de trabajo.
- TextView y Button en cada fila y onListItemClick ()
- Son los registros de depuración de Android realmente despojado en tiempo de ejecución?