Как скопировать SDK-образец проекта в рабочую область? - PullRequest
10 голосов
/ 08 февраля 2011

Моя цель - продублировать пример проекта NotePad так, чтобы, если я возьму с собой исходные файлы, чтобы научиться экспериментировать, исходные файлы примеров будут , а не .Рациональное обоснование этой цели очень хорошо объяснено в пулях 1-2-3 в этого поста @ 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 для сборки и запуска?

Ответы [ 4 ]

11 голосов
/ 10 февраля 2011

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

Шаг 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, но есть одно вКаталог заметок.Почему это жалуется на это?Почему это выглядит в C: \ android-sdk-windows?

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

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

Теперь все в порядке.:)

2 голосов
/ 02 марта 2011

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

2 голосов
/ 10 февраля 2011

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

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

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


Могу ли я предложить вместо этого сделать следующее:

  1. Удалите проект из вашего рабочего пространства, а также удалите его с диска (или переименуйте его, если вы хотите сохранить его, чтобы он не конфликтовал с проектом, который вы собираетесь импортировать)
  2. В Eclipse File > Import и выберите параметр Existing Projects into Workspace
  3. Выберите Select root directory и переходите к папке Samples, пока не найдете корневой каталог NodePad
  4. Нажмите Open или любую другую соответствующую опцию "OK"
  5. Установите флажок Copy projects into workspace
  6. Нажмите Finish

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

1 голос
/ 19 августа 2011

Более простое решение:

  1. "Новый";
  2. "Android Project"
  3. вставка временного имени проекта (не того, который вам нужен);
  4. выберите «Build Target», для которого вы скачали примеры;
  5. выберите «Создать проект из существующего образца» и выберите нужный пример кода;
  6. нажмите «Готово»;
  7. щелкните правой кнопкой мыши проект и выберите «Копировать»;
  8. щелкните правой кнопкой мыши пустую область в Project Explorer и выберите «Вставить»;
  9. вставьте окончательное имя, которое вы
  10. выберите «Использовать расположение по умолчанию», если вы хотите, чтобы проект находился по обычному пути в рабочей области.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...