Итак мы создали свой первый проект для Андроида и теперь следует переходить к его частностям, и конкретике.
Первое что мы сделаем это найдем наш проект в системе "файловых координат" вашего девайса, и поэтому я для вас очертил его местоположение на этом рисунке в виде пути к головной папке всех проектов в вашей системе (см. текст обведенный красным прямоугольником). Но это не всегда обязательно так. Реально проект может находится где угодно, но только проекты созданые из ядра инструментария AIDE. Итак полный путь к папке, с учетом имени твоего проекта будет таким
/sdcard/AppProjects/Имя_проекта
Открываем эту папку и мы видим, что в ней несколько других папок и файлов. На момент начала проекта нас интересует пока только - 2 папки (res, src) и один файл, который во всех проектах имеет одинаковое название, и который определяет наш текущий проект . Этот файл называется - AndroidManifest.xml
Можно не останавливаться на этом файле и сразу переходить к сути проекта, но я настойчиво советую его открыть и постараться изучить несколько его аспектов, которые, помогут тебе реально понимать устройство проекта, тем более наш проект пишется в ручную без специальных средств синтеза конструкций типа ads или eclipse. Так же тебе должно быть понятно, что все в проекте пишется в духе этого файла и поэтому любая конструкция описательная в формате XML должна начинаться с такой конструкции
<?xml version="1.0" encoding="utf-8"?>
Это объявление говорит всем, что далее следует текст формата xml версии 1.0 и в кодировке utf-8. Именно эта декларация позволяет всем без дополнительных проверок использовать кодировку в том виде как она представлена - и в конечный результат вставлять эти данные так как требуется в реалии. К примеру если выходной документ будет сформирован в другой кодировке, например КОИ-8Р (на сегодня экзот))), то приведенный текст будет перекодирован из utf-8 соответствено в кои-8.
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mycompany.myapp" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:label="@string/app_name" android:name=".MainActivity" > <intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
Здесь приведен самый главный файл твоего проекта, который определяет всю структуру его и фактическую начинку. Сейчас мы не будем расшифровывать каждый атрибут каждого тега манифеста, а лишь остановимся на главной структуре его.
Любой манифест всегда начинается с тега manifest, и им заканчивается, а его главные атрибуты oпределяют
- xmlns:android="http://schemas.android.com/apk/res/android"
- пространство имен - этот параметр всегда применяется в любом документе нашего проекта как коннектор пространства имен в системе android
- package = "com.mycompany.myapp"
- идентификатор пакета, который однозначно определяет принадлежность к проекту
Следующий, правда не обязательный, но информационно очень нужный тег определяющий диапазон использования нашего проекта на различных девайсах это тег uses-sdk. Его атрибуты мы все объяснять не будем сейчас, но остановимся лишь на двух, а именно
- android:minSdkVersion="8"
- атрибут номера версии SDK минимального использования в девайсах. Если в твоем девайсе используется SDK более ранней версии, чем указан в этом параметре, то твоему пакету будет отказано в установке в девайс
- android:targetSdkVersion="16"
- параметр указывает на текущую версию SDK. Этот параметр часто становится источником многих ошибок, из-за которых пакет после компиляции и установке в девайс не запускается, и причина здесь в соответствии версии SDK твоего девайса и установленной в параметре. В любом случае версия твоего SDK должна быть равна или меньше этого параметра, иначе при запуске пакет запустится с ошибкой
Вот в принципе и все что нам нужно знать для первого знакомства с головным файлом проекта. По мере изучения материала мы вернемся и к другим атрибутам и тегам манифеста и попытаемся объяснить их назначение тебе. Единственное что следует заметить, что система AIDE - сама синтезирует этот файл по данным, которые ты ввел при создании проекта.
И еще если ты открываешь файл манифеста в AIDE для редактирования - то всегда текущий пакет закрывается, и автоматом открывается пакет на который ссылается файл манифеста только что тобой открытым.
!! до встрече.