Как дублировать проект SDK-образца в рабочее пространство?

Моя цель состоит в том, чтобы дублировать примерный проект NotePad таким образом, что если я буду возиться с исходными файлами, чтобы учиться на экспериментах, исходные файлы примеров будут не. Рациональное достижение этой цели очень хорошо объясняется в пулях 1-2-3 в этом сообщении by @Neutrino.

На основании сообщения @Neutrino я выполнил следующие шаги:

Шаг 1: Скопируйте образец кода во временное место (вне каталога рабочей области):

 1. Close Eclipse.
 2. Copy the entire sample folder
    **NotePad** from C:\android-sdk-windows\samples\android-7
    to C:\Users\androideve\Documents\NotePad

Шаг 2. Импорт из копии в рабочее пространство:

   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.

Это приводит к созданию проекта, но оно содержит 21 ошибку без каких-либо подсказок относительно того, что их вызывает (помните, что я новичок в Android, и я не писал программу NotePad):

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

Что я сделал неправильно и что мне нужно сделать, чтобы сделать копию этого примера NotePad и запустить?

Ответ 1

ОК, я думаю, что добираюсь туда (обратите внимание на тонкие различия между исходными шагами и следующими):

Шаг 1: Скопируйте образец кода во временное место (вне каталога рабочей области):

 1. Close Eclipse.
 2. Copy the entire sample folder
    **NotePad** from C:\android-sdk-windows\samples\android-8
    to C:\Users\androideve\Documents\NotePad

Шаг 2. Импорт из копии в рабочее пространство:

   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.

Теперь проект создается по-прежнему, но вместо 21 ошибки у меня есть только 1 предупреждение:

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

У меня также есть два красных сообщения на консоли:

[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)

Это правда: в C:\android-sdk-windows нет AndroidManifest.xml, но есть один в каталоге NoteList. Почему он жалуется на это? Почему он смотрит в C:\android-sdk-windows?

В любом случае, после создания конфигурации запуска, экземпляр-проект с копированным-verbatim продолжал работать на эмуляторе без каких-либо проблем (теперь я могу, наконец, перейти к изучению его части программирования).

В целом, источником проблемы было то, что я использовал образец Android 7 (вместо Android 8), и я начал с целью сборки 1.5 (вместо 2.2).

Теперь все хорошо.:)

Ответ 2

Попробуйте убедиться, что ваши инструкции импорта верны:

R не может быть разрешено - ошибка Android

Кроме того, почему вы думаете, что он смотрит на C:\sb\workspace\NotesList\bin\resources.ap_? Это не где ваш проект хранится, не так ли?


Возможно, я попробую сделать это:

  • Удалите проект из рабочей области, также удалите его с диска (или переименуйте его, если хотите сохранить его, чтобы он не противоречил проекту, который вы собираетесь импортировать)
  • В Eclipse File > Import и выберите опцию Existing Projects into Workspace
  • Выберите Select root directory и перейдите в папку "Образцы", пока не найдете корневой каталог NodePad
  • Нажмите Open или независимо от того, какая соответствующая опция "ОК"
  • Установите флажок Copy projects into workspace
  • Нажмите Finish

Это должно импортировать красивую копию копий API для вашего мастерства, оставив исходный источник в дереве каталогов без изменений

Ответ 3

Щелкните правой кнопкой мыши по проекту Eclipse, выберите свойства, перейдите в Android и убедитесь, что выбран правильный SDK.

Ответ 4

Упрощенное решение:

  • "Новый";
  • "Проект Android"
  • вставить имя временного проекта (не окончательный вариант);
  • выберите "Build Target", для которого вы загрузили примеры;
  • выберите "Создать проект из существующего образца" и выберите нужный образец кода;
  • нажмите "Готово";
  • щелкните правой кнопкой мыши по проекту и выберите "Копировать";
  • щелкните правой кнопкой мыши по пустой области в Project Explorer и выберите "Вставить";
  • вставьте окончательное имя, которое вы выбрали для проекта;
  • выберите "Использовать местоположение по умолчанию", если вы хотите, чтобы проект находился в обычном пути в рабочей области.

Чтобы он, проект и код теперь дублируются и работают в вашей рабочей области.