tag:blogger.com,1999:blog-34658911282982753582024-02-21T21:27:25.746+03:00Разработка мобильных приложений (from Shigina NA)Уроки по освоению программирования для мобильных устройств. Курс для магистров ПензГТУ и всех желающих. Ориентируемся на Андроид!Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.comBlogger17125tag:blogger.com,1999:blog-3465891128298275358.post-38551386888303161472016-11-30T15:41:00.000+03:002016-11-30T16:33:58.289+03:00<div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="text-align: left;">
Новая организация курса (для студентов 2017 г.)</h2>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTtkG8YoyUmo2WFZM74eX4z_5-iHnMD1GmgXmrE1L3dIf14koJWDoKoMXyDfPL6Fa2nQnKQzTWtyMxnD0wyQ3s7GvOPRvZ0nVVt8jA6EjdnUx69d5UN-D0_SqK3QGPQPWlQ5yeDzoQkCX-/s1600/2017.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTtkG8YoyUmo2WFZM74eX4z_5-iHnMD1GmgXmrE1L3dIf14koJWDoKoMXyDfPL6Fa2nQnKQzTWtyMxnD0wyQ3s7GvOPRvZ0nVVt8jA6EjdnUx69d5UN-D0_SqK3QGPQPWlQ5yeDzoQkCX-/s200/2017.png" width="198" /></a></div>
Год 2017 - по восточному календарю - проходит под знаком огненного петуха. Желаю всем студентам, чтобы жареный петух не клюнул вас в самый неожиданный момент, чтобы все зачетные работы по курсу вы сдавали вовремя.<br />
<a href="https://www.blogger.com/blogger.g?blogID=3465891128298275358" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"></a>В этом учебном году обновляю материалы курса: каждой теме будет отведена отдельная страница, на которой выкладываю свои справочные материалы, ссылки на рекомендуемые ресурсы в интернете, а также задания по теме.
<br />
<br />
<br />
<br />
<br />
<br />
<ul style="text-align: left;">
<li>Работа 1: <a href="https://www.blogger.com/blogger.g?blogID=3465891128298275358#editor/target=page;pageID=2285641334071931069;onPublishedMenu=pages;onClosedMenu=pages;postNum=0;src=pagename">знакомство с мобильными устройствами (2 ч.)</a></li>
<li>Работа 2: <a href="https://www.blogger.com/blogger.g?blogID=3465891128298275358#editor/target=page;pageID=341597005311646223;onPublishedMenu=allpages;onClosedMenu=allpages;postNum=0;src=pagename" target="_blank">установка и настройка среды разработки приложений </a>(2 ч.)</li>
<li>Работа 3. <a href="https://www.blogger.com/blogger.g?blogID=3465891128298275358#editor/target=page;pageID=7459757619568691119;onPublishedMenu=allpages;onClosedMenu=allpages;postNum=0;src=pagename" target="_blank">основы языка программирования Java</a> (6 ч.)</li>
</ul>
</div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.comПенза, Пензенская обл., Россия53.2272903 4552.9228803 44.354553 53.5317003 45.645447tag:blogger.com,1999:blog-3465891128298275358.post-69363839252081301742015-06-02T21:48:00.001+03:002015-07-09T13:23:06.923+03:00Мобильный клиент или Контрольная работа 3.<html>
<head>
<meta name="google-site-verification" content="_FEbYYHTikPA5K6kaPqUj4AVwRzLsrsmt0h9m0tYEBU" />
</head>
<body>
<div dir="ltr" style="text-align: left;" trbidi="on">
<h1>
Как построить клиент-серверное приложение </h1>
<h2>
Введение</h2>
В этом уроке мы будем учиться тому, как установить
коммуникацию между клиентом и сервером, причем клиент – это мобильное <span lang="EN-US">Android</span>-приложение, а сервер
– это интернет-сервис, хранящий общие для многих клиентов данные и выполняющий
их обработку.<br />
Примеров таких приложений множество:<br />
<ul>
<li>мобильный клиент делает фотосъемку и посылает файлы изображений в общее серверное хранилище, где могут
подвергаться обработке и откуда они доступны для других клиентов (инстаграм); </li>
<li>мобильный клиент делает опрос и результат посылает серверу, где данные опросов
интегрируются, обратно посылается статистика ответов (участие в телешоу,
исследование рынка) ; </li>
<li>координаты мобильного клиента отсылаются на сервер, где
наносятся на карту, обратно отсылается карта ближайшего окружения с выделенными типами мобильных
клиентов и их телефонов (например, - передвижные пункты проката, ларьки, такси,
попутчики, друзья, игроки…), </li>
<li>результаты мобильной игры передаются на сервер для
составления рейтинга игроков</li>
<li>и т.п.</li>
</ul>
В простейшем случае для указанных целей можно использовать веб-приложение, где:<br />
- клиентом является браузер,
<br />
- сервер – это веб-сервер,
<br />
- для обмена данными используется http-протокол.<br />
Достоинство такого приложения – простота разработки, так как
все подробности обмена данными с сервером уже «упакованы» в браузере.
Недостатки: низкое быстродействие, ограниченная функциональность.<br />
Поэтому мы рассмотрим здесь, как разработать мобильный
клиент, используя «родной» <span lang="EN-US">Java</span>. Остальные компоненты системы останутся такими
же. Пример информационных потоков в приложении показан на рисунке 1.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTrYWafWKONNxF6kpVtpWtpA2HEQ5j5xWP1XABDnfddEUGobSadzQjjACRHAHqi8xkA5GEtlIGQLl4kpVKOPt2E0TGfq4XckGEEC6cEx6vGXnTe-DUsr4DZ6e-wh6oy1KqE1IJcAlFVEAV/s1600/cli-serv.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTrYWafWKONNxF6kpVtpWtpA2HEQ5j5xWP1XABDnfddEUGobSadzQjjACRHAHqi8xkA5GEtlIGQLl4kpVKOPt2E0TGfq4XckGEEC6cEx6vGXnTe-DUsr4DZ6e-wh6oy1KqE1IJcAlFVEAV/s400/cli-serv.png" width="400" /></a></div>
Таким образом, в систему входят следующие компоненты:<br />
<br />
<ol>
<li>клиентский метод, управляющий обработкой пользовательского интерфейса – ввод данных, нажатие кнопок и т.п. (onCreate)</li>
<li> клиентский метод для обмена информацией с веб-сервером (GetText>), </li>
<li> серверный скрипт для получения данных от клиента и возврата ответа (httppost.php); </li>
<li> клиентский метод для отображения полученных данных (showData). </li>
</ol>
В зависимости от выбранных технологий на клиенте и сервере все компоненты могут быть реализованы
совершенно по-разному.<br />
В данном уроке рассмотрим пример приложения «Голосование», в котором пользователь должен ввести регистрационные данные
(имя, email) и выбрать один из предложенных вариантов ответа на вопрос. Затем номер выбранного
варианта отсылается на сервер, где хранятся счетчики голосов по каждому
варианту, а также БД с регистрационными данными пользователей. К нужному
счетчику добавляется 1, а пользователь получает сообщение о приеме данных или
отказе сервера, а также значения счетчиков. Если пользователь желает посмотреть
статистику голосования, значения счетчиков выводятся в виде диаграммы.<br />
<div>
<i><b>Примечание</b>: пример приложения
рассмотрен исключительно в образовательных целях. Не учитываются такие
необходимые для реальной жизни компоненты приложения, которые обеспечивают
безопасность, надежность и др.</i></div>
<h3>
Разработка пользовательского интерфейса </h3>
Спланируем интерфейс клиентского приложения (рисунок 2):<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1VL0JD75HpeVDTuqMk2lcARQA-Xikyc2-NBoUT0IMh7gUQI2SbyFliC4czwwMJyQhD9MvL_8RkczH1n3PsLcVU2OdeeqwvrDUsWvPdefZ0fze-ooN1C2B1Mee_7JqVA-WkvnTVKkfLJPU/s1600/interface.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1VL0JD75HpeVDTuqMk2lcARQA-Xikyc2-NBoUT0IMh7gUQI2SbyFliC4czwwMJyQhD9MvL_8RkczH1n3PsLcVU2OdeeqwvrDUsWvPdefZ0fze-ooN1C2B1Mee_7JqVA-WkvnTVKkfLJPU/s320/interface.png" width="283" /></a></div>
Используем табличный макет из 2-х столбцов. В верхней строке
- два элемента TextView для подсказки и вывода результатов. Там будет отображаться ответ пользователя и статистика.<br />
Во 2-ой строке – кнопки для работы с сервером (получить
статистику и сохранить данные на сервере).<br />
Третья строка – это вопрос и подсказка к нему (текстовые поля). Далее две
строки содержат 4 кнопки для выбора ответа. <br />
Наконец, последние 2 строки содержат подсказки и поля
для ввода имени и почтового адреса.<br />
<h3 style="text-align: left;">
Разработка серверной части</h3>
<div class="MsoNormal">
Сервер не просто хранит файлы, но и обрабатывает их:
анализирует полученные от клиента значения, увеличивает счетчики, посылает их
значения клиенту.<o:p></o:p></div>
<div class="MsoNormal">
В нашем примере все операции будут реализованы на языке <span lang="EN-US">PHP</span>. <o:p></o:p></div>
<div class="MsoNormal">
Все данные будем хранить в базе данных:<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 41.5pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: Symbol; font-size: 14pt;">-<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]-->счетчики голосования в таблице <span lang="EN-US">result</span> (<span lang="EN-US">code</span>, <span lang="EN-US">rating</span>), где – первый
столбец – код ответа, второй – рейтинг ответа (целые числа);<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 41.5pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: Symbol; font-size: 14pt;">-<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]-->список пользователей – в таблице <span lang="EN-US">users</span>(<span lang="EN-US">name</span>, <span lang="EN-US">email</span>).<o:p></o:p></div>
<div class="MsoNormal" style="text-indent: 23.5pt;">
Алгоритм работы сервера:<o:p></o:p></div>
<div class="MsoNormal">
1) Вначале проводим разбор <span lang="EN-US">http</span>-запроса и записываем в 3 переменные
значения: имя пользователя, почту и номер ответа.<o:p></o:p></div>
<div class="MsoNormal">
2) Затем пользовательское имя и почту с помощью команды
выборки ищем в базе данных. Если такой пользователь не найден, то добавляем
новую запись в таблицу <span lang="EN-US">users</span>.<br />
3) Анализируем код выбранного пользователем ответа <span lang="EN-US">codeAnswer</span>:<br />
<o:p></o:p></div>
<div class="MsoNormal">
- делаем выборку в переменную <span lang="EN-US">ratingValue</span><span lang="EN-US"> </span>из
таблицы <span lang="EN-US">result</span>: текущее значение счетчика <span lang="EN-US">rating</span><span lang="EN-US"> </span>при
условии <span lang="EN-US">code</span>= <span lang="EN-US">codeAnswer</span>. <o:p></o:p></div>
<div class="MsoNormal">
- если таких ответов еще не было в БД (<span lang="EN-US">ratingValue</span> = пустое значение), то добавляем
в <span lang="EN-US">result</span><span lang="EN-US"> </span>новую запись (<span lang="EN-US">CodeAnswer</span>, 1);<o:p></o:p></div>
<div class="MsoNormal">
- иначе: в <span lang="EN-US">result</span><span lang="EN-US"> </span>заменяем значение <span lang="EN-US">rating</span>=<span lang="EN-US">ratingValue</span>+1
для записи с <span lang="EN-US">code</span>= <span lang="EN-US">codeAnswer</span>.<o:p></o:p></div>
4) Читаем все значения таблицы <span lang="EN-US">result</span><span lang="EN-US"> </span>и
формируем результат, возвращаемый в выходной поток.<br />
<div class="MsoNormal">
<h4 style="text-align: left;">
<b><span style="font-size: 14.0pt; mso-bidi-font-size: 11.0pt;">Отладка и тестирование сервера</span></b></h4>
</div>
<div class="MsoNormal">
Нам нужен веб-сервер. <o:p></o:p></div>
<div class="MsoNormal">
Во-первых, вы можете установить на домашнем компьютере <span lang="EN-US">web</span>-сервер, <span lang="EN-US">php</span><span lang="EN-US"> </span>и СУБД,
например, <span lang="EN-US">MySQL</span>. После
того, как приложение будет отлажено, перенести серверную часть приложения на
хостинг в интернет и провести тестирование в реальных условиях. <o:p></o:p></div>
<div class="MsoNormal">
Во-вторых, можно сразу найти хостинг с поддержкой <span lang="EN-US">php</span> и СУБД, разобраться, как
с ним работать и начать отладку в условиях «живого интернета». Например, на
сайте <a href="http://www.hostinger.ru/"> <span style="background: white; color: #1155cc; font-family: "Arial",sans-serif; font-size: 9.5pt;"><b>http://www.hostinger.ru</b></span></a> всё это есть
- и бесплатно.<o:p></o:p></div>
<div class="MsoNormal">
Есть достоинства и того и другого метода. Выбирайте сами,
учитывая, что обучение работе с веб-сервером не входит в рамки данного курса, а
для сдачи контрольной работы достаточно продемонстрировать вариант действующего
приложения в любом виде. <o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Прежде, чем отлаживать совместную работу клиента и сервера,
отладьте по отдельности каждую программу. Для сервера – сначала убедитесь в
работоспособности скрипта, выдавая запрос к серверу с помощью браузера. Для
этого можно сделать простую веб-страничку с формой, имитирующую интерфейс
мобильного приложения.<o:p></o:p><br />
<br /></div>
<div class="MsoNormal">
<a href="https://drive.google.com/folderview?id=0B_2Y-jfphvRTfi1QZ29OOU41OVkwU3ozd3lLbDZ6SS1iSVJ0Tm9NQng3Q0IzdTVqeFV5WUk&usp=sharing">Текст серверной части см. в <span style="background: yellow; mso-highlight: yellow;">файле </span><span lang="EN-US" style="background: yellow; mso-ansi-language: EN-US; mso-highlight: yellow;">httpgetpost</span><span style="background: yellow; mso-highlight: yellow;">.</span><span lang="EN-US" style="background: yellow; mso-ansi-language: EN-US; mso-highlight: yellow;">php</span><span lang="EN-US" style="background: yellow; mso-highlight: yellow;"> </span><span style="background: yellow; mso-highlight: yellow;">. </span><span style="font-family: "Calibri",sans-serif; font-size: 12.0pt; mso-ansi-language: RU; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-font-size: 11.0pt; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;">Пример кода отладочной веб-страницы приведен в <span style="background: yellow; mso-highlight: yellow;">файле </span></span><span lang="EN-US" style="background: yellow; font-family: "Calibri",sans-serif; font-size: 12.0pt; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-font-size: 11.0pt; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-highlight: yellow;">index</span><span style="background: yellow; font-family: "Calibri",sans-serif; font-size: 12.0pt; mso-ansi-language: RU; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-font-size: 11.0pt; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-highlight: yellow;">.</span><span lang="EN-US" style="background: yellow; font-family: "Calibri",sans-serif; font-size: 12.0pt; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-font-size: 11.0pt; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-highlight: yellow;">html</span></a><br />
<br />
<h3 style="text-align: left;">
<b><span style="font-family: Calibri, sans-serif; font-size: 14pt;">Разработка клиентской
части </span></b></h3>
<div class="MsoNormal" style="text-indent: 35.45pt;">
Поскольку обмен данными с
сервером – длительная операция, то необходимо создать обработчик этой операции,
функционирующий в фоновом режиме, чтобы обеспечить доступность элементов
пользовательского интерфейса во время обмена данными. В противном случае приложение
«зависает» на время работы с сервером, не реагируя на действия пользователя.<o:p></o:p></div>
<div class="MsoNormal" style="text-indent: 35.4pt;">
В нашем случае клиентская часть
содержит методы:<o:p></o:p></div>
<div class="MsoNormal">
<b><span lang="EN-US">onCreate</span>
</b>– определяются переменные для получения данных с интерфейса,<o:p></o:p></div>
<div class="MsoNormal">
определяются обработчики всех кнопок. Если пользователь не
ввел данные в поля или не выбрал ответ – обращение к серверу не выполняется.<o:p></o:p></div>
<div class="MsoNormal">
<span lang="EN-US"><b>GetText</b></span><span lang="EN-US"> </span>– обмен данными с
сервером: формирует текстовую строку для отсылки имен и значений переменных на
сервер, посылает данные и выводит ответ, полученный с сервера, в массив из 4-х
значений. <o:p></o:p></div>
<div class="MsoNormal">
<b><span lang="EN-US">ShowData</span>
</b>– массив значений счетчиков выводится в виде диаграммы.<o:p></o:p></div>
<div class="MsoNormal">
Для отладки клиента сначала убедитесь, что интерфейс
работает, а также формируется правильный <span lang="EN-US">http</span>-запрос (хотя бы выведите его текст в <span lang="EN-US">log</span> ). Только потом можно подключаться к
серверу.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<br />
<div class="MsoNormal">
Архив проекта клиентской части (без метода вывода диаграммы) можно
<a href="https://drive.google.com/folderview?id=0B_2Y-jfphvRTfi1QZ29OOU41OVkwU3ozd3lLbDZ6SS1iSVJ0Tm9NQng3Q0IzdTVqeFV5WUk&usp=sharing">скачать по ссылке здесь.</a> <o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Планирую в ближайшее время довести проект до конца, но публикую это сообщение для того, чтобы вы смогли начать разработку, если еще не начали.</div>
<h3 style="text-align: left;">
О контрольной работе 3</h3>
<div class="MsoNormal">
Требуется модернизировать ваш проект по работе 2 так, чтобы он мог что-то сохранять на сервере и выводить некую статистику в виде диаграммы. То есть интерфейс у вас уже есть, только добавьте обмен данными с сервером вместо локальной БД. </div>
<div class="MsoNormal">
Присылаем отчеты на почту или <a href="https://groups.google.com/forum/?hl=ru#!forum/pengtu_mobile">в форум.</a> Завершить все задания нужно до 20.06. </div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
</div>
<div class="MsoNormal">
<o:p></o:p></div>
</div>
</body>
</html>Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com2tag:blogger.com,1999:blog-3465891128298275358.post-71009279253602254872015-05-07T13:06:00.000+03:002015-05-07T13:06:52.316+03:00Контрольная работа 2 по разделу 2.<div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="text-align: left;">
Контрольная работа 2 по модулю 2</h2>
Контрольная работа позволит оценить ваши знания по 8 и 9 урокам.<br />
<br />
Написать программу, которая изобразит в виде диаграммы статистику голосования.<br />
Главная активность содержит 2 кнопки (или список) - первая запускает активность "Голосование", вторая - "Статистика".<br />
Активность "Голосование" выводит вопрос и позволяет выбрать из 3-х вариантов ответа (см. варианты заданий). Ответ преобразовать в число 0, 1 или 2, затем проанализировать это число и увеличить на 1 одно из трех полей в таблице БД (БД содержит таблицу из трех полей, каждое поле - счетчик числа ответов 0, 1 или 2 вида).<br />
Вторая активность "Статистика" должна получить текущие значения счетчиков из БД и по этим значениям нарисовать диаграмму.<br />
Программа в дальнейшем будет расширена: базу данных будем хранить и синхронизировать с облаком).<br />
Вопрос придумывайте сами. Варианты ответов:<br />
<div>
<table border="1">
<tbody>
<tr><td>1</td><td>2</td> <td>3</td>
<td>4</td><td>5</td><td>6</td>
</tr>
<tr>
<td>плохо-средне-хорошо</td><td>нет-может быть-да</td> <td>никогда - иногда - всегда </td>
<td>ненавижу это равнодушен - обожаю</td> <td>очень близко - на среднем расстоянии - как можно дальше</td>
<td>первая - вторая - третья вещь (предмет, система, программа и т.п.)</td>
</tr>
</tbody></table>
</div>
<div>
Задание выполняет бригада из двух студентов.<br />
<span style="background-color: yellow;">Срок сдачи - 20</span><span style="background-color: yellow;"> мая текущего года.</span></div>
</div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-26040107088316398262015-05-07T11:24:00.000+03:002015-05-07T11:24:02.726+03:00Урок 9. Работа с базой данных <div dir="ltr" style="text-align: left;" trbidi="on">
Куда же мы без базы данных, если нужно хранить какую-то структурированную информацию: списки клиентов, заказов и прайс-листы, список артефактов, достигнутые результаты в игре, и мало ли что еще!<br />
В Андроид есть специальный класс для работы с БД SQLite (это простая реляционная БД, хранящаяся в текстовом файле).<br />
Изучаем лекцию 7 в университете ИНтуит (разделы 16.1 и 16.2)<br />
<a href="http://www.intuit.ru/studies/courses/12643/1191/lecture/22001">http://www.intuit.ru/studies/courses/12643/1191/lecture/22001</a><br />
и делаем самостоятельную работу 10:<br />
<a href="http://www.intuit.ru/studies/courses/12643/1191/lecture/22003">http://www.intuit.ru/studies/courses/12643/1191/lecture/22003</a><br />
<br />
<b>Контрольное задание к уроку:</b><br />
1) Придумайте, что в вашем курсовом проекте можно хранить в базе данных, предложите структуру БД из 2-3 таблиц, разработайте sql- запросы для их создания.<br />
2) Измените пример, приведенный в самостоятельной работе к этой теме, для работы с вашей базой данных.<br />
<br /></div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-53426350297937436802015-05-07T11:04:00.002+03:002015-05-07T11:04:32.715+03:00Урок 8. Использование библиотек<div dir="ltr" style="text-align: left;" trbidi="on">
"Родные" и сторонние библиотеки позволяют быстрее разработать приложение, пользуясь уже готовыми объектами. Вопрос только в том, - какие выбрать библиотеки и как разобраться в объектах. А ещё - как подключить библиотеку к своему проекту. Именно этому посвящен данный урок.<br />
Прочитайте лекцию на сайте ИНТУИТ:<br />
<a href="http://www.intuit.ru/studies/courses/12643/1191/lecture/21998">http://www.intuit.ru/studies/courses/12643/1191/lecture/21998</a>,<br />
решите тест по лекции<br />
и проделайте самостоятельную работу<br />
<a href="http://www.intuit.ru/studies/courses/12643/1191/lecture/22000">http://www.intuit.ru/studies/courses/12643/1191/lecture/22000</a>.<br />
<br />
Результаты ваших трудов понадобятся для 2-ой контрольной работы.<br />
<br />
<br /></div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-34631618372422672152015-04-14T22:15:00.002+03:002015-05-07T10:30:17.465+03:00Контрольная работа 1 по разделу 2.<div dir="ltr" style="text-align: left;" trbidi="on">
<h2>
Контрольная работа по теме 1. <o:p></o:p></h2>
<div class="MsoNormal">
Цель работы: ознакомиться с современными принципами проектирования
мобильных приложений, приобрести навыки проектирования, провести предпроектные
исследования в рамках научно-производственной практики.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Проектирование мобильного приложения сводится к проработке трех
компонентов:<o:p></o:p></div>
<div class="MsoNormal">
- поведения: удобного, понятного и приятного
пользовательского интерфейса (сценария взаимодействия пользователя с
приложением);<o:p></o:p></div>
<div class="MsoNormal">
- содержания: состав, структура и собственно информационное
наполнение приложения;<o:p></o:p></div>
<div class="MsoNormal">
- представления: внешний вид приложения (графика и звук).<o:p></o:p></div>
<div class="MsoNormal">
Расширенные по сравнению с предыдущим семестром сведения о
проектировании вы найдете в лекциях ИНТУИТА в рамках курса «Разработка
приложений для смартфонов на ОС <span lang="EN-US">Android</span>».
Знакомимся с лекциями 1 - 3:<o:p></o:p></div>
<div style="text-align: left;">
<span style="color: windowtext; font-family: "Calibri",sans-serif; font-size: 11.0pt; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;"><a href="http://www.intuit.ru/studies/courses/12786/1219/lecture/22481">http://www.intuit.ru/studies/courses/12786/1219/lecture/22481</a></span><br />
<a href="http://www.intuit.ru/studies/courses/12786/1219/lecture/22484">http://www.intuit.ru/studies/courses/12786/1219/lecture/22484</a><br />
<a href="http://www.intuit.ru/studies/courses/12786/1219/lecture/22487">http://www.intuit.ru/studies/courses/12786/1219/lecture/22487</a><br />
<br /></div>
<div class="MsoNormal" style="text-align: left;">
<o:p></o:p></div>
<div class="MsoNormal" style="text-align: left;">
в конце сдаем тесты и присылаем подтверждение в виде
скриншотов<o:p></o:p></div>
<div class="MsoNormal">
<a href="http://www.intuit.ru/studies/courses/12786/1219/test/1/7784">1 тест: http://www.intuit.ru/studies/courses/12786/1219/test/1/7784</a><o:p></o:p></div>
<div class="MsoNormal">
2 тест: <a href="http://www.intuit.ru/studies/courses/12786/1219/test/1/7785">http://www.intuit.ru/studies/courses/12786/1219/test/1/7785</a><o:p></o:p><br />
3 тест: <a href="http://www.intuit.ru/studies/courses/12786/1219/test/1/7786">http://www.intuit.ru/studies/courses/12786/1219/test/1/7786</a></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Выполняем самостоятельные работы 1 - 3. Приведенные в курсе
задания и примеры используйте как опору и пример для решения аналогичных задач <b><i>своего курсового проекта</i></b>. <o:p></o:p></div>
<div class="MsoNormal">
Работа 1. Разработка сценария взаимодействия и требований к
программе: <a href="http://www.intuit.ru/studies/courses/12786/1219/lecture/22482">http://www.intuit.ru/studies/courses/12786/1219/lecture/22482</a>. <o:p></o:p></div>
<div class="MsoNormal">
Работа 2: разработка макета и прототипа интерфейса. - <a href="http://www.intuit.ru/studies/courses/12786/1219/lecture/22485">http://www.intuit.ru/studies/courses/12786/1219/lecture/22485</a><o:p></o:p><br />
Работа 3 - разработка системы тестов - <a href="http://www.intuit.ru/studies/courses/12786/1219/lecture/22488">http://www.intuit.ru/studies/courses/12786/1219/lecture/22488</a></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Отчет о контрольной работе по этой теме должен содержать:<o:p></o:p></div>
<div align="left" class="MsoListParagraphCxSpFirst" style="margin-bottom: 8pt; text-indent: -18pt;">
</div>
<ol>
<li><span style="font-stretch: normal; line-height: 17.1199989318848px; text-indent: -18pt;"> </span><span style="font-size: 7pt; font-stretch: normal; line-height: normal; text-indent: -18pt;"> </span><span style="line-height: 107%; text-indent: -18pt;">Титульный лист со списком участников бригады. Заголовок
отчета: «Отчет о научно-производственной практике» по теме «Организация проектирования мобильных приложений».</span></li>
<li><span style="font-stretch: normal; line-height: 17.1199989318848px; text-indent: -18pt;"> </span><span style="font-size: 7pt; font-stretch: normal; line-height: normal; text-indent: -18pt;"> </span><span style="line-height: 107%; text-indent: -18pt;">Формулировка темы курсового проекта, обоснование ее
актуальности (анализ аналогов, </span><span lang="EN-US" style="line-height: 107%; text-indent: -18pt;">SWOT</span><span style="line-height: 107%; text-indent: -18pt;">-анализ проекта);</span></li>
<li><span style="font-stretch: normal; line-height: 17.1199989318848px; text-indent: -18pt;"> </span><span style="font-size: 7pt; font-stretch: normal; line-height: normal; text-indent: -18pt;"> </span><span style="line-height: 107%; text-indent: -18pt;">Отчет о проведении интервью с пользователями и </span><span lang="EN-US" style="line-height: 107%; text-indent: -18pt;">Use</span><span style="line-height: 107%; text-indent: -18pt;">-</span><span lang="EN-US" style="line-height: 107%; text-indent: -18pt;">case</span><span lang="EN-US" style="line-height: 107%; text-indent: -18pt;"> </span><span style="line-height: 107%; text-indent: -18pt;">диаграмма
сценария взаимодействия каждого типа пользователя с приложением.</span></li>
<li><span style="font-stretch: normal; line-height: 17.1199989318848px; text-indent: -18pt;"> </span><span style="font-size: 7pt; font-stretch: normal; line-height: normal; text-indent: -18pt;"> </span><span style="line-height: 107%; text-indent: -18pt;">Техническое задание на проект и технические требования
к приложению.</span></li>
<li><span style="font-stretch: normal; line-height: 17.1199989318848px; text-indent: -18pt;"> </span><span style="font-size: 7pt; font-stretch: normal; line-height: normal; text-indent: -18pt;"> </span><span style="line-height: 107%; text-indent: -18pt;">Проект дизайна интерфейса приложения (эскизы экранов
приложения, связанные в диаграмму переходов между экранами).</span></li>
<li><span style="line-height: 107%; text-indent: -18pt;">Проект тест-кейса (словесное описание всех видов тестов, например - см. <a href="http://okiseleva.blogspot.ru/2014/08/blog-post.html">http://okiseleva.blogspot.ru/2014/08/blog-post.html</a>, а также <a href="http://www.protesting.ru/testing/templates.html">http://www.protesting.ru/testing/templates.html</a>),</span></li>
<li><span style="line-height: 107%; text-indent: -18pt;">Календарный план проекта (может быть в форме диаграммы
Ганта) и распределение ролей между участниками бригады.</span></li>
</ol>
<!--[if !supportLists]--><span style="line-height: 107%;"><o:p></o:p></span>Контрольная работа выполняется бригадой из 3-4 студентов (в том же составе, как и в курсовом проекте). Распределите работу между участниками и в отчете укажите, кем написан каждый из разделов.<br />
<div align="left" class="MsoListParagraphCxSpMiddle" style="line-height: 107%; margin-bottom: 8pt; text-indent: -18pt;">
<o:p></o:p></div>
<div align="left" class="MsoListParagraphCxSpMiddle" style="line-height: 107%; margin-bottom: 8pt; text-indent: -18pt;">
<o:p></o:p></div>
<div align="left" class="MsoListParagraphCxSpMiddle" style="line-height: 107%; margin-bottom: 8pt; text-indent: -18pt;">
<o:p></o:p></div>
<div align="left" class="MsoListParagraphCxSpMiddle" style="line-height: 107%; margin-bottom: 8pt; text-indent: -18pt;">
<o:p></o:p></div>
<div align="left" class="MsoListParagraphCxSpMiddle" style="line-height: 107%; margin-bottom: 8pt; text-indent: -18pt;">
<o:p></o:p></div>
<div align="left" class="MsoListParagraphCxSpLast" style="line-height: 107%; margin-bottom: 8pt; text-indent: -18pt;">
<o:p></o:p></div>
<div style="text-align: left;">
</div>
<div class="MsoNormal" style="text-align: left; text-indent: 0cm;">
<h4 style="text-align: left;">
<b>Отчет о работе оформить в формате <span lang="EN-US">WORD</span><span lang="EN-US"> </span> и сдать на проверку до 1.05.2015. </b></h4>
<o:p></o:p></div>
<div class="MsoNormal" style="text-align: left; text-indent: 0cm;">
Скриншоты о прохождении тестов приложить к отчету (в приложении).</div>
<div class="MsoNormal" style="text-align: left; text-indent: 0cm;">
Отчеты присылайте на мою почту, складывайте в <a href="https://drive.google.com/open?id=0B_2Y-jfphvRTdXVoQUpqWC02VHM&authuser=0">облако</a><span style="text-indent: 0cm;">. Также можем продолжить использовать <a href="https://groups.google.com/forum/#!forum/pengtu_mobile">форум Google</a>. </span></div>
<div class="MsoNormal" style="text-align: left; text-indent: 0cm;">
<br /></div>
</div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-9145432617851447462015-03-12T17:34:00.002+03:002016-07-13T17:05:40.965+03:00Урок 7. Этапы жизненного цикла мобильных приложений<div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="line-height: 150%; margin-bottom: 6pt; page-break-before: always; text-align: left; text-indent: 20.15pt;">
<a href="https://www.blogger.com/null" name="_Toc413920664">Модуль 2. Тема 1. </a>Проектирование, тестирование и
поддержка процесса разработки мобильных приложений.</h2>
<h1 style="line-height: 150%; margin-bottom: 6.0pt; page-break-before: always; text-indent: 20.15pt;">
<o:p></o:p></h1>
<div class="MsoNormal">
<b>Цель</b>:
ознакомиться с современными подходами к процессу разработки мобильных
приложений и программным обеспечением для поддержки ЖЦ МП; поставить задачи
курсового проекта.<o:p></o:p></div>
<div class="MsoNormal">
<o:p> </o:p><b>План</b></div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l8 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]-->1.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Основные виды мобильных приложений (МП). <o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l8 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]-->2.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Жизненный цикл МП.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l8 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]-->3.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Управление проектами разработки МП. Проектная
документация: техническое задание, календарный план и др.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l8 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]-->4.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Процесс разработки МП. Организация коллективной работы
над проектом.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l8 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]-->5.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Тестирование МП.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l8 level1 lfo1; text-indent: -18.0pt;">
<!--[if !supportLists]-->6.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Публикация и продвижение МП.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l8 level1 lfo1; text-indent: -18.0pt;">
<br /></div>
<h3 style="margin-left: 38pt; text-align: left; text-indent: -18pt;">
Методические рекомендации</h3>
<div>
Прочитайте приведенный здесь краткий обзор материала по теме. Распределите в группе вопросы темы и подготовьте обзор приведенной литературы по каждому вопросу (можно использовать другие источники). </div>
<div>
На следующем занятии проводим семинар по данной теме. Выступления занимают по 5 минут, обсуждение доклада - до 5 минут. Приветствуется доклад с презентацией.<br />
Те, кто не готовит выступления, готовят по 3 тестовых задания к каждому вопросу и формируют общий тест по теме. Тестовые задания содержат: вопросы с выбором альтернативных ответов (не менее 3-х), вопросы на сопоставление, вопросы с открытым ответом (вводится 1-2 слова). Рекомендуется Google таблицы и формы для создания теста.<br />
<br />
Не участвовавшие в семинаре студенты проходят тестирование по теме.</div>
<div>
<br /></div>
<h3 style="text-align: left;">
1 вопрос. Виды мобильных приложений</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
Сегодня из
Android-market и AppStore уже загружено около миллиарда приложений и в связи с
удешевлением и доступностью смартфонов количество потребителей будет расти еще
долго. Рынок МП – очень динамичный. Эксперты публикуют данные, что максимальную
долю мирового рынка занимают iOS приложения, но в России распределение
количества пользователей разных ОС другое: 63% - Android, по 12% - Bada и Simbian, 5% - Windows Phone.
Поэтому есть смысл ориентироваться именно на недорогие Android-приложения.<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white; font-family: "pf square sans pro regular"; line-height: 25px;">Наряду с большими платформами, такими как Google Android или Apple iOS, существуют многочисленные ответвления, с которыми могут работать разработчики и которые открывают рынок приложений в новом свете – например, речь идет о носимых устройствах, типа часов, Интернете вещей, умных телевизорах. У всех у них есть свои приложения и выбор целевой платформы становится еще одной проблемой для разработчиков.</span></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
Эксперты J’son
& Partners Consulting разделяют рынок приложений на следующие сегменты: к<span style="text-indent: 0cm;">онтентные приложения, б</span><span style="text-indent: 0cm;">изнес-приложения, мобильные игры и социальные сети.</span></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<o:p></o:p></div>
<br />
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="color: purple;"><b>Контентные
приложения</b> </span>очень популярны: они предназначены для прослушивания музыки,
просмотра фильмов и фотографий, чтения
цифровых книг и журналов. Сюда же можно отнести информационные приложения:
погода, расписания, новости, карты, транспорт, рецепты и т.п. Это и
справочники, руководства и учебники, прилагаемые к сложному товару (автомобиль,
станок, оборудование), услуге (обучение
и доступ к онлайн-обучению) или предприятию (университет, визитная карточка
фирмы и специалиста). Также это приложения, созданные специально к какому-то
событию (олимпиада, футбольный чемпионат, выставка или конгресс). Наконец,
специальные рекламные приложения, позволяющие не только рекламировать товар или
бренд, но и получить обратную связь от покупателя. <o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
Еще варианты:
поиск нужного сервиса (банкомата, автозаправки, стоянки, магазина, гостиницы,
репетитора…), заказ/бронирование товара, запись на прием, просмотр отзывов на
товар. <o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
Заказчики
подобных приложений – владельцы контента: СМИ, фирмы – производители, сервисные
фирмы.<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<b><span style="color: purple;"> Бизнес-приложения</span></b>
помогают в офисной работе, расчетах, обмене служебными данными, а также
предоставляют доступ к интернет-магазинам, платежным системам и банковским
счетам. В настоящий момент сегмент бизнес-приложений является предпочтительным
для инвесторов, но сложность составляет перевод бизнес-задач на мобильные
телефоны. <o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<b><span style="color: purple;">Мобильные игры - э</span></b><span style="text-indent: 0cm;">то наиболее
востребованный сектор МП. Увеличивается количество игр, выпускаются новые
версии существующих, расширяется аудитория (возраст - от 0 до 100 лет, языковая
локализация, культурные особенности).</span></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="color: purple;"><b> Мобильные социальные сети. </b></span><span style="text-indent: 0cm;">Социальные сети с
каждым днем набирают все большую популярность, наращивая многочисленную
аудиторию по всему миру, чему способствует доступность сетей со смартфонов. То
есть МП для всех видов общения – актуальны.</span></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<b><span style="color: purple;">С технической точки зрения</span><span style="color: #0c343d;"> </span></b>можно выделить 4 вида МП:<o:p></o:p></div>
<div class="MsoNormal">
- приложения переднего плана – выполняются только, когда
видимы на экране;<o:p></o:p></div>
<div class="MsoNormal">
- фоновые приложения – не взаимодействуют с пользователем
после настройки,<o:p></o:p></div>
<div class="MsoNormal">
- смешанные приложения – основной режим – фоновый, но
некоторые события могут переводить их в диалоговый режим;<o:p></o:p></div>
<div class="MsoNormal">
- виджеты – графические объекты для отображения динамической
информации.<o:p></o:p></div>
<div class="MsoNormal">
Сложные приложения могут включать компоненты нескольких
видов.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<b>Литература</b>:<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l15 level1 lfo2; text-indent: -18.0pt;">
<!--[if !supportLists]-->1.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Рынок МП в России и мире - www.json.ru/poleznye_materialy/free_market_watches/analytics/rynok_mobilnyh_prilozhenij_v_rossii_i_mire/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l15 level1 lfo2; text-indent: -18.0pt;">
<!--[if !supportLists]-->2.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Тренды рынка МП - http://www.gazeta.ru/tech/2013/12/19_a_5811609.shtml<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l15 level1 lfo2; text-indent: -18.0pt;">
<!--[if !supportLists]-->3.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Доли рынка, сектора - http://www.apollo-8.ru/mobilnie-prilojeniya.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h2>
2 вопрос. Жизненный цикл МП.<o:p></o:p></h2>
<div class="MsoNormal">
Этапы ЖЦ:<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->1.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Определение цели (портрет пользователя - социально-демографического
среза аудитории, маркетинговых задач, разработка концепции и механизма
привлечения аудитории)<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->2.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Анализ требований и разработка концепции продукта (составление
требований к программе, ТЗ, тест-кейсов)<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->3.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Проектирование графического интерфейса и структуры
программного кода (составление каркаса дизайна, карты экранов, чернового
прототипа, сценариев использования программы, модель классов высшего уровня,
требования к серверу)<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->4.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Окончательный дизайн интерфейса (разработка прототипа
высокой детализации и тестирование его пользователями) <o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->5.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Программирование и отладка функционала (клиент, сервер,
безопасность, проврка на модульных тестах)<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->6.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Тестирование (проверка на тест-кейсах на соответствие
исходным требованиям)<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->7.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Публикация в магазинах (подготовка маркетинговых
материалов – описаний, скриншотов, видео презентации, выпуск релиза МП) и
продвижение<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->8.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Техническая поддержка: взаимодействие с пользователями,
фиксация ошибок<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->9.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Развитие и обновление (новый релиз) – повторение цикла,
начиная с 1.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 38.0pt; mso-add-space: auto; mso-list: l6 level1 lfo3; text-indent: -18.0pt;">
<!--[if !supportLists]-->10.<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]-->Отказ
от сопровождения (утилизация)<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 38.0pt; mso-add-space: auto; text-indent: 0cm;">
<br /></div>
<div class="MsoNormal">
Литература<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l0 level1 lfo5; text-indent: -18.0pt;">
<!--[if !supportLists]-->1.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Пример этапов разработки - http://itech-mobile.ru/stages.html<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l0 level1 lfo5; text-indent: -18.0pt;">
<!--[if !supportLists]-->2.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->О задачах каждого этапа - http://habrahabr.ru/company/mailru/blog/179113/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l0 level1 lfo5; text-indent: -18.0pt;">
<!--[if !supportLists]-->3.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Директор компании об этапах - http://siliconrus.com/2014/06/mobile-app-development/<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l0 level1 lfo5; text-indent: -18.0pt;">
<!--[if !supportLists]-->4.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Блок-схема - http://www.web-classic.ru/services/razrabotka_mobilnykh_prilozhenij/etapy_razrabotki_mobilnyh_prilozheniy/<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h2>
3 вопрос. Управление проектами МП. Проектная
документация<o:p></o:p></h2>
<div align="left" class="MsoNormal" style="text-indent: 0cm;">
Организация разработки МП – это одна из
управленческих задач, получившая общепринятое название «управление проектами» (Project
Management), представляет собой искусство руководства и координации людских и
материальных ресурсов на протяжении жизненного цикла проекта путем применения
современных методов и техники управления для достижения определенных в проекте
результатов по составу и объему работ, стоимости, времени, качеству и
удовлетворению участников проекта.<a href="file:///D:/Users/%D0%9C%D0%B0%D0%BC%D0%B0/Documents/!%20%D0%9C%D0%95%D0%A2%D0%9E%D0%94%D0%98%D0%A7%D0%9A%D0%98/__%D0%BC%D0%B0%D0%B3%D0%B8%D1%81%D1%82%D1%80%D1%8B-%D0%A0%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0%D0%9C%D0%BE%D0%B1%D0%B8%D0%BB%D0%9F%D1%80%D0%B8%D0%BB/2015/2.1-%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5.docx#_ftn1" name="_ftnref1" title=""><span class="MsoFootnoteReference"><span style="color: black; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text1;"><!--[if !supportFootnotes]--><span class="MsoFootnoteReference"><span style="font-family: "times new roman" , serif; font-size: 12pt;">[1]</span></span><!--[endif]--></span></span></a> <o:p></o:p></div>
<div class="MsoNormal">
Для успеха проекта необходимо составить план проекта,
провести его анализ на предмет выполнимости в существующих условиях и
контролировать результаты каждого этапа выполнения плана. В плане проекта
фиксируют работы, необходимое время, результат на каждом этапе и требуемые
ресурсы. Для иллюстрации плана проекта готовят сетевой график
(последовательность работ) проекта и ресурсную гистограмму (потребность в различных
ресурсах в каждый момент времени). <o:p></o:p></div>
<div class="MsoNormal">
Управление проектом мобильного приложения имеет некоторые
особенности:<o:p></o:p></div>
<div class="MsoNormal">
- небольшой размер приложения по сравнению с
«настольными» и веб-приложениями;<o:p></o:p></div>
<div class="MsoNormal">
- небольшой бюджет,<o:p></o:p></div>
<div class="MsoNormal">
- малый срок разработки (жесткие требования к срокам,
нельзя опоздать даже на день),<o:p></o:p></div>
<div class="MsoNormal">
- проект часто не документируется,<o:p></o:p></div>
<div class="MsoNormal">
- анализ требований, проектирование и кодирование
прототипов часто выполняются одновременно, и зачастую раньше, чем появился
договор с заказчиком;<o:p></o:p></div>
<div class="MsoNormal">
- заказчик редко может сформулировать требования или
ссылается на приложение-конкурент; <o:p></o:p></div>
<div class="MsoNormal">
- требования могут изменяться в процессе разработки;<o:p></o:p></div>
<div class="MsoNormal">
- часто один менеджер управляет 2-4 проектами
одновременно;<o:p></o:p></div>
<div class="MsoNormal">
- в целом проект более рискован.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Особенности самих приложений:<o:p></o:p></div>
<div class="MsoNormal">
- устройство имеет массу сенсоров, события от которых
могут неожиданно влиять на работу программы;<o:p></o:p></div>
<div class="MsoNormal">
- имеется масса моделей устройств и версий ОС, необходимо
тестирование на многих моделях или в договоре перечислять, какие именно
поддерживаются;<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
В связи с этим следует наладить быстрый и легкий процесс
управления требованиями, частое (не реже раза в неделю) согласование текущего проекта
с заказчиком, организовать код так, чтобы его можно было легко изменять,
отслеживать версии кода.<o:p></o:p></div>
<h3>
Гибкие модели процесса разработки ПО<o:p></o:p></h3>
<div>
<a href="https://www.blogger.com/null" name="_Toc413920668"></a><br />
<div id="id_4" style="background-color: white; font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 12px; line-height: 16px; margin-bottom: 7px !important; margin-top: 7px !important; padding: 0px;" xmlns:edi="http://www.intuit.ru/2010/edi">
<i>Гибкая методология разработки программного обеспечения</i> ориентирована на использование итеративного подхода, при котором<a href="https://www.blogger.com/null" name="keyword2"></a><span class="keyword" style="font-style: oblique;">программный продукт</span> создается постепенно, небольшими шагами, включающими реализацию определенного набора требований. При этом предполагается, что требования могут изменяться. Команды, использующие гибкие методологии, формируются из универсальных разработчиков, которые выполняют различные задачи в процессе создания программного продукта.</div>
<div class="lecture_mark" id="mark_4" style="background-color: white; font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 12px; line-height: 20.3999996185303px; margin: 0px; padding: 0px;" xmlns:edi="http://www.intuit.ru/2010/edi">
</div>
<div id="id_5" style="background-color: white; font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 12px; line-height: 16px; margin-bottom: 7px !important; margin-top: 7px !important; padding: 0px;" xmlns:edi="http://www.intuit.ru/2010/edi">
При использовании гибких методологий <a href="https://www.blogger.com/null" name="keyword3"></a><span class="keyword" style="font-style: oblique;">минимизация</span> рисков осуществляется путём сведения разработки к серии коротких циклов, называемых <i>итерациями</i>, продолжительностью 2 -3 недели. <a href="https://www.blogger.com/null" name="keyword4"></a><span class="keyword" style="font-style: oblique;">Итерация</span> представляет собой набор задач, запланированных на выполнение в определенный период времени. В каждой итерации создается работоспособный вариант программной системы, в которой реализуются наиболее приоритетные (для данной итерации) <a href="https://www.blogger.com/null" name="keyword5"></a><span class="keyword" style="font-style: oblique;">требования заказчика</span>. На каждой итерации выполняются все задачи, необходимые для создания работоспособного программного обеспечения: планирование, <a href="https://www.blogger.com/null" name="keyword6"></a><span class="keyword" style="font-style: oblique;">анализ</span> требований, проектирование,<a href="https://www.blogger.com/null" name="keyword7"></a><span class="keyword" style="font-style: oblique;">кодирование</span>, тестирование и <a href="https://www.blogger.com/null" name="keyword8"></a><span class="keyword" style="font-style: oblique;">документирование</span>. Хотя отдельная <a href="https://www.blogger.com/null" name="keyword9"></a><span class="keyword" style="font-style: oblique;">итерация</span>, как правило, недостаточна для выпуска новой версии продукта, подразумевается, что текущий <a href="https://www.blogger.com/null" name="keyword10"></a><span class="keyword" style="font-style: oblique;">программный продукт</span> готов к выпуску в конце каждой итерации. <a href="https://www.blogger.com/null" name="keyword11"></a><span class="keyword" style="font-style: oblique;">По</span> окончании каждой итерации <a href="https://www.blogger.com/null" name="keyword12"></a><span class="keyword" style="font-style: oblique;">команда</span> выполняет переоценку приоритетов требований к программному продукту, возможно, вносит коррективы в разработку системы.</div>
</div>
<div class="MsoNormal" style="text-indent: 0px;">
<br /></div>
<div class="MsoNormal" style="text-indent: 35.4pt;">
На этих принципах основано целое семейство методологий:<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 71.4pt; mso-list: l3 level1 lfo7; mso-pagination: widow-orphan; tab-stops: list 71.4pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; font-size: 10.0pt;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Extreme programming<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 71.4pt; mso-list: l3 level1 lfo7; mso-pagination: widow-orphan; tab-stops: list 71.4pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; font-size: 10.0pt;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Scrum<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 71.4pt; mso-list: l3 level1 lfo7; mso-pagination: widow-orphan; tab-stops: list 71.4pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; font-size: 10.0pt;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Lean Software Development<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 71.4pt; mso-list: l3 level1 lfo7; mso-pagination: widow-orphan; tab-stops: list 71.4pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; font-size: 10.0pt;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Test Driven Development<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 71.4pt; mso-list: l3 level1 lfo7; mso-pagination: widow-orphan; tab-stops: list 71.4pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; font-size: 10.0pt;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Feature Driven Development и др.</div>
<div class="MsoNormal" style="margin-left: 71.4pt; mso-list: l3 level1 lfo7; mso-pagination: widow-orphan; tab-stops: list 71.4pt; text-indent: -18.0pt;">
<br /></div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormalCxSpLast" style="text-indent: 35.4pt;">
Данные методологии наиболее популярны на сегодняшний
день. Основное кредо <i><b><span lang="EN-US">Agile</span>
</b></i>можно сформулировать как "Гибкость, коммуникация и результат, результат,
результат". Данная методология придерживается следующих принципов:<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l14 level1 lfo8; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Люди и взаимодействие важнее процессов и
инструментов<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l14 level1 lfo8; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Работающая программа важнее исчерпывающей
документации<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l14 level1 lfo8; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Сотрудничество с заказчиком важнее формальных договоренностей контракта<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l14 level1 lfo8; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Готовность к изменениям важнее следования
первоначальному плану <o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .6pt; text-indent: 35.4pt;">
В литературе можно найти более подробную детализацию этих принципов</div>
<div class="MsoNormal" style="margin-left: .6pt; text-indent: 35.4pt;">
<br /></div>
<div class="MsoNormal" style="margin-left: .6pt; text-indent: 35.4pt;">
Ограничения методологии <span lang="EN-US">Agile</span>:<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l13 level1 lfo9; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]--><span lang="EN-US">Fixed</span><span lang="EN-US"> </span><span lang="EN-US">Price</span> проекты. Невозможно адекватно оценить
проект, если декларируется поздний сбор требований.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l13 level1 lfo9; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Проекты разработки ПО, выполняющие
критические работы. Для таких проектов важны стандартизированные шаблоны и процессы,
поскольку они позволяют создавать ПО заранее оговоренного качества.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l13 level1 lfo9; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Проекты в совершенно новой области. Абсолютно
не зная специфики предметной области, необходимо начинать проект с глубокого
анализа, сбора требований, прототипирования, фиксирования архитектуры и т. д.
Это противоречит принципам методологии <span lang="EN-US">Agile</span>.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l13 level1 lfo9; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Проекты большого размера и сложности, имеющие
длительный срок разработки и внедрения. <o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 72.0pt; mso-add-space: auto; mso-list: l13 level1 lfo9; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span lang="EN-US" style="font-family: "symbol"; mso-ansi-language: EN-US; mso-bidi-font-family: Symbol; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Symbol;">·<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><span lang="EN-US">Низкий уровень квалификации команды.<o:p></o:p></span></div>
<div class="MsoNormalCxSpFirst" style="text-indent: 35.4pt;">
<span lang="EN-US">Agile</span> так распространён потому, что большинство
проектов удовлетворяют этим ограничениям. </div>
<div class="MsoNormalCxSpFirst" style="text-indent: 35.4pt;">
Например, на <span style="text-indent: 35.4pt;">рисунке <span style="color: #0000ee;"><u><a href="https://i-msdn.sec.s-msft.com/dynimg/IC367945.gif">https://i-msdn.sec.s-msft.com/dynimg/IC367945.gif </a></u></span>показана модель жизненного цикла программного решения от Microsoft (MSF)</span></div>
<div class="MsoNormalCxSpFirst" style="text-indent: 35.4pt;">
<o:p></o:p></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div align="center" class="MsoNormalCxSpMiddle" style="text-align: center;">
<br /></div>
<div class="MsoNormal">
Распределение обязанностей в команде типичного проекта из 4 <span style="text-indent: 35.4pt;">человек:</span></div>
<div class="MsoListParagraphCxSpFirst" style="line-height: 150%; margin-left: 18.0pt; mso-add-space: auto; mso-list: l10 level1 lfo10; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="line-height: 150%; mso-bidi-font-size: 14.0pt;">1.<span style="font-size: 7pt; font-stretch: normal; line-height: normal;"> </span></span><!--[endif]--><span style="line-height: 150%; mso-bidi-font-size: 14.0pt;"><b><span style="color: blue;">Менеджер проекта:</span></b><o:p></o:p></span></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 53.4pt; mso-add-space: auto; mso-list: l2 level2 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "courier new"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><b>Требования:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Высшее образование (не обязательно, но будет
являться хорошей «базой»);<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Опыт в области разработки игрового или иного
ПО - от 2 лет;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Опыт управления проектной командой (так
же интересен опыт управления удаленными или распределенными командами);<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Владение современными методиками управления
проектами и персоналом;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Знания в области планирования и
бюджетирования;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Представление об архитектуре мобильных
приложений, понимание тенденций развития мобильного рынка;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Аналитические навыки в области выявления и
оценки производственных рисков, управление ими.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<span style="font-family: "symbol"; font-size: 14pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]--><b>Обязанности:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Участие в разработке ТЗ по проекту (цели,
критерии, сроки, бюджет), оценка возможностей реализации проекта в требуемые
сроки, разработка календарно-сетевых планов по проекту, выработка критериев и
процедур приемки выполненных работ;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Организация процесса разработки, управление
командой, постоянный мониторинг соответствия темпов разработки существующим
планам;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Выявление проектных рисков и выработка
решений по их минимизации;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Управление изменениями в требованиях,
возникающими в процессе разработки;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Менеджмент в области организации работы
специалистов компании (рабочее место, оборудование, программный инструментарий,
прочее);<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Мониторинг моральной и рабочей атмосферы
внутри проектной группы, принятие мер по их оздоровлению;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Разрешение конфликтных ситуаций – как в
коллективе, так и с заказчиками;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Ведение проектной документации и полной
отчетности по проекту.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<br /></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><b><span style="color: blue;"><span style="font-family: "symbol"; font-size: 14pt;"></span><!--[endif]-->2. Дизайнер:</span> </b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 53.4pt; mso-add-space: auto; mso-list: l2 level2 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "courier new"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><b>Обязанности:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Разработка интерфейсов для мобильных
приложений: от создания прототипов до полной реализации;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Подготовка и нарезка дизайна для
разработчиков.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 53.4pt; mso-add-space: auto; mso-list: l2 level2 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "courier new"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><b>Требования
к кандидатам:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Знание Guidelines и UX для мобильной
платформы iOS;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Знание стандартных графических элементов
операционной системы iOS;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Нацеленность на создание красивых и удобных
мобильных приложений;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Отличное владение Photoshop и знание правил
хорошего тона.</div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"><br /></span></span></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<b><span style="color: blue;"><span style="font-family: "symbol"; text-indent: -18pt;"><span style="font-family: "times new roman"; font-stretch: normal;"> 3. </span></span><span style="text-indent: -18pt;">Разработчик:</span></span></b></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 53.4pt; mso-add-space: auto; mso-list: l2 level2 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "courier new"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><b>Требования:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Высшее или незаконченное высшее техническое
образование;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Опыт программирования и проектирования ПО от
5 лет;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Опыт разработки под iOS (Objective C) или
Android от 2 лет;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Понимание принципов ООП и знание шаблонов
проектирования и алгоритмов;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Опыт работы с многопоточными приложениями,
понимание механизмов управления памятью и журналированием на мобильном
устройстве;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Отличное знание сетевых протоколов TCP/IP,
UDP, HTTP;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Уверенный английский язык на уровне
технической литературы.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "symbol"; font-size: 14pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Опыт работы в <span lang="EN-US">SCRUM</span><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 53.4pt; mso-add-space: auto; mso-list: l2 level2 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "courier new"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><b>Обязанности:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Работа в команде c product/project managers,
тестировщиками, дизайнерами - нацеленность на качественный финальный продукт;<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Создавать bugs-free решения (без очевидных
багов и утечек памяти);<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Постоянно изучать новые технологии, что
касается последних тенденций в области мобильной разработки.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 17.4pt; mso-add-space: auto; mso-list: l2 level1 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<b><span style="color: blue;">4. Тестировшик:</span></b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 53.4pt; mso-add-space: auto; mso-list: l2 level2 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "courier new"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><b>Основные
требования:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Опыт работы в QA в игровой индустрии.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Знакомство с системами баг-трекинга.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Большой игровой опыт.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Общая техническая грамотность.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Увлечение играми и опыт работы с платформами
iOS/Android.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Ответственность, скрупулезность,
аккуратность, усидчивость.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Знание ПК на уровне очень опытного
пользователя.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Хорошее знание английского языка.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Хорошее знание письменного и устного русского
языка.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Легкая обучаемость.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 53.4pt; mso-add-space: auto; mso-list: l2 level2 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "courier new"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;">
</span></span><!--[endif]--><b>Основные
обязанности:</b><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Тестирование игр на мобильных устройствах.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Занесение отчетов в баг-трекинговую систему.<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 89.4pt; mso-add-space: auto; mso-list: l2 level3 lfo12; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="font-family: "wingdings"; mso-bidi-font-family: Wingdings; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: Wingdings;">§<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><!--[endif]-->Составление тест планов по гейм-дизайн
документам.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 0cm; mso-add-space: auto; text-indent: 35.4pt;">
<br /></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 0cm; mso-add-space: auto; text-indent: 35.4pt;">
На рисунке представлен базовый план проекта. Его особенности: отсутствует чёткая поэтапность реализации, многие
задачи выполняются единовременно,<o:p></o:p></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCWWxqomdDbuHWfhMWKVtPFf65kJvXEMdSdtxcvwEFtlNYKIavG1EdewyVFUVU3-GjS_SJG4t5bEIIshRRFodUlDpTE0QYUX8GaAE2jUZK_LbrSNXswGiA8VLY5-ASaw3pfu4Ad7vAE50L/s1600/%D0%93%D0%B0%D0%BD%D1%82%D0%B0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="206" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCWWxqomdDbuHWfhMWKVtPFf65kJvXEMdSdtxcvwEFtlNYKIavG1EdewyVFUVU3-GjS_SJG4t5bEIIshRRFodUlDpTE0QYUX8GaAE2jUZK_LbrSNXswGiA8VLY5-ASaw3pfu4Ad7vAE50L/s1600/%D0%93%D0%B0%D0%BD%D1%82%D0%B0.png" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifxtbFAnU4zKNN4hT21b8LK5L_OKngfa-oHrGguQJHqXhY6rJt6aQ0_A36Ab_0IXARLTlNjU8m3dN-KB5xX9Rv68MYvpQ5hxoIUPhLMGlWqkzfrpVmY-5nib2_SvbDihLGbi5TEzXg_DBn/s1600/%D0%BF%D0%BB%D0%B0%D0%BD%D0%9F%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="168" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifxtbFAnU4zKNN4hT21b8LK5L_OKngfa-oHrGguQJHqXhY6rJt6aQ0_A36Ab_0IXARLTlNjU8m3dN-KB5xX9Rv68MYvpQ5hxoIUPhLMGlWqkzfrpVmY-5nib2_SvbDihLGbi5TEzXg_DBn/s1600/%D0%BF%D0%BB%D0%B0%D0%BD%D0%9F%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0.png" width="320" /></a></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 0cm; mso-add-space: auto; text-indent: 35.4pt;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<i>Рис 3.6. </i><i>Диаграмма Ганта и </i><i>Базовый план проекта</i><i> </i></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 0cm; mso-add-space: auto; text-indent: 35.4pt;">
Используемый подход <u>не подразумевает</u> чёткую поэтапность выполнения проекта, и как
правило отсутствует большое количество документации. В соответствии с этим, после
возникновения необходимости вводить изменения в разработку, при реализации не
требуется заново собирать требования и создавать новый прототип по новому ТЗ. Достаточно дизайнеру
адаптировать проект под возникшие ограничения, а разработчику на основе нового
дизайна и правил изменить существующий код. <span style="text-indent: 35.4pt;">Измененная диаграмма Ганта по проекту - на рис. 3.7</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWzgWFMupHIQ4XCg6TH7MsTbLiNtp_0IeCSD4Dpx5zq-0ekb18i-uTbzM-HF9MLQd6gAFO8TMXkdNpyIA73CViSRBpxshEZ3esDmsFVt0V_4E8xumO0YQTrL7Eh42BrskQvbmS0j1-2YUL/s1600/%D0%93%D0%B0%D0%BD%D1%82%D0%B01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="221" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWzgWFMupHIQ4XCg6TH7MsTbLiNtp_0IeCSD4Dpx5zq-0ekb18i-uTbzM-HF9MLQd6gAFO8TMXkdNpyIA73CViSRBpxshEZ3esDmsFVt0V_4E8xumO0YQTrL7Eh42BrskQvbmS0j1-2YUL/s1600/%D0%93%D0%B0%D0%BD%D1%82%D0%B01.png" width="320" /></a></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 0cm; mso-add-space: auto; text-indent: 35.4pt;">
<span style="text-indent: 35.4pt;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 0cm; mso-add-space: auto; text-indent: 35.4pt;">
<o:p></o:p></div>
<br />
<div align="center" class="MsoListParagraphCxSpLast" style="margin-left: 0cm; mso-add-space: auto; text-align: center;">
<i>Рис 3.7. Диаграмма Ганта с отслеживанием<o:p></o:p></i></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Литература<o:p></o:p></div>
<hr align="left" size="1" width="33%" />
<div id="ftn1">
<div class="MsoFootnoteText">
<span lang="EN-US">1. Project Management Institute. PMI PMBOK (4th Edition). </span>Руководство к Своду знаний по управлению проектами<span lang="EN-US"> (</span>четвёртое издание<span lang="EN-US">), Project Management Institute, Inc., 2009.<o:p></o:p></span></div>
<div class="MsoFootnoteText">
2. Грей К.Ф., Ларсон Э.У. Управление проектами: Практическое руководство/Пер. с англ.-М.: Издательство «Дело и Сервис», 2003.</div>
<div class="MsoFootnoteText">
3. Agile-манифест разработки программного обеспечения</div>
</div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; text-indent: -18.0pt;">
4.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Ошибки разработки - http://habrahabr.ru/post/247763/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; text-indent: -18.0pt;">
5.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Программы управления проектами - http://www.teamer.ru/,
https://planfix.ru/, https://app.asana.com/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; text-indent: -18.0pt;">
6.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Диаграммы Гантта и управление проектами онлайн - http://www.gantter.com/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; text-indent: -18.0pt;">
7.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Сервис управления проектами и планирования (3 чел.
Бесплатно) - http://www.comindwork.com/pricing-and-signup <o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; text-indent: -18.0pt;">
8.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Пишем ТЗ - http://protext.su/pro/?p=3219,
http://protext.su/pro/?p=3223, http://protext.su/pro/?p=3066<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; text-indent: -18.0pt;">
9.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Программа для составления ТЗ - http://www.mastertz.ru/</div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
10.<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]-->В. Куперштейн. Microsoft Project 2010 в управлении проектами, Изд-во:
БХВ-Петербург, 2011 - 416 с.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<span style="font-size: 14.0pt;"><span style="font-size: 7pt; font-stretch: normal;">11 . </span></span><!--[endif]-->Аскар Рахимбердиев. Современные процессы
разработки программного обеспечения. RSDN Magazine #4-2006.<span style="font-size: 14.0pt; mso-fareast-font-family: Calibri;"><o:p></o:p></span></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]--><a href="http://agilemanifesto.org/iso/ru/">http://agilemanifesto.org/iso/ru/</a>
- Agile-манифест разработки программного обеспечения. <o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<!--[if !supportLists]-->12.<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]--><a href="http://managementzone.ru/archives/438">http://managementzone.ru/archives/438</a> - Agile
менеджмент<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<!--[if !supportLists]-->13<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]--><a href="http://www.slideshare.net/touchin/ss-10377923">http://www.slideshare.net/touchin/ss-10377923</a> - Лекции
Дениса Цыплакова - «Управление разработкой мобильных проектов»<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<!--[if !supportLists]-->14.<span style="font-size: 7pt; font-stretch: normal;"> </span> Аналитика компании <span lang="EN-US">J</span>’<span lang="EN-US">son</span>&<span lang="EN-US">Partners</span>. </div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<a href="http://www.json.ru/poleznye_materialy/free_market_watches/analytics/rynok_mobilnyh_prilozhenij_v_rossii_i_mire/" style="text-indent: -18pt;">http://www.json.ru/poleznye_materialy/free_market_watches/analytics/rynok_mobilnyh_prilozhenij_v_rossii_i_mire/</a>.</div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<span style="background-color: white; font-size: 11px; line-height: 20.3999996185303px; text-indent: -18pt;"><span style="font-family: "lucida grande" , "tahoma" , "verdana" , "arial" , sans-serif;"><b>15.</b></span></span><span style="font-size: 14px; text-indent: -18pt;">Технологии командной разработки программного обеспечения информационных систем - / Акаделми Microsoft. - НОУ ИНТУИТ - </span><span style="font-size: 14px; text-indent: -18pt;">www.intuit.ru/studies/courses/4806/1054/lecture/16121</span></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l4 level1 lfo11; mso-pagination: lines-together; page-break-after: avoid; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<h2>
4 вопрос. Проектирование, дизайн, кодирование и
отладка МП. Организация коллективной работы над проектом<o:p></o:p></h2>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">Прежде всего, необходимо определить, <b>что и для
кого мы пишем.</b> Ответы на эти вопросы оформляются в User Story. Примеры кратких описаний проектов студентов SMU (Сингапур) - см. на сайте https://wiki.smu.edu.sg/is480/2014-2015_Term_2#FLIP<o:p></o:p></span><br />
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://image.slidesharecdn.com/lecture05-110310020535-phpapp01/95/lecture05-8-728.jpg?cb=1299745325" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://image.slidesharecdn.com/lecture05-110310020535-phpapp01/95/lecture05-8-728.jpg?cb=1299745325" width="320" /></a></div>
<div>
<br /></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">На картинке показан пример описания задачи: как существующий пользователь может войти в
приложение, и какие проблемы он может встретить. На этом этапе важно
проработать все возможные сценарии, чтобы не было неприятных сюрпризов на более
поздних этапах разработки. Рекомендуется обобщить информацию о функциях проекта на диаграмме вариантов использования. </span><span style="background-color: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">Примеры диаграммы:</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5VG1byCe2UXcmmBl9fFSP5vAKs0Q-yclg3YvEbqH7xkpxZlvQTlwMwbFdeBwcgO_avLBGeF2OUoU7a2SuyxE9TCpDDF1SpqBK7y_x7NoK44nLUSesih1fR8Jz_dAL14tCFZnMEOhS5YRt/s1600/UseCaseWithController.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="247" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5VG1byCe2UXcmmBl9fFSP5vAKs0Q-yclg3YvEbqH7xkpxZlvQTlwMwbFdeBwcgO_avLBGeF2OUoU7a2SuyxE9TCpDDF1SpqBK7y_x7NoK44nLUSesih1fR8Jz_dAL14tCFZnMEOhS5YRt/s1600/UseCaseWithController.jpg" width="320" /></a></div>
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">(использован пример с сайта http://www.codeproject.com/Articles/585883/Classic-ASP-and-MVC)</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvTXy8i0u1O1FerC6_AnXpT4Btc2R9cEdHQCpWsUXwwJX7qDOHKkR7jLXzCeMcLz5UC2lR5FkQASvhuhLwhacwUma4uiuWIUwi9tErB8PI6Dw3zVWImTjtoLVbFXthv1XwO1u0-xuEy1Tl/s1600/Mobileusecase.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="260" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvTXy8i0u1O1FerC6_AnXpT4Btc2R9cEdHQCpWsUXwwJX7qDOHKkR7jLXzCeMcLz5UC2lR5FkQASvhuhLwhacwUma4uiuWIUwi9tErB8PI6Dw3zVWImTjtoLVbFXthv1XwO1u0-xuEy1Tl/s1600/Mobileusecase.png" width="400" /></a></div>
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><br /></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">(пример проекта https://wiki.smu.edu.sg/is480/Team_IMATEAM_Mobile_Use_Case)</span><br />
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><br /></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">За каждым пунктом здесь скрывается огромный айсберг функционала. Старайтесь фрагментировать
и конкретизировать задачи. Крупные задачи лучше всего разделить на несколько
этапов (релизов).<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><br /></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">Проектирование и разработка дизайна – это 2-я
задача. Используются прототипы, эскизы экранов, на общей доске стрелочками
показывают навигацию между экранами. Подбирают звуки. Результат – макеты
интерфейса, нарезка графики (для разных разрешений экрана: обычное и высокое),
звуковые файлы и гайдлайны (описание принципа интерфейса пользователя, размеры
полей, кнопок, описание эффектов).<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><br /></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">Кодирование – следующий этап, который завершается
тестированием. Если в разработке кода участвует несколько программистов, то
используются средства коллективной работы и средства отслеживания версий
приложения. <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">Если приложение одновременно должно работать на
разных платформах и к тому же иметь серверную часть, то проект и команду
разработчиков делят на соответствующие группы: сервер, клиент-андроид,
клиент-веб, клиент-</span><span lang="EN-US" style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">iOS</span><span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">.<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">На сервере хранят общую базу данных приложения. Поэтому перед кодированием клиентских программ необходимо спроектировать структуру БД и выбрать протокол обмена информацией с сервером.</span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><br /></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;">Пример последовательности работ над проектом:<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><o:p></o:p></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRuNN5bgHWzClyhxGSniNvKr_R8pln7MMFi2sftVY6R6THH_WYhKJAMnK1gecGB-Y12noBM8udXYmrVKmtRfdTyREfvr8rCkcPW9odpGBrM2JrvpMNLONgZnH_pIJQuqVAcL_FvrGyZxW5/s1600/%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%BA.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="67" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRuNN5bgHWzClyhxGSniNvKr_R8pln7MMFi2sftVY6R6THH_WYhKJAMnK1gecGB-Y12noBM8udXYmrVKmtRfdTyREfvr8rCkcPW9odpGBrM2JrvpMNLONgZnH_pIJQuqVAcL_FvrGyZxW5/s1600/%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%BA.png" width="400" /></a></div>
<br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><o:p> Организация коллективной работы над проектом - см. [14-16].</o:p></span></div>
<div class="MsoNormal">
<span style="background: white; font-family: "verdana" , sans-serif; font-size: 10.5pt;"><o:p><br /></o:p></span></div>
<div class="MsoNormal">
<b>Литература<o:p></o:p></b></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->1.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Основы разработки интерфейсов МП -http://www.intuit.ru/studies/courses/12643/1191/lecture/21986<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->2.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Презентация по дизайну <span lang="EN-US">UI</span><span lang="EN-US"> </span>мобильной
коммерции - http://www.slideshare.net/wud/ss-1500408<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->3.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->10 принципов проектирования интерфейса - http://www.cmsmagazine.ru/library/items/graphical_design/10-principles-mobile-interface-design/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->4.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Средства прототипирования <span lang="EN-US">UI</span> - <span lang="EN-US">https</span>://<span lang="EN-US">xakep</span>.<span lang="EN-US">ru</span>/2014/09/09/<span lang="EN-US">prototype</span>-<span lang="EN-US">tools</span>/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->5.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Программа <span lang="EN-US">MAQETTA</span> – макет интерфейса <span lang="EN-US">html</span>5 - <span lang="EN-US">http</span>://<span lang="EN-US">www</span>.<span lang="EN-US">ibm</span>.<span lang="EN-US">com</span>/<span lang="EN-US">developerworks</span>/<span lang="EN-US">ru</span>/<span lang="EN-US">library</span>/<span lang="EN-US">mo</span>-<span lang="EN-US">maqetta</span>-1/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->6.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Шрифты - http://habrahabr.ru/post/247785/ (просто красиво и бесплатно –один из
множества)<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->7.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Пример описания проекта мобильного приложения (общие
сведения, интерфейс, архитектура) - https://code.google.com/p/android-geocaching/wiki/ApplicationArchitecture<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->8.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Серверы: http://habrahabr.ru/post/158157/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->9.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]--><span lang="EN-US">Oracle</span><span lang="EN-US"> </span><span lang="EN-US">DB</span><span lang="EN-US"> </span>как сервер для мобильных клиентов - <span lang="EN-US">http</span>://<span lang="EN-US">www</span>.<span lang="EN-US">oracle</span>.<span lang="EN-US">com</span>/<span lang="EN-US">technetwork</span>/<span lang="EN-US">database</span>/<span lang="EN-US">database</span>-<span lang="EN-US">technologies</span>/<span lang="EN-US">database</span>-<span lang="EN-US">mobile</span>-<span lang="EN-US">server</span>/<span lang="EN-US">overview</span>/<span lang="EN-US">index</span>.<span lang="EN-US">html</span><o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->10.<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]-->О
сервере для игр (англ.) - http://gafferongames.com/networking-for-game-programmers/what-every-programmer-needs-to-know-about-game-networking/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->11.<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]-->Автоматизация
процесса разработки - https://academy.yandex.ru/events/autoschool/spb-2014/(видеолекции)<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<!--[if !supportLists]-->12.<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]-->Отладка
– см. книга Голощапова А.Л. БХВ-Петербург, 2012 (https://books.google.ru/books?id=hx36iz5za54C&dq=%D0%BE%D1%82%D0%BB%D0%B0%D0%B4%D0%BA%D0%B0+%D0%BC%D0%BE%D0%B1%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE+%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F+android&hl=ru&source=gbs_navlinks_s)<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
13. http://www.google.com/design/spec/material-design/introduction.html# - проектирование интерфейсов </div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<span style="font-family: "times" , "times new roman" , serif;"><span class="post_title" style="border: 0px; color: #333333; letter-spacing: -1px; line-height: 35.3999977111816px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="font-size: small;">14. IBM упрощает разработку программного обеспечения в облаке с помощью платформы Bluemix - </span></span><span style="letter-spacing: -1px; line-height: 35.3999977111816px;"><span style="color: #333333; font-size: small;">http://habrahabr.ru/company/ibm/blog/225441/</span></span></span></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<span class="post_title" style="border: 0px; color: #333333; letter-spacing: -1px; line-height: 35.3999977111816px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="font-family: "times" , "times new roman" , serif; font-size: small;">15. Инструменты, которые мы используем для командной разработки - </span></span><span style="letter-spacing: -1px; line-height: 35.3999977111816px;"><span style="color: #333333; font-family: "times" , "times new roman" , serif; font-size: small;">http://habrahabr.ru/post/178827/</span></span></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<span style="letter-spacing: -1px; line-height: 35.3999977111816px;"><span style="color: #333333; font-family: "times" , "times new roman" , serif; font-size: small;">16. </span></span><span style="color: #333333; font-family: "times" , "times new roman" , serif;"><span style="letter-spacing: -1px; line-height: 35.3999977111816px;">https://ru.wikipedia.org/wiki/GitHub</span></span></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l1 level1 lfo13; text-indent: -18.0pt;">
<br /></div>
<div class="MsoNormal">
<b><o:p> </o:p><span style="font-size: large;">5 вопрос. Тестирование МП</span></b></div>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
<span style="background: white;">Тестирование делают как на
реальных устройствах (их должно быть много), так и на эмуляторах. Следует
составить список устройств и версий Андроид, на которых проводить проверку
программы. Пример списка устройств для тестирования на </span><b><span style="font-family: "futura" , serif;">Android:</span></b><span style="font-family: "futura" , serif;"><o:p></o:p></span></div>
<div class="MsoNormal">
</div>
<div style="text-align: left;">
</div>
<ul style="text-align: left;">
<li><span style="font-family: "arial" , sans-serif;"><span style="font-size: x-small;">Samsung Galaxy
S2 / Android 4.1</span></span></li>
</ul>
<ul style="text-align: left;">
<li><span style="font-family: "arial" , sans-serif;"><span style="font-size: x-small;">Samsung Galaxy
S3 / Android 4.3</span></span></li>
</ul>
<ul style="text-align: left;">
<li><span style="font-family: "arial" , sans-serif;"><span style="font-size: x-small;">Samsung Galaxy
S4 / Android 4.4</span></span></li>
</ul>
<ul style="text-align: left;">
<li><span style="font-family: "arial" , sans-serif;"><span style="font-size: x-small;">Sony Xperia Z1
/ Android 4.4</span></span></li>
</ul>
<ul style="text-align: left;">
<li><span style="font-family: "arial" , sans-serif;"><span style="font-size: x-small;">LG Nexus 5 /
Android 4.4</span></span></li>
</ul>
<ul style="text-align: left;">
<li><span style="font-family: "arial" , sans-serif;"><span style="font-size: x-small;">HTC One X /
Android 4.2</span></span></li>
</ul>
<span style="background-color: white;">Необходимо определить
критерии оценки, например: соответствие прототипу, соответствие ТЗ. Составить план проведения тестирования
(распределение работ, ответственные, сроки) и подготовить программы для тестов
(тест-кейсы). Описать форму
представления отчета об ошибках и организовать его коллективное составление.
Планирование тестирования можно вести параллельно с кодированием, так чтобы к
моменту создания программы тесты уже были готовы.</span><br />
<div class="MsoNormal">
<span style="background: white;">Для тестирования законченных
релизов могут привлекаться сторонние тестировщики, в том числе энтузиасты;
обязательно применяются средства автоматизации (составление тестов, отчетов по
тестам, скриншоты всего пути теста). <o:p></o:p></span></div>
<div class="MsoNormal">
Важно сделать приложение
удобным, быстрым, безопасным, понятным и стабильно работающим. Особенно
это касается приложений, взаимодействующих с интернетом. Где могут возникнуть
проблемы, которые обнаружит тестирование? <o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="mso-list: l9 level1 lfo16; text-indent: -18.0pt;">
</div>
<ul style="text-align: left;">
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> О</span></span><span style="text-indent: -18pt;">бновления. Нужно сделать его автоматическим,
простым.</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span style="text-indent: -18pt;">Языковая поддержка, установка даты-времени.</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span style="text-indent: -18pt;">Юзабилити – привлекательнгость приложения,
легкая навигация, разумное энергопотребление.</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span style="text-indent: -18pt;">производительность приложения – загрузка памяти
и системы.</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span style="text-indent: -18pt;">Так называемый стресс-тест – проверка реакции
приложения на непредсказуемые действия: хаотичное нажатие кнопок, резкое
отсоединение от сети или выключение.</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span style="text-indent: -18pt;">Поддержка всех устройств и платформ – приложение
должно адекватно работать на всех видах устройств, для которых оно создано,
учитывая разный размер экрана, разные оперативные системы и пр.</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span style="text-indent: -18pt;">Последние типы исследований – лабораторное и
аттестационное, имитация действий в приложении в реальности и подтверждение
готовности приложения.</span></li>
</ul>
<!--[if !supportLists]--><o:p></o:p><br />
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l9 level1 lfo16; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l9 level1 lfo16; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l9 level1 lfo16; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l9 level1 lfo16; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l9 level1 lfo16; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="mso-list: l9 level1 lfo16; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoNormal">
Литература</div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l5 level1 lfo14; text-indent: -18.0pt;">
<!--[if !supportLists]-->1.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Тестирование - http://habrahabr.ru/company/touchinstinct/blog/197060/<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l5 level1 lfo14; text-indent: -18.0pt;">
<!--[if !supportLists]-->2.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Статьи по тестированию http://mobile-testing.ru/how_to_test_mobileapp/<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="margin-left: 58.0pt; mso-add-space: auto; mso-list: l5 level1 lfo14; text-indent: -18.0pt;">
<!--[if !supportLists]-->3.<span style="font-size: 7pt; font-stretch: normal;">
</span><!--[endif]-->Эмуляторы, симуляторы - http://habrahabr.ru/post/237499/<o:p></o:p></div>
<div class="MsoNormal">
<o:p> </o:p> </div>
<h2>
6 вопрос. Публикация, продвижение и поддержка<o:p></o:p></h2>
<div class="MsoNormal">
Мобильные приложения приносят значительный доход. Существует
ряд бизнес-моделей, благодаря которым происходит монетизация рынка мобильных
приложений. Некоторые из них:<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="mso-list: l7 level1 lfo4; mso-pagination: widow-orphan; text-indent: -18.0pt;">
</div>
<ul style="text-align: left;">
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><b><span lang="EN-US" style="text-indent: -18pt;">Premium</span><span lang="EN-US" style="text-indent: -18pt;"> </span></b><span style="text-indent: -18pt;">- платные приложения: которые
продаются в платформе по установленной цене)</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span lang="EN-US" style="text-indent: -18pt;"><b>Freemium</b></span><span style="text-indent: -18pt;"><b> </b>/ </span><span lang="EN-US" style="text-indent: -18pt;">In</span><span style="text-indent: -18pt;">-</span><span lang="EN-US" style="text-indent: -18pt;">App</span><span lang="EN-US" style="text-indent: -18pt;"> </span><span lang="EN-US" style="text-indent: -18pt;">Purchases</span><span lang="EN-US" style="text-indent: -18pt;"> </span><span style="text-indent: -18pt;">- изначально бесплатные приложения, но
которые подразумевают покупки внутри приложения, в том числе расширение до
полной версии, какие либо бонусы</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><b><span lang="EN-US" style="text-indent: -18pt;">Ad</span><span lang="EN-US" style="text-indent: -18pt;"> </span></b><span style="text-indent: -18pt;">- реклама внутри приложения</span></li>
<li><span style="font-family: "symbol"; font-size: 14pt; text-indent: -18pt;">-<span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal;"> </span></span><span style="text-indent: -18pt;"><b>Мобильная
коммерци</b>я – банкинг, сравнение цен, бронирование мест, купоны.</span></li>
</ul>
<!--[if !supportLists]--><o:p></o:p><br />
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l7 level1 lfo4; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l7 level1 lfo4; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l7 level1 lfo4; mso-pagination: widow-orphan; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="mso-pagination: widow-orphan; text-indent: 0cm;">
<br /></div>
<div class="MsoNormal">
После публикации программы в магазине приложений готовятся
рекламные материалы, анализируются данные аналитических систем, собирающих
метрики из приложений. На этой основе готовятся предложения о новых функциях,
оптимизации и новых маркетинговых акциях.<o:p></o:p></div>
<div class="MsoNormal">
Поддержка состоит в обработке сообщений от пользователей о
проблемах и предложениях, исправлении обнаруженных ошибок, а также обновление
для новых версий ОС.<o:p></o:p></div>
<div class="MsoNormal">
Исследователи Gartner отмечают значительные сложности монетизации, так как пользователь дается огромный выбор и большинство следует советам друзей, социальных сетей и рекламе.</div>
<div class="MsoListParagraph" style="mso-pagination: widow-orphan; text-indent: 0cm;">
<br /></div>
<div class="MsoNormal" style="margin-left: 15.25pt; text-indent: 0cm;">
<b>Литература<o:p></o:p></b></div>
<div class="MsoListParagraphCxSpFirst" style="text-align: left; text-indent: -18pt;">
</div>
<ol style="text-align: left;">
<li><span style="font-size: 7pt; font-stretch: normal; text-indent: -18pt;"> </span><span style="text-indent: -18pt;">Советы по продвижению - http://habrahabr.ru/company/nevosoft/blog/138341/</span></li>
<li><span style="font-size: 7pt; font-stretch: normal; text-indent: -18pt;"> </span><span style="text-indent: -18pt;">Оптимизация и продвижение МП (презентация) - http://www.slideshare.net/sharifulin/mo-co-2014-0603?related=1</span></li>
<li><span style="font-size: 7pt; font-stretch: normal; text-indent: -18pt;"> </span><span style="text-indent: -18pt;">Продвижение в </span><span lang="EN-US" style="text-indent: -18pt;">Google</span><span lang="EN-US" style="text-indent: -18pt;"> </span><span lang="EN-US" style="text-indent: -18pt;">Play</span><span style="text-indent: -18pt;"> - </span><span lang="EN-US" style="text-indent: -18pt;">http</span><span style="text-indent: -18pt;">://</span><span lang="EN-US" style="text-indent: -18pt;">www</span><span style="text-indent: -18pt;">.</span><span lang="EN-US" style="text-indent: -18pt;">slideshare</span><span style="text-indent: -18pt;">.</span><span lang="EN-US" style="text-indent: -18pt;">net</span><span style="text-indent: -18pt;">/</span><span lang="EN-US" style="text-indent: -18pt;">morenkova</span><span style="text-indent: -18pt;">/</span><span lang="EN-US" style="text-indent: -18pt;">ss</span><span style="text-indent: -18pt;">-29170193?</span><span lang="EN-US" style="text-indent: -18pt;">related</span><span style="text-indent: -18pt;">=2</span></li>
<li><span style="font-size: 7pt; font-stretch: normal; text-indent: -18pt;"> </span><span style="text-indent: -18pt;">Предпринимательство в области МП - http://www.intuit.ru/studies/courses/3468/710/lecture/22015 </span></li>
<li><span style="font-size: 7pt; font-stretch: normal; text-indent: -18pt;"> </span><span style="text-indent: -18pt;">Продвижение - http://www.intuit.ru/studies/courses/3468/710/lecture/22018</span></li>
<li><span style="font-size: 7pt; font-stretch: normal; text-indent: -18pt;"> </span><span style="text-indent: -18pt;">Аналитика для МП - http://siliconrus.com/2013/10/analitika-dlya-mobilnyih-startapov/</span></li>
<li><span style="text-indent: -18pt;"> Магазин приложений Google - ru.wikipedia.org/wiki/Google_Play </span></li>
<li><span style="text-indent: -18pt;">Яндекс,Store - </span>https://tech.yandex.ru/store/doc/index-docpage/</li>
<li> <span style="background-color: white; color: #333333; font-family: "times" , "times new roman" , serif; letter-spacing: -1px; line-height: 35.3999977111816px;">Места распространения Android приложений - http://habrahabr.ru/post/164413</span></li>
<li><span style="background-color: white; color: #333333; font-family: "times" , "times new roman" , serif; letter-spacing: -1px; line-height: 35.3999977111816px;">10 </span><span style="background-color: white; color: #333333; font-family: "times" , "times new roman" , serif; letter-spacing: -1px; line-height: 35.3999977111816px;">альтернатив магазину приложений Google Play - http://geektimes.ru/post/232273/</span></li>
</ol>
<o:p></o:p><br />
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l11 level1 lfo15; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l11 level1 lfo15; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l11 level1 lfo15; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l11 level1 lfo15; text-indent: -18.0pt;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="mso-list: l11 level1 lfo15; text-indent: -18.0pt;">
<o:p></o:p></div>
<br />
<div>
<!--[if !supportFootnotes]--><br clear="all" />
<br />
<div id="ftn2">
</div>
</div>
</div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-73497463799588244422015-01-16T19:43:00.002+03:002015-03-19T11:38:24.137+03:00Модуль 2. Программа на следующий семестр.<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Посмотрите на образчик </b><b>требований к хорошему android-программисту со стороны работодателя (Avito.ru):</b><br />
<div style="background: 0px 0px rgb(255, 255, 255); border: none; color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 18.2000007629395px; margin-bottom: 4px; margin-top: 15px; outline: 0px; padding: 0px;">
<strong style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">Мы ожидаем, что Вы:</strong></div>
<ul style="background: 0px 0px rgb(255, 255, 255); border: none; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 19px; list-style: square; margin: 0px 0px 19px 19px; outline: 0px; padding: 0px;">
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; color: #464646; margin: 0px; outline: 0px; padding: 0px;">имеете опыт коммерческой разработки приложений под Android</li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; margin: 0px; outline: 0px; padding: 0px;"><span style="color: #464646;">понимаете принципы работы </span><span style="color: blue;">Rest API и HTTP</span></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; margin: 0px; outline: 0px; padding: 0px;"><span style="color: #464646;">знакомы с </span><span style="color: blue;">Design Patterns и OOP</span></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; margin: 0px; outline: 0px; padding: 0px;"><span style="color: #464646;">иcпользовали </span><span style="color: blue;">Java Collections, Concurrency, Fragments, Services, Content Providers, SQLite</span><span style="color: #464646;">, уверенно работаете с </span><span style="color: blue;"><span style="color: black; font-family: Arial, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 17px;">системами контроля версии </span>Git</span></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; color: #464646; margin: 0px; outline: 0px; padding: 0px;">опыт работы - 1-3 года</li>
</ul>
<div style="background: 0px 0px rgb(255, 255, 255); border: none; color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 18.2000007629395px; margin-bottom: 4px; margin-top: 15px; outline: 0px; padding: 0px;">
<strong style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">Не обязательно, но круто, если Вы:</strong></div>
<ul style="background: 0px 0px rgb(255, 255, 255); border: none; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 19px; list-style: square; margin: 0px 0px 19px 19px; outline: 0px; padding: 0px;">
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; margin: 0px; outline: 0px; padding: 0px;"><span style="color: #464646;">можете похвастаться законченными проектами, опубликованными в </span><span style="color: blue;">Google Play</span></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; margin: 0px; outline: 0px; padding: 0px;"><span style="color: #464646;">имеете опыт работы с системами сборки </span><span style="color: blue;">Gradle, Maven</span></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: initial; background-origin: initial; background-position: 0px 0px; background-repeat: initial; background-size: initial; border: none; margin: 0px; outline: 0px; padding: 0px;"><span style="color: #464646;">имеете опыт работы по методологии </span><span style="color: blue;">Agile</span><span style="color: #464646;">.</span></li>
</ul>
<div>
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif;"><span style="font-size: 13.63636302948px; line-height: 19px;">А вот что взамен:</span></span></div>
<div>
<div style="background: 0px 0px rgb(255, 255, 255); border: none; color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 18.2000007629395px; margin-bottom: 4px; margin-top: 15px; outline: 0px; padding: 0px;">
<strong style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">Мы предлагаем Вам:</strong></div>
<ul style="background: 0px 0px rgb(255, 255, 255); border: none; color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 19px; list-style: square; margin: 0px 0px 19px 19px; outline: 0px; padding: 0px;">
<li style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">достойную заработную плату по результатам собеседования (<b>120 т.р.</b>, что почти вдвое ниже зарплаты программиста на Западе, даже если брать нижнюю границу, но в 5 раз выше среднепензенской з.п.)</li>
<li style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">работу в западной компании с вменяемым руководством и адекватным отношением к сотрудникам</li>
<li style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">интересные задачи на очень большом проекте с продвинутыми технологиями</li>
<li style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">посещение профильных конференций и курсов за счёт компании</li>
<li style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">медицинское страхование (ДМС), курсы английского, фитнес, бесплатные обеды</li>
<li style="background: 0px 0px; border: none; margin: 0px; outline: 0px; padding: 0px;">отличный офис в центре Москвы в бизнес-центре класса «А» в 3 минутах пешком от метро...<br /><span style="background-color: transparent; font-size: 13.63636302948px;">Источник: </span><span style="background-color: transparent; color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif;"><span style="font-size: 13.63636302948px;">http://penza.hh.ru/vacancy/12552724 от 16.01.2015</span></span></li>
</ul>
</div>
<div>
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 19px;">Исходя из этого и других аналогичных требований работодателей, в следующем семестре мы познакомимся с вышеперечисленными программными средствами (что успеем).</span></div>
<h3 style="text-align: left;">
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 19px;">Темы для изучения:</span></h3>
<div>
<table border="1" cellpadding="0" cellspacing="0" class="MsoTable15Plain5" style="background: white; border-collapse: collapse; border: none; mso-background-themecolor: background1; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; width: 100%px;">
<tbody>
<tr>
<td style="border-bottom: solid #7F7F7F 1.0pt; border-left: solid windowtext 1.0pt; border-right: none; border-top: solid windowtext 1.0pt; mso-border-bottom-alt: solid #7F7F7F .5pt; mso-border-bottom-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-bottom-themetint: 128; mso-border-bottom-themetint: 128; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 517; text-indent: 0cm;">
<i style="text-indent: 0cm;"><u>Модуль 2</u></i></div>
</td>
<td style="border-bottom: solid #7F7F7F 1.0pt; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-bottom-alt: solid #7F7F7F .5pt; mso-border-bottom-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-bottom-themetint: 128; mso-border-bottom-themetint: 128; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 1; text-indent: 0cm;">
<i>Сам. работа (часов)</i></div>
</td>
<td style="border-bottom: solid #7F7F7F 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-bottom-alt: solid #7F7F7F .5pt; mso-border-bottom-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-bottom-themetint: 128; mso-border-bottom-themetint: 128; mso-border-left-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 1; text-indent: 0cm;">
<i>Лекций (час.)</i></div>
</td>
</tr>
<tr>
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: solid #7F7F7F 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-right-alt: solid #7F7F7F .5pt; mso-border-right-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-themetint: 128; mso-border-right-themetint: 128; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div align="right" class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; mso-yfti-cnfc: 68; text-align: right; text-indent: -18.0pt;">
<!--[if !supportLists]--><i>1.<span style="font-size: 7pt; font-stretch: normal; font-style: normal;">
</span></i><!--[endif]--><i>Проектирование, тестирование и поддержка
процесса разработки мобильных приложений. <o:p></o:p></i></div>
<div align="center" class="MsoListParagraphCxSpLast" style="mso-yfti-cnfc: 68; text-align: center; text-indent: 0cm;">
<i>Содержание курсового проекта<o:p></o:p></i></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div align="center" class="MsoNormal" style="mso-yfti-cnfc: 64; text-align: center; text-indent: 0cm;">
54</div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="mso-yfti-cnfc: 64; text-indent: 0cm;">
3</div>
</td>
</tr>
<tr>
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: solid #7F7F7F 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-right-alt: solid #7F7F7F .5pt; mso-border-right-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-themetint: 128; mso-border-right-themetint: 128; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; mso-yfti-cnfc: 4; text-indent: -18.0pt;">
<!--[if !supportLists]--><i>2.<span style="font-size: 7pt; font-stretch: normal; font-style: normal;"> </span></i><!--[endif]--><i>Дизайн
мобильных приложений. Основы, стили, ресурсы для дизайна.<o:p></o:p></i></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
5</div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
2</div>
</td>
</tr>
<tr>
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: solid #7F7F7F 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-right-alt: solid #7F7F7F .5pt; mso-border-right-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-themetint: 128; mso-border-right-themetint: 128; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; mso-yfti-cnfc: 68; text-indent: -18.0pt;">
<!--[if !supportLists]--><i>3.<span style="font-size: 7pt; font-stretch: normal; font-style: normal;"> </span></i><!--[endif]--><i>Обработка
графики и анимация. Библиотека </i><i><span lang="EN-US">OpenGL</span>, анимация элементов интерфейса. <o:p></o:p></i></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 64; text-indent: 0cm;">
5</div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 64; text-indent: 0cm;">
3</div>
</td>
</tr>
<tr>
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: solid #7F7F7F 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-right-alt: solid #7F7F7F .5pt; mso-border-right-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-themetint: 128; mso-border-right-themetint: 128; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; mso-yfti-cnfc: 4; text-indent: -18.0pt;">
<!--[if !supportLists]--><i>4.<span style="font-size: 7pt; font-stretch: normal; font-style: normal;"> </span></i><!--[endif]--><i>Хранение
и обработка локальных данных. Наборы данных ключ/значение. Хранение файлов,
работа с </i><i><span lang="EN-US">SQL</span>
БД.<o:p></o:p></i></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
6</div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
4</div>
</td>
</tr>
<tr>
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: solid #7F7F7F 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-right-alt: solid #7F7F7F .5pt; mso-border-right-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-themetint: 128; mso-border-right-themetint: 128; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; mso-yfti-cnfc: 68; text-indent: -18.0pt;">
<!--[if !supportLists]--><i>5.<span style="font-size: 7pt; font-stretch: normal; font-style: normal;"> </span></i><!--[endif]--><i>Связь
и передача данных. Беспроводная связь, обработка </i><i><span lang="EN-US">XML</span>-данных, обмен данными с облачными
хранилищами. Работа со списком контактов.<o:p></o:p></i></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 64; text-indent: 0cm;">
5</div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 64; text-indent: 0cm;">
3</div>
</td>
</tr>
<tr>
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: solid #7F7F7F 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-right-alt: solid #7F7F7F .5pt; mso-border-right-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-themetint: 128; mso-border-right-themetint: 128; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; mso-yfti-cnfc: 4; text-indent: -18.0pt;">
<!--[if !supportLists]--><i>6.<span style="font-size: 7pt; font-stretch: normal; font-style: normal;"> </span></i><!--[endif]--><i>Публикация
приложений. </i><i><span lang="EN-US">Google</span><span lang="EN-US"> </span></i><i><span lang="EN-US">Play</span>
и альтернативные хранилища. <o:p></o:p></i></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
5</div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
3</div>
</td>
</tr>
<tr>
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid windowtext 1.0pt; border-right: solid #7F7F7F 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-right-alt: solid #7F7F7F .5pt; mso-border-right-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-themetint: 128; mso-border-right-themetint: 128; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 71.78%;" valign="top" width="71%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 68; text-indent: 0cm;">
<b><i>Всего по модулю 2<o:p></o:p></i></b></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.84%;" valign="top" width="10%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 64; text-indent: 0cm;">
<b>80<o:p></o:p></b></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 17.38%;" valign="top" width="17%"><div class="MsoNormal" style="margin-left: 20.0pt; mso-yfti-cnfc: 64; text-indent: 0cm;">
<b>18<o:p></o:p></b></div>
</td>
</tr>
</tbody></table>
</div>
<h3 style="text-align: left;">
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 19px;"><br /></span><span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 13.63636302948px; line-height: 19px;">Темы лабораторных работ:</span></h3>
<div>
<table border="1" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; border: none; mso-border-alt: solid black .5pt; mso-border-insideh: .5pt solid black; mso-border-insidev: .5pt solid black; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-table-layout-alt: fixed; mso-yfti-tbllook: 1184; width: 100%px;">
<tbody>
<tr>
<td style="border: solid black 1.0pt; mso-border-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
<br />
<ul>
<li><span style="font-size: 7pt; font-stretch: normal;"> </span>Работа с библиотеками на примере двумерной
графики</li>
</ul>
<o:p></o:p></div>
</td>
<td style="border-left: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="right" class="MsoNormal" style="text-align: right; text-indent: 0cm;">
<div style="text-align: center;">
<span style="text-indent: 0cm;">4 </span></div>
</div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
<br />
<ul>
<li>Хранение и обработка локальных данных</li>
</ul>
<o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="right" class="MsoNormal" style="text-align: right; text-indent: 0cm;">
<div style="text-align: center;">
<span style="text-indent: 0cm;">4</span><o:p></o:p></div>
</div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
<br />
<ul>
<li><span style="font-size: 7pt; font-stretch: normal;"> </span>Проектирование мобильного приложения (деловая игра)</li>
</ul>
<!--[if !supportLists]--></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="right" class="MsoNormal" style="text-align: right; text-indent: 0cm;">
<div style="text-align: center;">
<span style="text-indent: 0cm;">4</span><o:p></o:p></div>
</div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div align="left" class="MsoListParagraph" style="text-indent: -18pt;">
<br />
<ul>
<li><span style="text-indent: -18pt;"> Работа
с мобильной связью</span></li>
</ul>
<o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="right" class="MsoNormal" style="text-align: right; text-indent: 0cm;">
<div style="text-align: center;">
<span style="text-indent: 0cm;"> 4</span><o:p></o:p></div>
</div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div align="left" class="MsoListParagraph" style="text-indent: -18pt;">
<br />
<ul>
<li><span style="text-indent: -18pt;"><span style="font-size: xx-small;"> </span>Работа
с облачными хранилищами</span></li>
</ul>
<o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="right" class="MsoNormal" style="text-align: right; text-indent: 0cm;">
<div style="text-align: center;">
<span style="text-indent: 0cm;">4</span><o:p></o:p></div>
</div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div align="left" class="MsoListParagraph" style="text-indent: -18pt;">
<br />
<ul>
<li><span style="text-indent: -18pt;"> Отладка,
тестирование и поддержка процесса разработки</span></li>
</ul>
<o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="right" class="MsoNormal" style="text-align: right; text-indent: 0cm;">
<div style="text-align: center;">
<span style="text-indent: 0cm;">4</span><o:p></o:p></div>
</div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div align="left" class="MsoListParagraph" style="text-indent: -18pt;">
<br />
<ul>
<li><span style="text-indent: -18pt;"> Публикация
приложения</span></li>
</ul>
<o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="right" class="MsoNormal" style="text-align: right; text-indent: 0cm;">
<div style="text-align: center;">
3<o:p></o:p></div>
</div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 72.86%;" valign="top" width="72%"><div align="left" class="MsoNormal" style="margin-left: 18pt; text-indent: 0cm;">
Итого по 2 модулю <o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 10.54%;" valign="top" width="10%"><div align="left" class="MsoNormal" style="text-indent: 0cm;">
<div style="text-align: center;">
27<o:p></o:p></div>
</div>
</td>
</tr>
</tbody></table>
</div>
<div>
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif;"><span style="font-size: 13.63636302948px; line-height: 19px;"><br /></span></span></div>
<h3 style="text-align: left;">
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif;"><span style="font-size: 13.63636302948px; line-height: 19px;">График выполнения курсового проекта</span></span></h3>
<div>
<table border="1" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; border: none; mso-border-alt: solid black .5pt; mso-border-insideh: .5pt solid black; mso-border-insidev: .5pt solid black; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; width: 100%px;">
<tbody>
<tr>
<td style="border: solid black 1.0pt; mso-border-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
Неделя<span lang="EN-US"><o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal">
Наименование
этапа работы<span lang="EN-US"><o:p></o:p></span></div>
</td>
<td style="border-left: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div class="MsoNormal" style="text-indent: 0cm;">
Объем (Час.)<o:p></o:p></div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
1<o:p></o:p></div>
<div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
2<o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
Составление технического задания,<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
требований к программе, разработка
концепции приложения<o:p></o:p></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div align="center" class="MsoNormal" style="text-align: center; text-indent: 0cm;">
<span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">6<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">3<o:p></o:p></span></div>
<div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">4<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white;">проектирование пользовательского
интерфейса, <o:p></o:p></span></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white;">разработка пакета тестов,<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div align="center" class="MsoNormal" style="text-align: center; text-indent: 0cm;">
<span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">8<o:p></o:p></span></div>
</td>
</tr>
<tr style="height: 42.75pt; mso-yfti-irow: 3;">
<td style="border-bottom: solid windowtext 1.0pt; border-left: solid black 1.0pt; border-right: solid black 1.0pt; border-top: none; height: 42.75pt; mso-border-alt: solid black .5pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">5<o:p></o:p></span></div>
<div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">6<span lang="EN-US"><o:p></o:p></span></span></div>
<div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span lang="EN-US" style="background-color: white;">7<o:p></o:p></span></div>
<div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;"><span lang="EN-US">8</span><o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 42.75pt; mso-border-bottom-alt: windowtext; mso-border-left-alt: black; mso-border-left-alt: solid black .5pt; mso-border-right-alt: windowtext; mso-border-style-alt: solid; mso-border-top-alt: black; mso-border-top-alt: solid black .5pt; mso-border-width-alt: .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white;">Кодирование и отладка<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<br /></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<br /></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white;">тестирование разработчиком <o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; height: 42.75pt; mso-border-bottom-alt: windowtext; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: windowtext; mso-border-right-alt: black; mso-border-style-alt: solid; mso-border-top-alt: black; mso-border-top-alt: solid black .5pt; mso-border-width-alt: .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div class="MsoNormal" style="text-align: center; text-indent: 0cm;">
<span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">16<o:p></o:p></span></div>
</td>
</tr>
<tr style="height: 28.3pt; mso-yfti-irow: 4;">
<td style="border-top: none; border: solid black 1.0pt; height: 28.3pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;"><span lang="EN-US">1</span>0</span></div>
<div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white; text-align: left;">11</span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 28.3pt; mso-border-bottom-alt: black; mso-border-left-alt: black; mso-border-left-alt: solid black .5pt; mso-border-right-alt: windowtext; mso-border-style-alt: solid; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: windowtext; mso-border-width-alt: .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal">
<span style="background-color: white;">внешнее тестирование,
подготовка маркетинговых материалов<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background-color: white;">доработка по
итогам тестирования<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; height: 28.3pt; mso-border-bottom-alt: black; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: windowtext; mso-border-right-alt: black; mso-border-style-alt: solid; mso-border-top-alt: solid windowtext .5pt; mso-border-top-alt: windowtext; mso-border-width-alt: .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div class="MsoNormal">
<span style="background-color: white;"> 8</span></div>
</td>
</tr>
<tr style="height: 13.5pt; mso-yfti-irow: 5;">
<td style="border-top: none; border: solid black 1.0pt; height: 13.5pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">12<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 13.5pt; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white;">Публикация приложения<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; height: 13.5pt; mso-border-alt: solid black .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div align="center" class="MsoNormal" style="text-align: center; text-indent: 0cm;">
<span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">4<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">13<o:p></o:p></span></div>
<div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">14<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white;">Оформление пояснительной записки и <o:p></o:p></span></div>
<div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<span style="background-color: white;">зашита проекта (от 30 с.)<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div align="center" class="MsoNormal" style="text-align: center; text-indent: 0cm;">
<span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">8<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 11.5%;" valign="top" width="11%"><div align="center" class="MsoNoSpacing" style="text-align: center; text-indent: 0cm;">
<span style="background-color: white;">Итого<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 76.44%;" valign="top" width="76%"><div class="MsoNormal" style="margin-left: 20.0pt; text-indent: 0cm;">
<br /></div>
</td>
<td style="border-bottom: solid black 1.0pt; border-left: none; border-right: solid black 1.0pt; border-top: none; mso-border-alt: solid black .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid black .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 12.06%;" valign="top" width="12%"><div align="center" class="MsoNormal" style="text-align: center; text-indent: 0cm;">
<span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"><span style="background-color: white;">50</span><span style="background-color: yellow;"><o:p></o:p></span></span></div>
</td>
</tr>
</tbody></table>
</div>
<div>
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif;"><span style="font-size: 13.63636302948px; line-height: 19px;"><br /></span></span></div>
<div>
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif;"><span style="font-size: 13.63636302948px; line-height: 19px;">Надеюсь, что наш курс поможет не только заполнить пробелы в программистских компетентностях, но и даже что-то заработать на своей программе.</span></span></div>
<div>
<span style="color: #464646; font-family: Arial, Verdana, Helvetica, sans-serif;"><span style="font-size: 13.63636302948px; line-height: 19px;"><br /></span></span></div>
</div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-69591965471776627222015-01-07T20:03:00.001+03:002015-01-07T20:03:20.899+03:00<div dir="ltr" style="text-align: left;" trbidi="on">
С рождеством, дорогие студенты!<br />
Видимо, с контрольной работой номер 3 получились сложности, так как никто до сих пор не прислал правильного ответа, несмотря на длительные новогодние каникулы.<br />
В качестве подарка к рождеству выкладываю Вам образец программы с применением webView и встроенным html-кодом. Импортируйте этот проект и затем поменяйте содержимое папки Assets, дизайн главной Activity, значок приложения и его имя (там должна быть ваша фамилия). <a href="https://drive.google.com/file/d/0B_2Y-jfphvRTN1B1Q2ZtNXRITlU/view?usp=sharing">Тут лежит архив с проектом</a>.<br />
<br />
Надеюсь,до экзамена все успеют разобраться и прислать свои работы.</div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-80844853550993183912014-12-17T11:08:00.001+03:002014-12-23T12:10:23.984+03:00Значок из Иллинойса<div dir="ltr" style="text-align: left;" trbidi="on">
Приветствую Вас, уважаемые читатели! Если вы, как и я, параллельно с этим курсом занимались также с Лоуренсом Ангрэйвом из Иллинойского университета на Coursera, то пришло время получать дипломы и сертификаты.<br />
Мне прислали сегодня прикольное письмо и значок андроид-разработчика, чем-то напоминающий череп со скрещенными костями :-)<br />
А через неделю - дополнительный значок для тех, кто успешно окончил трек для программистов.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirrVxItVQAfM6dDm11ge6U2NrmDOSAhM3VZH1M7jMRAeGIY6wVeVsmSrGmOX_ImTIRXFOgzJVM2avn1H7EViXuoqIQfUGJ0kn8sB_8KGLjJidHNHqRxGxfGfyIelpTVu7pjES35-nFnq-C/s1600/letter-dev-badge1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirrVxItVQAfM6dDm11ge6U2NrmDOSAhM3VZH1M7jMRAeGIY6wVeVsmSrGmOX_ImTIRXFOgzJVM2avn1H7EViXuoqIQfUGJ0kn8sB_8KGLjJidHNHqRxGxfGfyIelpTVu7pjES35-nFnq-C/s1600/letter-dev-badge1.png" height="320" width="282" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRBcP5IKf6O46qoxf7RLc2jd7VHrS7R3X1CXYVdib4R7HwBKQcQPpC8BDaEUTCOJYuti5XtK0qGh12wrtO_e7nT4ODlmH9BAAAi0dHafxsQdfm7KlhKOgPMQZJ74R1Bt1bHfSoAfQUxq6r/s1600/letter-dev-badge.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRBcP5IKf6O46qoxf7RLc2jd7VHrS7R3X1CXYVdib4R7HwBKQcQPpC8BDaEUTCOJYuti5XtK0qGh12wrtO_e7nT4ODlmH9BAAAi0dHafxsQdfm7KlhKOgPMQZJ74R1Bt1bHfSoAfQUxq6r/s1600/letter-dev-badge.png" height="400" width="361" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
Вырежу и буду с гордостью носить в ПензГТУ.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
А кто - нибудь из вас получил что-то от Лоуренса?</div>
<div class="separator" style="clear: both; text-align: center;">
Если да - напишите в комментариях </div>
<div class="separator" style="clear: both; text-align: center;">
(учту как дополнительные 5 баллов к рейтингу по нашему курсу).</div>
<br /></div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-55076386902405552412014-11-25T14:38:00.001+03:002016-07-12T17:54:44.015+03:00Урок 6. Просмотр веб-страниц и контрольная работа 3<div dir="ltr" style="text-align: left;" trbidi="on">
Мобильные приложения делятся на несколько групп: "родные" (нативные), веб-приложения, комбинированные. Об этом кратко, но понятно написано в статье <a href="http://interosite.ru/articles/modern-mobile-techs">http://interosite.ru/articles/modern-mobile-techs</a>.
<br />
Часто веб-приложение можно сделать очень быстро, особенно, если само содержание сайта уже готово. <br />
Андроид позволяет просматривать веб-контент двумя способами: с помощью встроенного браузера и с помощью элемента WebView.<br />
<b>В первом случае</b> в вашем приложении должен быть Intent с действием "Просмотр" (Action_View), а что именно вы хотите смотреть, указывается атрибутом Data, где мы пишем адрес нужной веб-страницы. Например:
<br />
<pre>Uri address = Uri.parse("http://penzgtu.ru");
Intent openlink = new Intent(Intent.ACTION_VIEW, address);
startActivity(openlink);
</pre>
Андроид понимает, что нужно запустить встроенный браузер, а после того, как вы закончите наслаждаться интернетом, снова из стека всплывает ваше приложение. Как видим, ничего сложного: только правильно описать Intent и его данные. Примеры того, как это сделать, <a href="http://stackoverflow.com/questions/3004515/android-sending-an-intent-to-browser-to-open-specific-url">смотрите тут.</a> Подробно про параметры Intent с <a href="http://startandroid.ru/ru/uroki/vse-uroki-spiskom/70-urok-31-zachem-u-intent-est-atribut-data-chto-takoe-uri-vyzyvaem-sistemnye-prilozhenija">примерами обращения к сайту и google-карте - тут.</a> В принципе, какую программу запускать, выбирает сам Android в зависимости от того, что вы запишете в <b>uri<i></i></b>. Такой интент называется неявным. Если на телефоне несколько браузеров, то пользователю будет предложено выбрать один из них. <br />
<b>Во втором случае </b>элемент WebView вставляется в интерфейс вашего приложения. Вы можете просматривать не только сайты в интернете, но и свои собственные веб-страницы и рисунки, размещенные в папке Assets. Элемент находится в самом низу палитры элементов на вкладке Composite (см. рисунок). Красными стрелками отмечено, где искать элемент на макете.
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPstwNqNMgbp9sycwpZNyU11EempJDUr1qdphjFBt8K5ScsX_438H_-BVcfYICieMRnm4Zy2F7RCgPHh9yWqWFipOqkO11oWDwTFi-He86BmtaaECTUUuTPN9TpOlj7ByHZ6q7g7DC2lV7/s1600/webview.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPstwNqNMgbp9sycwpZNyU11EempJDUr1qdphjFBt8K5ScsX_438H_-BVcfYICieMRnm4Zy2F7RCgPHh9yWqWFipOqkO11oWDwTFi-He86BmtaaECTUUuTPN9TpOlj7ByHZ6q7g7DC2lV7/s320/webview.png" /></a></div>
<br />
То есть ваша программа без подключения к интернету и без серьезного программистского труда может представлять достаточно большой контент в формате html/css/javascript. Конечно, он не может обновляться, но часто это и не нужно, например, для учебников, справочников, библиотек картинок и т.п.
<br />
Подробнее о разработке мобильных веб-приложений прочитайте у <a href="http://developer.alexanderklimov.ru/android/mybrowser.php">Александра Климова тут (кратко)</a> и <a href="http://developer.alexanderklimov.ru/android/views/webview.php">тут (детально)</a>.
<br />
О новой версии WebView для Андроид 4.4 и новее <a href="http://developer.android.com/guide/webapps/migrating.html">смотрите первоисточник.</a>
<br />
И наконец, очень рекомендую прочитать маленькие разделы <a href="http://developer.android.com/guide/webapps/targeting.html">"Поддержка разных размеров экрана"</a> и <a href="http://developer.android.com/guide/webapps/best-practices.html"> "Лучшая практика"</a>
<br />
<h3>
Контрольная работа 3</h3>
<br />
<blockquote>
<i>Обучение программиста - дело рук самого программиста (народная мудрость)</i> </blockquote>
Обязательно нужно закрепить полученные знания практической работой. Без этого все выветрится из головы так же быстро, как прочиталось. <br />
Для практического тренинга разработайте собственное веб-приложение:<br />
<ul>
<li>придумайте собственный веб-сайт из 5-10 файлов (титульная страница, разделы, рисунки) на любую тему с гиперссылками как внутри сайта так и на внешние страницы;</li>
<li>Добавьте к своему сайту папку с игрой из <a href="https://drive.google.com/file/d/0B_2Y-jfphvRTYXJva3NEdFZibWc/view?usp=sharing"> распакованного архива </a>. Из архива используйте только 1 папку: для windows -roundball, для МАС ОС - __MACOSX. Проверьте, работает ли игра просто в браузере.
<br />Игра взята из <a href="https://github.com/digitalfruit/limejs">Github, разработана фирмой Lime. </a>Добавьте на главной странице сайта ссылку на игру "Шарики" - файл roundball.html.</li>
<li>оформите сайт с применением библиотек для мобильных приложений, например, <a href="http://bootstrap-ru.com/">bootstrap</a> или <a href="http://jquerymobile.com/">jquery mobile</a>. Смотрите<a href="http://demos.jquerymobile.com/1.0a2/"> подробные инструкции и примеры по последней библиотеке тyт (по английски).</a>
</li>
<li>Создайте новое андроид-приложение, закачайте свой сайт в папку Assets. </li>
<li>Добавьте в макет интерфейса WebView для просмотра вашего сайта, разработайте Activity для его работы (не забудьте Settings
с разрешением javascript и DOM!).<br />
<b>myWebView.getSettings().setBuiltInZoomControls(true);<br />
myWebView.getSettings().setJavaScriptEnabled(true)</b>;</li>
<li>Сделайте внизу макета кнопку для перехода к другому сайту в интернет (например, сюда или к вашей странице в facebook, ВК и тп). </li>
<li>Придумайте кнопку для чего-нибудь еще (email, selfy, sms ... на ваше усмотрение - из того, что мы уже изучили). </li>
</ul>
При отладке приложения пробуйте разные ориентации экрана, пробуйте увеличить, уменьшить текст жестом, проверьте работоспособность скриптов.<br />
Кстати, при разработке приложения можете использовать информацию из 8 лекции и <a href="http://www.intuit.ru/studies/courses/12643/1191/lecture/22006">11 самостоятельной работы Интуит</a>. Но это пока не обязательно: сайт и приложение можно разрабатывать и в Eclipse, DreamWeaver, Notepad++.<br />
Присылайте отчет по работе на форум (java, xml, Acssets, apk).<br />
<hr />
<br />
Оставшуюся часть семестра посвятим разработке, отладке и сдаче тех приложений, которые вы должны были сделать при выполнении самостоятельных работ. Самые значительные из них на настоящий момент: 4, 5-6 и 7-8. <br />
Условия сдачи отчетов по этим работам <a href="https://groups.google.com/forum/#!topic/pengtu_mobile/zQ6E6RhUtJ0">смотрите в форуме. </a>
<br />
<br />
<h2>
Желаю всем творческих успехов!</h2>
<br /></div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-64916313819908571622014-11-18T12:33:00.001+03:002014-11-18T13:02:56.984+03:00Контрольная работа 2: несколько активностей и медиаплеер<div dir="ltr" style="text-align: left;" trbidi="on">
<h2>Делаем самостоятельную работу 7 <a href="http://www.intuit.ru/studies/courses/12643/1191/lecture/21996"> тут ссылка</a>.</h2>
<br />
<p>Тут главное: изучить вызов одной Activity окна из другого, как передавать и получать обратно данные, как управлять медиаплеером.
</p>
<h3> Также делаем контрольную работу 2.</h3>
<p>Разработать приложение "Тест" (например, так реализуется 1 шаг игры "Найди кота")</p>
Требования к программе:
<ol>
<li> программа должна иметь оригинальную иконку</li>
<li> версия андроид мин - 10,</li>
<li> 2 активности: </li>
</ol>
<h4>в первой активности: </h4>
<li> текстовое поле, содержащее текст вопроса из 3-4 абзацев (если текст не умещается - сделать скроллинг) и 2 кнопки:
<li>кн1. - открыть вторую активность (надпись на кнопке - подсказка)</li>
<li>кн.2 - включить/выключить музыку (надпись на кнопке меняется после нажатия: например, play/pause или маленькие значки), </li></li>
<li>- внизу поле для ввода ответа.</li>
<h4>во второй активности </h4>:
<li>- картинка, являющаяся ответом</li>
<li>- подпись к ней, </li>
<li>- текстовое поле - введенный в первой активности ответ с комментарием "Ваш ответ".</li>
<li>- кнопка для возврата обратно (можно использовать системную кнопку назад).</li>
<p>После выхода из 2 активности должна открываться первая активность с ранее введенным ответом. </P>
<p>
4) найти маленький mp3-файл с фоновой музыкой - примерно на 30 с., можно обрезать файл с помощью онлайнового сервиса (например - http://mp3cut.foxcom.su/kak-virezat-kusok-iz-pesni/). Этот файл разместить в папке /resource/row и сделать фоновой музыкой приложения. Музыку можно отключать (пауза) в первой активности.</p>
<p>
5) проверить работу приложения на эмуляторе (телефон и планшет). </p><p>
6) прислать файл apk (подписанный на 50 лет). </p>
<h2>Работу закончить к 25.11.2014</h2>
<hr>
<p> <b>Усложненный вариант: </b> на 1 активности вместо текста - картинка, пользователь должен показать на нужное место на картинке. Вместо кнопки - тап пользователя вызывает переход к 2 активности.
на второй активности - картинка с выделенным правильным ответом (кружочком например) и оценка - правильно ли попал пользователь (например: ответ правльный/не правильно).
</P>
<p>Еще немного усложнения - сделать дублирующий Layout на английском языке.</p>
</div>Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-22998084943042069962014-11-08T14:40:00.003+03:002014-11-18T12:37:00.223+03:00 Урок 5. Сенсоры и самостоятельная работа 5<div dir="ltr" style="text-align: left;" trbidi="on">
Изучаем на Интуит.ру <a href="http://www.intuit.ru/studies/courses/12643/1191/lecture/21992"> <b>лекцию 5 </b></a>
про то, как в своей программе использовать сенсоры, мультимедиа, камеру, систему позиционирования. Также делаем самостоятельную работу 5.
<br />
</div>Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-57800291166435864732014-11-08T14:35:00.001+03:002014-11-10T11:32:00.969+03:00Первая проверка боем<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
Прежде чем двигаться дальше и углубляться в дебри классов, управляющих мобильными устройствами, давайте проверим,
насколько усвоены уже полученные знания практически.<br />
Нужно разработать <b>простенькую программу </b> из двух экранных форм, на каждой из них будет картинка и несколько абзацев текста к ней. На 1 экране - вертикальная ориентация, на 2 экране - горизонтальная ориентация макета. <br>
Например: 1 - фото Лермонтова и краткая информация о нем, 2 - стих и иллюстрация к нему.
Смена макета - при повороте мобильника. <br>
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirE0sd54BQiskupGvATaUKG4Q4ly4uCIfmXZPglbk-iGjphGzIUnOrJLykVPMxdD3yF9MIs5xN1-D7ICGDsWnSHMhAFEvMRsr5N6wierX-JyZ0pHcQPM_PL_yQ3paiIrQCADEsrFV_8GZ3/s1600/lerm.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirE0sd54BQiskupGvATaUKG4Q4ly4uCIfmXZPglbk-iGjphGzIUnOrJLykVPMxdD3yF9MIs5xN1-D7ICGDsWnSHMhAFEvMRsr5N6wierX-JyZ0pHcQPM_PL_yQ3paiIrQCADEsrFV_8GZ3/s320/lerm.jpg" /></a></div>
Выбор картинки и текста - на ваше усмотрение. Рекомендуется писать приложение с нуля.
На выполнение - дается неделя. Время пошло с воскресенья 9.11.<br>
<br>
Вам в помощь - все предыдущие лекции, а также: <br>
Урок по смене ориентации устройства <a href="http://startandroid.ru/ru/uroki/vse-uroki-spiskom/14-urok-5-layout-kak-ispolzovat-smena-orientatsii-ekrana.html">тут</a>
Чтобы поделиться своим приложением с друзьями, его нужно экспортировать в виде APK-файла. Также полезно освоить экспорт всего проекта, например, чтобы его показать в классе, если что-то не выходит.
Для этого почитайте <a href="http://startandroid.ru/ru/uroki/vse-uroki-spiskom/221-urok-123-kak-podpisat-prilozhenie-utility-keytool-i-jarsigner.html">тут про процедуру и смысл экспорта apk</a>,
тут <a href="http://startandroid.ru/ru/uroki/vse-uroki-spiskom/223-urok-124-chto-takoe-package-dlja-prilozhenija.html"> про ключи</a>.
Вот тут <a href="https://drive.google.com/open?id=0B_2Y-jfphvRTWFRiWUNndVpwSjQ&authuser=0">результат моих упражнений</a> при учебе на Coursera/
</div>Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-75786042418641062552014-10-28T13:40:00.003+03:002014-11-18T12:58:43.341+03:00Урок 4: изучаем Java (тут также общий список рекомендуемых ресурсов)<div dir="ltr" style="text-align: left;" trbidi="on">
<h2> Перечень рекомендуемой литературы</h2>
<ol style="font-family: arial, helvetica, clean, sans-serif; font-size: 12.7272720336914px; line-height: 14.5481796264648px;">
<li><a href="http://www.intuit.ru/studies/courses/12643/1191/info" target="_blank">Введение в разработку приложений для ОС Android</a> (основной учебник на 1 семестр)</li>
<li><a href="http://www.intuit.ru/studies/courses/4462/988/info" target="_blank">Введение в разработку приложений для смартфонов на ОС Android (кратко)</a></li>
<li><a href="http://www.intuit.ru/studies/courses/12786/1219/info" target="_blank">Разработка приложений для смартфонов на ОС Аndroid (продвинутый)</a></li>
<li><a href="http://startandroid.ru/ru/uroki/vse-uroki-spiskom.html" target="_blank">Google Android - это несложно</a> (100 бесплатных уроков для начинающих разработчиков)</li>
<li><a href="http://developer.alexanderklimov.ru/android/java/java.php" target="_blank">Java. Экспресс-курс</a></li>
<li><a href="http://developer.alexanderklimov.ru/android/index.php" target="_blank">Изучаем Android за месяц (Android Studio) </a>(30 уроков. Внимание: используется не Eclipse, а Android Studio!!!)</li>
<li><a href="http://www.tutorialspoint.com/mobile_computing/index.htm" target="_blank">Mobile computing (англ.) (общий обзор)</a></li>
<li><a href="http://www.tutorialspoint.com/android/index.htm">Android Tutorial (англ.)</a></li>
<li><a href="http://www.intuit.ru/studies/courses/4787/1052/info"> Разработка приложений для Modern UI: Windows 8</a></li>
<li><a href="http://habrahabr.ru/post/142178/" target="_blank">60+ средств разработки мобильных приложений</a></li>
<li><a href="http://wikijava.org.ua/index.php?title=Thinking_in_Java_4th_edition"> Учебник по Java (Электронный wiki-перевод
книги Брюса Эккеля. 4 издание) </a></li>
<li>
<a href="https://www.youtube.com/watch?v=-gGLSxmw3jo"> <b>Java: вводная видеолекция (С.Немчинский)/ Часть 1, ООП, JVM </b> </a> <br>
<a href="https://www.youtube.com/watch?v=8JH8MRlScJA"> Часть 2, UML, описание класса, видимость полей, методы, конструкторы </a> <br>
<a href="https://www.youtube.com/watch?v=ihVGmiss6Vw">Часть 3, Объект Object </a><br>
<a href="https://www.youtube.com/watch?v=KAny2OSYY3Y">Часть 4, Обзор юнит-тестов</a><br>
<a href="https://www.youtube.com/watch?v=ggWDA9EvV3g">* Часть 5, разработка веб-приложений - обзор</a><br>
* Остальные части не очень хорошо
</li>
<li>
<a href="https://www.youtube.com/watch?v=y6Q46RFlMKI&list=PLov7vC9M_skJAndjJAq3RWpWbyZH8CyO0"> <b>Java: другой видеокурс (А.Владыкин)/ 12 лекций. </b> </a> <br>
Обязательно к просмотру 1-6 части. Полезна и 12 - работа с сетью. <br>
<a href="https://www.youtube.com/watch?v=BYUYsgduI3Y">2. Типы данных </a> <br>
<a href="https://www.youtube.com/watch?v=nJQnG1XrYqw">3. Преобразование типов, Массивы и строки </a> <br>
<a href="https://www.youtube.com/watch?v=VVTANx1CrYU">4. Объекты </a> <br>
<a href="https://www.youtube.com/watch?v=oYzSf1RWCYI">5. Управляющие консттрукции </a> <br>
<a href="https://www.youtube.com/watch?v=kyAbehi5FUk">6. Ввод и вывод </a> <br>
</li>
</ol>
<h2 style="font-family: arial, helvetica, clean, sans-serif;"> Авторские ресурсы:</h2>
<p> 1. Блог для выдачи еженедельных заданий: <a href="http://shigina-android.blogspot.ru/" target="_blank">" Разработка мобильных приложений"</a><br>
2. Форум: для обсуждения и вопросов: <a href="https://groups.google.com/forum/?hl=ru#!forum/pengtu_mobile" target="_blank">закрытая группа Google</a>
<br>
3. Презентация <a href="https://drive.google.com/file/d/0B_2Y-jfphvRTNm1oTmNNRzg4U28/view?usp=sharing">по языку Java лежит тут (введение)</a>.
</p>
<h2 style="font-family: arial, helvetica, clean, sans-serif;">
<span class="GCUXF0KCCAB">Курсы по теме от других университетов:</span></h2>
<div style="font-family: arial, helvetica, clean, sans-serif; font-size: 12.7272720336914px; line-height: 14.5481796264648px;">
<span class="GCUXF0KCCAB">1. </span><a href="https://www.coursera.org/course/androidapps101">Иллинойсский университет в Урбане-Шампейне</a>/
<a href="https://class.coursera.org/androidapps101-002" target="_blank">Креативная, серьезная и занимательная наука о приложениях для Android</a></div>
<div style="font-family: arial, helvetica, clean, sans-serif; font-size: 12.7272720336914px; line-height: 14.5481796264648px;">
2. <a href="https://www.coursera.org/umd">Мэрилендский университет в Колледж-Парке</a>/ <a href="https://www.coursera.org/course/android" target="_blank">Программирование мобильных приложений для карманных ПК на базе Android</a></div>
<div style="font-family: arial, helvetica, clean, sans-serif; font-size: 12.7272720336914px; line-height: 14.5481796264648px;">
3.Vanderbilt University. <a href="https://class.coursera.org/posa-002/" target="_blank">Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld Systems</a></div>
<div style="font-family: arial, helvetica, clean, sans-serif; font-size: 12.7272720336914px; line-height: 14.5481796264648px;">
4. Vanderbilt University. <a href="https://www.coursera.org/course/mobilecloud" target="_blank">Программирование облачных служб для карманных ПК на базе Android</a></div>
</div>Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-38203916142492626152014-10-27T10:24:00.002+03:002014-10-27T10:24:31.408+03:00Урок 3. Изучаем создание интерфейса приложения подробнее<div dir="ltr" style="text-align: left;" trbidi="on">
Привет!<br />
Вы уже научились размещать копки и текстовые поля, а также обрабатывать их события в программе. Теперь изучаем подробно все элементы графического пользовательского интерфейса по лекциям Интуита:<br />
<br />
<ul style="text-align: left;">
<li>"Введение в разработку приложений Android" - лекции, тесты и самостоятельная работа с номерами 3 и 4. </li>
<ul>
<li><a href="http://www.intuit.ru/studies/courses/14441/1191/lecture/21986">http://www.intuit.ru/studies/courses/14441/1191/lecture/21986</a></li>
<li><a href="http://www.intuit.ru/studies/courses/14441/1191/lecture/21989">http://www.intuit.ru/studies/courses/14441/1191/lecture/21989</a></li>
</ul>
</ul>
Дополнительно советую почитать рекомендации практиков дизайна:<br />
<br />
<ol style="text-align: left;">
<li><a href="http://habrahabr.ru/post/183836/">http://habrahabr.ru/post/183836/</a> - как таки должен работать дизайнер для учета всего зоопарка устройств</li>
<li>Простые примеры управления интерфейсом: <a href="http://developer.alexanderklimov.ru/android/">http://developer.alexanderklimov.ru/android/</a> - день 3 - 10. </li>
</ol>
<div>
В результате у вас должно сложиться общее представление о пользовательском интерфейсе андроид-приложения. </div>
<div>
В заключение попробуйте нарисовать от руки эскизы всех экранов вашего приложения. Постарайтесь уложиться в 5 экранов! </div>
<div>
<br /></div>
<div>
Ваши идеи предлагаю обсудить на семинаре во вторник и на форуме <a href="https://groups.google.com/forum/#!topic/pengtu_mobile/U62cfT6zxqs">https://groups.google.com/forum/#!topic/pengtu_mobile/U62cfT6zxqs</a>.</div>
<div>
<br /></div>
<br />
<br /></div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0tag:blogger.com,1999:blog-3465891128298275358.post-72657461754178430172014-10-22T13:08:00.000+04:002014-10-27T10:55:00.199+03:00Урок 2: создание простейшей программы из двух окон, текстового поля и кнопки<div dir="ltr" style="text-align: left;" trbidi="on">
<h1>
Урок 2: построение простого пользовательского интерфейса программы для <span lang="EN-US">Android</span><o:p></o:p></h1>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 13.5pt; margin-right: 0cm; margin-top: 3.75pt;">
источник: <a href="http://developer.android.com/training/basics/firstapp/starting-activity.html#BuildIntent">http://developer.android.com/training/basics/firstapp/starting-activity.html#BuildIntent</a><span style="background: #C9D7F1; color: #006600; font-family: "Courier New"; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div style="background-position: initial initial; background-repeat: initial initial; margin: 0cm 0cm 11.25pt;">
<span style="background-color: #f9f9f9; color: #222222; font-family: Arial, sans-serif; font-size: 11pt; line-height: 14.25pt;">Графический пользовательский
интерфейс для Android приложений построен с использованием и</span>ерархии объектов <i>View</i>- и <i>ViewGroup</i> . Первый класс объе<span style="background-color: #f9f9f9; color: #222222; font-family: Arial, sans-serif; font-size: 11pt; line-height: 14.25pt;">ктов применяют
обычно для создания видимых элементов интерфейса (кнопки, текстовые поля), а </span><a href="http://developer.android.com/reference/android/view/ViewGroup.html" style="background-color: #f9f9f9; line-height: 14.25pt;"><span style="color: #258aaf; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">ViewGroup</span></a><span class="apple-converted-space" style="background-color: #f9f9f9; line-height: 14.25pt;"><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 11.0pt;">
- это </span></span><span style="background-color: #f9f9f9; color: #222222; font-family: Arial, sans-serif; font-size: 11pt; line-height: 14.25pt;">невидимые контейнеры для
первых, например, они применяются, чтобы разместить кнопки по сетке или в виде вертикального
списка.</span></div>
<div style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 11.25pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm;">
<span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 11.0pt;">Android предоставляет
<a href="http://developer.android.com/images/viewgroup.png">XML-словарь,</a> который содержит описания подклассов элементов и их групп, так что
пользовательский интерфейс можно описывать с помощью XML, используя иерархию
элементов интерфейса.<o:p></o:p></span></div>
<h2 style="background: #F9F9F9; line-height: 24.0pt; margin-bottom: 7.5pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm;">
<span style="color: #222222; font-family: Arial, sans-serif; font-size: 11pt; line-height: 14.25pt;">В этом уроке вы создадите в
файле XML макет, который включает текстовое поле и кнопку.<span class="apple-converted-space"> Затем напишем программу, которая п</span>осле
нажатия кнопки отправит содержание текстового поля на другую </span><i style="line-height: 14.25pt;"><span lang="EN-US" style="color: #222222; font-family: "Arial","sans-serif"; font-size: 11.0pt; mso-ansi-language: EN-US;">Activity</span></i><span style="color: #222222; font-family: Arial, sans-serif; font-size: 11pt; line-height: 14.25pt;">.</span></h2>
<h3 style="text-align: left;">
Создаем линейный макет ( Linear Layout).</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
В Эклипсе при открытии файла макета вы сначала видите
графический редактор макета, который
позволяет размещать элементы интерфейса в режиме WYSIWYG. Но в этом уроке мы
будем работать напрямую с XML-файлом, в котором сохраняется описание макета.
Для открытия XML-редактора щелкните внизу экрана по закладке activity_main.xml.
Файл макета находится в папке
res/layout/ .<o:p></o:p></div>
<div class="MsoNormal">
Шаблон макета BlankActivity, который мы выбрали на прошлом
уроке для нашего приложения, включает файл activity_main.xml с корневой вьюшкой
<a href="http://developer.android.com/reference/android/widget/RelativeLayout.html">RelativeLayou</a>t
и дочерней <a href="http://developer.android.com/reference/android/widget/TextView.html">TextView</a>.
<o:p></o:p></div>
<div class="MsoNormal">
Сначала удалим элемент <a href="http://developer.android.com/reference/android/widget/TextView.html">TextView</a>
и заменим элемент <a href="http://developer.android.com/reference/android/widget/RelativeLayout.html">RelativeLayou</a>t
на <a href="http://developer.android.com/reference/android/widget/LinearLayout.html"><LinearLayout></a>.
Потом добавим атрибут <a href="http://developer.android.com/reference/android/widget/LinearLayout.html#attr_android:orientation">android:orientation</a>,
установив ему значение horizontal. Другие атрибуты - ширина и высота – обязательны для всех
вьюшек. В результате должно получиться: <o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><?</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">xml version</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"1.0"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> encoding</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"utf-8"</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">?></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><LinearLayout</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">xmlns:android</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"http://schemas.android.com/apk/res/android"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">xmlns:tools</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"http://schemas.android.com/tools"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_width</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"match_parent"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_height</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"match_parent"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:orientation</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"horizontal"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></LinearLayout><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
Мы установили для
размеров значения <code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin;">"match_parent", </span></code>то есть «вычислить
по размеру родителя». А поскольку LinearLayout – корневой объект макета, то родитель
для него – само приложение и он заполнит всю область экрана, доступную
программе. <o:p></o:p></div>
<div class="MsoNormal" style="background: #FFF2CC; mso-background-themecolor: accent4; mso-background-themetint: 51; text-indent: 35.4pt;">
<span style="color: #333333; font-family: "Arial","sans-serif";">Теория: Что такое макет (</span><a href="http://developer.android.com/guide/topics/ui/declaring-layout.html#load">http://developer.android.com/guide/topics/ui/declaring-layout.html#load</a>)
– (переведено не полностью, до раздела «Атрибуты»)<span style="color: #333333; font-family: "Arial","sans-serif";"><o:p></o:p></span></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
Макет – это описание структуры
пользовательского интерфейса программы. Макет можно описать 2-мя способами: в <span lang="EN-US">XML</span>-файле или в тексте
программы. Рекомендуется о<span style="color: #222222; font-size: 10.0pt; line-height: 107%;">писание макета интерфейса в XML, так как это позволяет отделить
управление поведением (код) от интерфейса, а также полезно для </span><span style="color: #222222;">подстройки интерфейса под размер экрана устройства.</span> <span style="color: #222222;">Например, вы можете создать несколько версий макета и
указать системе использовать один на «малых», а другой - на «больших» экранах,
при различных ориентациях экрана, для разных языков. Также затем можно
изменять интерфейс без перекомпиляции программы. </span>Можно сочетать эти 2
метода описания макета: значения по умолчанию задать в <span lang="EN-US">XML</span>,
а в программе изменить их во время выполнения. <span style="color: #222222;">Подробнее
см. о </span><span style="color: #222222; mso-fareast-font-family: "Times New Roman";">поддержке различных типах </span><span style="color: #222222; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman";">устройств </span><span style="color: #222222; font-size: 10.0pt; line-height: 107%;">(</span><a href="http://developer.android.com/training/basics/supporting-devices/index.html">http://developer.android.com/training/basics/supporting-devices/index.html</a><span style="color: #222222; font-size: 10.0pt; line-height: 107%;">).<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
<span style="color: #222222; font-size: 10.0pt; line-height: 107%;"><br /></span></div>
<div class="MsoNormal" style="background: #FFF2CC; mso-background-themecolor: accent4; mso-background-themetint: 51; text-indent: 35.4pt;">
<b><span style="color: #333333; font-family: "Arial","sans-serif";">Чем</span><span style="color: #333333; font-family: "Arial","sans-serif"; mso-ansi-language: EN-US;"> </span><span style="color: #333333; font-family: "Arial","sans-serif";">отличаются</span><span style="color: #333333; font-family: "Arial","sans-serif"; mso-ansi-language: EN-US;"> </span><a href="http://developer.android.com/reference/android/widget/RelativeLayout.html"><span style="color: #333333; font-family: "Arial","sans-serif"; text-decoration: none; text-underline: none;">RelativeLayou</span></a><span style="color: #333333; font-family: "Arial","sans-serif";">t и LinearLayout</span></b><span lang="EN-US"><o:p></o:p></span></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
<a href="http://developer.android.com/reference/android/widget/RelativeLayout.html"><b><span style="background: #F9F9F9; color: #5b9bd5; font-size: 9.5pt; line-height: 107%; mso-themecolor: accent1;">RelativeLayou</span></b></a><b><span lang="EN-US" style="color: #5b9bd5; mso-ansi-language: EN-US; mso-themecolor: accent1;">t</span><span lang="EN-US" style="color: #5b9bd5; mso-themecolor: accent1;"> </span></b>- макет, где позиции
дочерних объектов могут быть описаны по отношению друг к другу или к
родительскому объекту. Не допустимы циклические зависимости объектов. <br />
<b><span style="color: #5b9bd5; mso-themecolor: accent1;">LinearLayout </span></b>– макет, в котором дочерние объекты
укладываются в одну строку или в один столбец (по умолчанию – горизонально),
последовательно в порядке их описания в <span lang="EN-US">XML</span>. Можно задать поля и выравнивание (вправо, влево и по центру)
для всех или каждого дочернего объекта. Направление можно установить атрибутом <span lang="EN-US">Orientation</span>. <o:p></o:p></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
<a href="http://developer.android.com/guide/topics/ui/declaring-layout.html#CommonLayouts">http://developer.android.com/guide/topics/ui/declaring-layout.html#CommonLayouts</a>
– подробнее о разных макетах.<o:p></o:p></div>
<h2 style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
Структура
<span lang="EN-US">XML</span>-файла описания макета</h2>
<span style="background-color: #fff2cc;">Каждый файл макета должен содержать только один корневой элемент, который должен быть объектом View или ViewGroup. После того как вы определили корневой элемент, можно добавить дополнительные объекты в качестве дочерних элементов, чтобы постепенно получилась иерархия View. Например, вот XML макет, который использует вертикальный линейный шаблон (<a href="http://developer.android.com/reference/android/widget/LinearLayout.html">LinearLayout</a>) и выводит текстовое поле и кнопку:</span><br />
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
<o:p></o:p></div>
<div style="background: #EDEDED; border: solid #DDDDDD 1.0pt; margin-left: 35.4pt; margin-right: 0cm; mso-background-themecolor: accent3; mso-background-themetint: 51; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<pre style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;"><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"><?</span></span><span class="pln"><span lang="EN-US">xml version</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="str"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"1.0"</span></span><span class="pln"><span lang="EN-US"> encoding</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="str"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"utf-8"</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">?></span></span><span lang="EN-US">
</span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;"><LinearLayout</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">xmlns:android</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"http://schemas.android.com/apk/res/android"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_width</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"fill_parent"</span></span><span class="pln"><span lang="EN-US"> </span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_height</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"fill_parent"</span></span><span class="pln"><span lang="EN-US"> </span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:orientation</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"vertical"</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">></span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;"><TextView</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:id</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"@+id/text"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_width</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"wrap_content"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_height</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"wrap_content"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:text</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"Hello, I am a TextView"</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">/></span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;"><Button</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:id</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"@+id/button"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_width</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"wrap_content"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_height</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"wrap_content"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:text</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"Hello, I am a Button"</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">/></span></span><span lang="EN-US">
</span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;"></LinearLayout><o:p></o:p></span></span></pre>
</div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
<span class="tag">После описания макета надо
сохранить файл с расширением </span><span style="background-position: initial initial; background-repeat: initial initial; color: #006600; font-family: 'Courier New'; font-size: 9.5pt; line-height: 107%;">.xml
</span>в папке проекта res/layout/. <o:p></o:p></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
<b>Загрузка </b><b><span lang="EN-US" style="background-position: initial initial; background-repeat: initial initial;">XML</span><span style="background-position: initial initial; background-repeat: initial initial;">-ресурсов.</span></b><span style="background-position: initial initial; background-repeat: initial initial;"> После компиляции программы каждый </span><span lang="EN-US" style="background-position: initial initial; background-repeat: initial initial;">XML</span><span style="background-position: initial initial; background-repeat: initial initial;">-файл макета
становится ресурсом </span><span lang="EN-US" style="background-position: initial initial; background-repeat: initial initial;">VIEW</span><span style="background-position: initial initial; background-repeat: initial initial;">. Вы должны загрузить его в вашем коде с помощью метода обратного вызова (</span><span lang="EN-US" style="background-position: initial initial; background-repeat: initial initial;">callback</span><span style="background-position: initial initial; background-repeat: initial initial;">) </span><a href="http://developer.android.com/reference/android/app/Activity.html#onCreate(android.os.Bundle)"><span style="background-position: initial initial; background-repeat: initial initial; color: #258aaf;">Activity.onCreate()</span></a><code><span style="background-position: initial initial; background-repeat: initial initial; color: #006600; font-size: 10pt; line-height: 107%;">.</span></code><code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></code>Делайте
это при вызове <a href="http://developer.android.com/reference/android/app/Activity.html#setContentView(int)"><span style="color: windowtext; text-decoration: none; text-underline: none;">setContentView()</span></a>,
передавая ему ссылку на ресурс макета :<code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></code><span style="background: #C9D7F1; color: #006600; font-family: "Courier New"; font-size: 9.5pt; line-height: 107%;">.R.layout<span class="apple-converted-space"> </span><em>layout_file_name</em></span>.
Например, пусть ваш файл имеет имя <span style="background: #C9D7F1; color: #006600; font-family: "Courier New"; font-size: 9.5pt; line-height: 107%;">main_layout.xml. </span>Для его загрузки используйте код:<o:p></o:p></div>
<div style="background: #EDEDED; border: solid #DDDDDD 1.0pt; margin-left: 35.4pt; margin-right: 0cm; mso-background-themecolor: accent3; mso-background-themetint: 51; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<pre style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;"><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">public</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">void</span></span><span class="pln"><span lang="EN-US"> onCreate</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">Bundle</span></span><span class="pln"><span lang="EN-US"> savedInstanceState</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">)</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">{</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">super</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">onCreate</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="pln"><span lang="EN-US">savedInstanceState</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">);</span></span><span lang="EN-US">
<span class="pln"> setContentView</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="pln"><span lang="EN-US">R</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">layout</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">main_layout</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">);</span></span><span lang="EN-US">
</span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">}</span></span></pre>
</div>
<div class="MsoNormal">
<b>.... Продолжим упражнения
урока<o:p></o:p></b></div>
<h3 style="text-align: left;">
Добавим текстовое поле</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Чтобы создать элемент, позволяющий пользователю вводить
текст, добавим на макет элемент <a href="http://developer.android.com/reference/android/widget/EditText.html"><span style="background: #F9F9F9; color: #258aaf;"><EditText></span></a><code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></code>и
определим его свойства в XML-файле внутри элемента <a href="http://developer.android.com/reference/android/widget/LinearLayout.html"><span style="background: #F9F9F9; color: #258aaf;"><LinearLayout></span></a>:<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><EditText</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:id</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"@+id/edit_message"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_width</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"wrap_content"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_height</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"wrap_content"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:hint</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"@string/edit_message"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">/></span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
Рассмотрим его атрибуты. <o:p></o:p></div>
<div class="MsoNormal">
<a href="http://developer.android.com/reference/android/view/View.html#attr_android:id">android:id</a>
– уникальный идентификатор, используемый для ссылки на объект в коде программы,
знак @ нужен, когда вы из xml-файла ссылаетесь на любой ресурс; затем идет тип
ресурса (ID), косая черта и имя ресурса ( edit_message ). <o:p></o:p></div>
<div class="MsoNormal">
Знак + перед типом нужен только <i><u>в первый раз</u></i> при описании нового типа ресурса. При компиляции имя ресурса будет использовано
для создания нового идентификатора в файле GEN / R.java. После этого остальные
ссылки на этот ресурс пишутся без плюса.<span class="apple-converted-space"><span style="background: #C9D7F1; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;"> (см. ниже - ТЕОРИЯ: РЕСУРСЫ ).</span></span><o:p></o:p></div>
<div class="MsoNormal">
<a href="http://developer.android.com/reference/android/view/View.html#attr_android:layout_width">Android:
layout_width</a> и <a href="http://developer.android.com/reference/android/view/View.html#attr_android:layout_height">Android:
layout_height</a> – мы не пишем конкретные размеры в мм, а используем значение
wrap_content, которое указывает, что размер элемента подстраивается под размер
его содержимого. Если бы мы указали значение "match_parent", то
элемент стремился бы заполнить все свободное место на экране, так как родитель
его - <a href="http://developer.android.com/reference/android/widget/LinearLayout.html">LinearLayout</a>.<o:p></o:p></div>
<div class="MsoNormal">
<span style="color: #0070c0;">android:hint </span>– этот
атрибут описывает значение текстового поля по умолчанию, пока пользователь не
ввел текст. Мы не стали писать
конкретный текст прямо в коде, а сделали ссылку на ресурс, где и будет храниться наша текстовая
строка. Поскольку тут ссылка не на идентификатор, а на конкретный ресурс, то
знак + не пишем. Так как мы еще этот ресурс не описали, то компилятор выдаст
ошибку, но мы ее исправим в следующем разделе.<o:p></o:p></div>
<div class="MsoNormal">
Примечание: этот строковый ресурс имеет имя, совпадающее с
идентификатором элемента (edit_message). Но так как типы ресурсов разные
(строка и <span lang="EN-US">ID</span>), то
проблемы не будет.<o:p></o:p></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
</div>
<h2 style="text-align: left;">
<span class="apple-converted-space"><span style="background-color: #fff2cc; color: #222222; font-family: Arial, sans-serif; line-height: 107%;"><span style="font-size: small;"> ТЕОРИЯ: РЕСУРСЫ. </span></span></span></h2>
<br />
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
Объект типа «ресурс» - это просто уникальный числовой
идентификатор, ссылка на ресурс программы, например, - рисунок, текстовую
строку или файл макета. Каждому ресурсу в
программе соответствует <i>объект ресурса</i>,
описываемый в проекте в файле <span style="background: #C9D7F1; color: #006600; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%;">GEN / R.java. </span>Имена
объектов из класса R можно использовать для ссылок на конкретные ресурсы,
например, указать, где находится текст значения по умолчанию (<span style="background: white; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.0pt; line-height: 107%;">android:hint)</span>.<o:p></o:p></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
Также можно создать произвольные
идентификаторы ресурсов для видимых элементов с атрибутом (<span lang="EN-US">Android</span>:<span lang="EN-US">ID</span>), которые позволяют ссылаться на эти
элементы из другого кода.<o:p></o:p></div>
<div class="MsoNormal" style="background: #FFF2CC; margin-left: 35.4pt; mso-background-themecolor: accent4; mso-background-themetint: 51;">
Никогда не изменяйте вручную файл <span style="background: #C9D7F1; color: #006600; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%;">R.java! </span>Он создается автоматически при компиляции
программы. Подробнее о ресурсах и их размещении - <a href="http://developer.android.com/guide/topics/resources/providing-resources.html">http://developer.android.com/guide/topics/resources/providing-resources.html</a><o:p></o:p></div>
<h3 style="text-align: left;">
Добавим строковый ресурс</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Когда вам надо в интерфейсе показать некий текст, то всегда
определяйте каждый текст как строковый ресурс. Строковые ресурсы
позволяют вам сосредоточить все надписи в интерфейсе программы в одном месте,
поэтому их проще искать и изменять. Особенно это полезно при переводе
интерфейса на несколько языков, когда
каждый текстовый ресурс может иметь альтернативные описания.<o:p></o:p></div>
<div class="MsoNormal">
По умолчанию в проекте строковые ресурсы находятся в файле
res/values/strings.xml. Добавим новую строку под именем
"edit_message" и установим ей значение "Enter a message."
Кстати, строку "hello_world" можно удалить.<o:p></o:p></div>
<div class="MsoNormal">
Заодно добавим строку под именем "button_send" со
значением "Send" для надписи на кнопке.<o:p></o:p></div>
<div class="MsoNormal">
В результате файл <span style="background: #F9F9F9;">strings.xml
должен выглядеть так:<o:p></o:p></span></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><?</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">xml version</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"1.0"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> encoding</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"utf-8"</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">?></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><resources></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><string</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">name</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"app_name"</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">My First App</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></string></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><string</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">name</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"edit_message"</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">Enter a message</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></string></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><string</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">name</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"button_send"</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">Send</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></string></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><string</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">name</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"action_settings"</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">Settings</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></string></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><string</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">name</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"title_activity_main"</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">MainActivity</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></string></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></resources></span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
Попробуйте ввести русские значения строк: «Введите
сообщение» и «Послать». Имена ресурсов не изменяем! <o:p></o:p></div>
<div class="MsoNormal">
Тут сведения о том, как правильно строковые ресурсы
использовать для многоязычных приложений (<a href="http://developer.android.com/training/basics/supporting-devices/index.html">http://developer.android.com/training/basics/supporting-devices/index.html</a>
)<o:p></o:p></div>
<h3 style="text-align: left;">
Добавим кнопку</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Сразу после текстового поля добавим в макет элемент КНОПКА:<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><Button</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_width</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"wrap_content"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_height</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"wrap_content"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:text</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"@string/button_send"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">/></span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
Размеры кнопки установлены в "wrap_content" ,
чтобы кнопка подстраивалась под длину надписи на ней. Кнопке не нужен атрибут
<a href="http://developer.android.com/reference/android/view/View.html#attr_android:id">Android:
ID</a> , потому что на нее из кода активности не будет ссылок.<o:p></o:p></div>
<h3 style="text-align: left;">
Сделаем текстовое поле шириной во весь экран</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Пока что размеры наших элементов такие, что им требуется
минимальное место на экране <a href="http://developer.android.com/images/training/firstapp/edittext_wrap.png">(рис.). </a><o:p></o:p></div>
<br />
<div class="MsoNormal">
Для кнопки – это нормально, но для текстового поля – плохо,
если пользователь захочет ввести что-то подлиннее. Можно неиспользованную
ширину экрана перераспределить в пользу текстового поля. Для этого применяют
атрибут <span class="apple-converted-space"><span style="background: white; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.0pt; line-height: 107%;"> </span></span><span style="background: white; color: #0070c0; font-family: "Arial","sans-serif"; font-size: 10.0pt; line-height: 107%;">
android:layout_weight. (вес элемента).</span><span style="color: #0070c0;"><o:p></o:p></span></div>
<div class="MsoNormal">
Вес элемента – это число, которое определяет какую долю
свободного места на экране должен занять элемент по отношению к другим
элементам этого же уровня иерархии. Чем больше вес – тем пропорционально больше
места занимает элемент. Это аналогично описанию рецепта: две части водки и 1
часть ликера. То есть в напитке – 2/3 водки. <o:p></o:p></div>
<div class="MsoNormal">
По умолчанию все веса =0. Если задать вес>0 только для
одного элемента, то он заполнит все свободное место, оставленное другими
элементами. Если вес каких-то элементов
не задан, то они занимают только минимально необходимое место, а остальная ширина окна делится между
элементами с заданным весом>0 пропорционально значению веса. <o:p></o:p></div>
<div class="MsoNormal">
Таким образом, чтобы текстовое поле заняло все оставшееся от
кнопки место, придадим ему вес 1. Одновременно
при этом для повышения эффективности программы лучше задать ширину текстового
поля =0 (<span lang="EN-US">ODP</span>), так как прежнее
значение "<span lang="EN-US">wrap</span>_<span lang="EN-US">content</span>" требует от
программы рассчитывать ширину родительского окна, которая тут не нужна: ведь
применение веса заставляет программу рассчитывать ширину окна по другому
алгоритму.<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; margin-left: 45.8pt; margin-right: 0cm; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><EditText <br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Android: layout_weight </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">= </span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"1" <br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Android: layout_width </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">= </span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"0DP" <br />
</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> ... </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">/></span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
Результат показан<a href="http://developer.android.com/images/training/firstapp/edittext_gravity.png"> на рисунке:</a><o:p></o:p></div>
<div class="MsoNormal">
В итоге всех изменений текст макета имеет вид:</div>
<div class="MsoNormal">
<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><?</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">xml version</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"1.0"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> encoding</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"utf-8"</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">?></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><LinearLayout</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">xmlns:android</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"http://schemas.android.com/apk/res/android"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">xmlns:tools</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"http://schemas.android.com/tools"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_width</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"match_parent"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_height</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"match_parent"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:orientation</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"horizontal"</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><EditText</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:id</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"@+id/edit_message"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_weight</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"1"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_width</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"0dp"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_height</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"wrap_content"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:hint</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"@string/edit_message"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">/></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><Button</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_width</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"wrap_content"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:layout_height</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"wrap_content"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:text</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"@string/button_send"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">/></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></LinearLayout></span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
Этот макет будет применен к классу <span lang="EN-US">Activity</span>, который был автоматически
сгенерирован во время создания нового
проекта. <o:p></o:p></div>
<div class="MsoNormal">
Теперь можно запустить программу, чтобы посмотреть
результат. В <b>Эклипсе нажмите кнопку </b><b><span lang="EN-US">Run</span>. <o:p></o:p></b></div>
<h3 style="text-align: left;">
<b>Приложение с двумя </b><b><span lang="EN-US">Activity</span><o:p></o:p></b></h3>
<div class="MsoNormal">
Добавим код, который загрузит вторую активность, когда
пользователь щелкнет по кнопке.<o:p></o:p></div>
<h3 style="text-align: left;">
Ответ на событие кнопки</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
<span style="color: #222222; font-family: "Arial","sans-serif";">Откройте</span><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><span style="color: #222222; font-family: "Arial","sans-serif";">файл макета </span><code><span style="color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">activity_main.xml</span></code><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><span style="color: #222222; font-family: "Arial","sans-serif";"> и добавьте к кнопке атрибут </span><a href="http://developer.android.com/reference/android/view/View.html#attr_android:onClick"><code><span style="color: #258aaf; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; text-decoration: none; text-underline: none;">Android:OnClick</span></code></a><code><span style="color: #258aaf; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">.</span></code> Значение
этого атрибута – это имя метода, который будет
вызван при щелчке по кнопке.<o:p></o:p></div>
<div style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 11.25pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm;">
<br /></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<pre style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;"><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;"><Button</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_width</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"wrap_content"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:layout_height</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"wrap_content"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:text</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"@string/button_send"</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="atn"><span lang="EN-US" style="color: #882288; mso-ansi-language: EN-US;">android:onClick</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"sendMessage"</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="tag"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">/></span></span><span lang="EN-US" style="color: #006600; mso-ansi-language: EN-US;"><o:p></o:p></span></pre>
</div>
<div class="MsoNormal">
Откройте класс <span style="background: #F9F9F9; color: #006600; font-family: "Courier New"; font-size: 9.5pt; line-height: 107%;">MainActivity </span>(он
находится в папке проекта src/) и добавьте метод<span style="background: #F9F9F9; color: #006600; font-family: "Courier New"; font-size: 9.5pt; line-height: 107%;"> </span><span class="atv"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">sendMessage</span><span style="color: #008800;">:<o:p></o:p></span></span></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<pre style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;"><span class="com"><span lang="EN-US" style="color: #880000; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">/** Called when the user clicks the Send button */</span></span><span lang="EN-US">
</span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">public</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">void</span></span><span class="pln"><span lang="EN-US"> sendMessage</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">View</span></span><span class="pln"><span lang="EN-US"> view</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">)</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">{</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="com"><span lang="EN-US" style="color: #880000; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">// Do something in response to button</span></span><span lang="EN-US">
</span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">}</span></span><span lang="EN-US" style="color: #006600; mso-ansi-language: EN-US;"><o:p></o:p></span></pre>
</div>
<div class="MsoNormal">
Он требует импортировать класс <span lang="EN-US">View</span> – В Эклипсе нажмите <span class="apple-converted-space"><span lang="EN-US" style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%; mso-ansi-language: EN-US;"> </span></span><span lang="EN-US" style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%; mso-ansi-language: EN-US;">Ctrl</span><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;"> + </span><span lang="EN-US" style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%; mso-ansi-language: EN-US;">Shift</span><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;"> + </span><span lang="EN-US" style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%; mso-ansi-language: EN-US;">O</span><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;">. Обозначение метода должно точно совпадать!.</span> <o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<pre style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;"><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">import</span></span><span class="pln"><span lang="EN-US"> android</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">view</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">View</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">;</span></span><span lang="EN-US" style="color: #006600; mso-ansi-language: EN-US;"><o:p></o:p></span></pre>
</div>
<h3 style="text-align: left;">
Построение намерения (<span lang="EN-US">Intent</span>)</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Интент (намерение) – это объект, который связывает отдельные
компоненты, чаще всего он используется, чтобы начать новую <span lang="EN-US">Activity</span>. Также он может передавать
данные.<o:p></o:p></div>
<div class="MsoNormal">
Внутри метода <span lang="EN-US" style="background: #F9F9F9; color: #006600; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%; mso-ansi-language: EN-US;">SendMessage</span><span style="background: #F9F9F9; color: #006600; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%;">
() </span>создайте намерение<span style="background: #F9F9F9; color: #006600; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%;"> </span><code><span lang="EN-US" style="background: #C9D7F1; color: #006600; font-size: 10.0pt; line-height: 107%; mso-ansi-language: EN-US; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin;">DisplayMessageActivity</span></code><span class="apple-converted-space"><span lang="EN-US" style="background: #C9D7F1; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%; mso-ansi-language: EN-US;"> </span></span><span class="apple-converted-space"><span style="background: #C9D7F1; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;">:<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background: #E7E6E6; mso-background-themecolor: background2;">
<span lang="EN-US" style="background: white; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.0pt; line-height: 107%; mso-ansi-language: EN-US;">Intent intent =newIntent
(this,DisplayMessageActivity.class);</span><span lang="EN-US"><o:p></o:p></span></div>
<div class="MsoNormal">
Здесь используется 2 параметра: контекст <span lang="EN-US">this</span> и класс того компонента, к которому направлено намерение (здесь – та <span lang="EN-US">Activity</span>, которую надо запустить). В эклипсе
будет выдана ошибка, так как эта активность и ее класс еще не описаны, но пока не
обращаем на нее внимания.<o:p></o:p></div>
<div style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 11.25pt; margin-left: 0cm; margin-right: 0cm; margin-top: 0cm;">
В методе <span style="background: #C9D7F1; color: #006600; font-family: "Courier New"; font-size: 10.0pt;">SendMessage
()</span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">используйте</span><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><code><span style="color: #006600; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"><a href="http://developer.android.com/reference/android/app/Activity.html#findViewById(int)"><span style="color: #258aaf; font-family: "Times New Roman","serif"; font-size: 12.0pt; mso-fareast-font-family: "Times New Roman";">findViewById ()</span></a></span></code><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">, чтобы получить</span><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> значение элемента </span></span><a href="http://developer.android.com/reference/android/widget/EditText.html"><span style="color: #258aaf;">EditText</span></a><code><span style="color: #006600; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></code><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">и добавить его к намерению:<o:p></o:p></span></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<pre style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;"><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">Intent</span></span><span class="pln"><span lang="EN-US"> intent </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">new</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">Intent</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">this</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">,</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">DisplayMessageActivity</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US;">class</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">);</span></span><span lang="EN-US">
</span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">EditText</span></span><span class="pln"><span lang="EN-US"> editText </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">EditText</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">)</span></span><span class="pln"><span lang="EN-US"> findViewById</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="pln"><span lang="EN-US">R</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">id</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">edit_message</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">);</span></span><span lang="EN-US">
</span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">String</span></span><span class="pln"><span lang="EN-US"> message </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="pln"><span lang="EN-US"> editText</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">getText</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">().</span></span><span class="pln"><span lang="EN-US">toString</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">();</span></span><span lang="EN-US">
<span class="pln">intent</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">.</span></span><span class="pln"><span lang="EN-US">putExtra</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">(</span></span><span class="pln"><span lang="EN-US">EXTRA_MESSAGE</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">,</span></span><span class="pln"><span lang="EN-US"> message</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">);</span></span><span lang="EN-US" style="color: #006600; mso-ansi-language: EN-US;"><o:p></o:p></span></pre>
</div>
<div style="background: #F9F9F9; border-left: solid #258AAF 3.0pt; border: none; mso-element: para-border-div; padding: 0cm 0cm 0cm 8.0pt;">
<div class="note" style="background-position: initial initial; background-repeat: initial initial; border: none; line-height: 14.25pt; margin: 0cm 0cm 11.25pt; padding: 0cm;">
<strong><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">Примечание:</span></strong><span class="apple-converted-space"><span lang="EN-US" style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">Теперь нужно
импортировать эти команды в </span><code><span lang="EN-US" style="color: #006600; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">android</span></code><code><span style="color: #006600; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">.</span></code><code><span lang="EN-US" style="color: #006600; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">content</span></code><code><span style="color: #006600; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">.</span></code><code><span lang="EN-US" style="color: #006600; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">Intent</span></code><span class="apple-converted-space"><span lang="EN-US" style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">и</span><span class="apple-converted-space"><span lang="EN-US" style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><code><span lang="EN-US" style="color: #006600; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">android</span></code><code><span style="color: #006600; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">.</span></code><code><span lang="EN-US" style="color: #006600; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">widget</span></code><code><span style="color: #006600; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">.</span></code><code><span lang="EN-US" style="color: #006600; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">EditText</span></code><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">.</span><span class="apple-converted-space"><span lang="EN-US" style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">Одновременно </span></span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">определите</span><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> константу </span></span><code><span style="color: #006600; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">EXTRA_MESSAGE</span></code><span class="apple-converted-space"><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">.<o:p></o:p></span></div>
</div>
<div class="MsoNormal">
<a href="http://developer.android.com/reference/android/content/Intent.html">Намерение</a> может
нести собой набор данных различных типов, который называется EXTRAS, например,
пары ключ-значение. Метод <a href="http://developer.android.com/reference/android/content/Intent.html#putExtra(java.lang.String, android.os.Bundle)">PutExtra
()</a> принимает ключ в первый параметр и значение в качестве второго
параметра.<o:p></o:p></div>
<div class="MsoNormal">
Чтобы EXTRA-данные воспринялись следующей активностью, нужно
описать ключ данных Вашего Интента с помощью общей константы. Для этого
добавляем в начале текста класса MainActivity определение
EXTRA_MESSAGE:<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<pre style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;"><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">public</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">class</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">MainActivity</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">extends</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">Activity</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">{</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">public</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">final</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="kwd"><span lang="EN-US" style="color: #000088; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">static</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="typ"><span lang="EN-US" style="color: #660066; mso-ansi-language: EN-US;">String</span></span><span class="pln"><span lang="EN-US"> EXTRA_MESSAGE </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">=</span></span><span class="pln"><span lang="EN-US"> </span></span><span class="str"><span lang="EN-US" style="color: #008800; mso-ansi-language: EN-US;">"com.example.myfirstapp.MESSAGE"</span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">;</span></span><span lang="EN-US">
<span class="pln"> </span></span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">...</span></span><span lang="EN-US">
</span><span class="pun"><span lang="EN-US" style="color: #666600; mso-ansi-language: EN-US;">}</span></span><span lang="EN-US" style="color: #006600; mso-ansi-language: EN-US;"><o:p></o:p></span></pre>
</div>
<h3 style="text-align: left;">
Запуск второй активности</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Вызываем <a href="http://developer.android.com/reference/android/app/Activity.html#startActivity(android.content.Intent)">startActivity
()</a> и передаем ему наше намерение. Система выполняет вызов и запускает новый
экземпляр активности, определенной в этом намерении. Теперь полный текст кода
метода SendMessage () выглядит так:<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #880000; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">/** Called when
the user clicks the Send button */</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">public</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">void</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> sendMessage</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">View</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> view</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">)</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">{</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Intent</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> intent </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">new</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Intent</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">this</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">,</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">DisplayMessageActivity</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">class</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">EditText</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> editText </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">EditText</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">)</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> findViewById</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">R</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">id</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">edit_message</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">String</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> message </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> editText</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">getText</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">().</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">toString</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">();</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
intent</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">putExtra</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">EXTRA_MESSAGE</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">,</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> message</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
startActivity</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">intent</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">}</span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
<span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;">Теперь нужно создать<span class="apple-converted-space"> </span>класс </span><code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">DisplayMessageActivity</span></code><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;">, чтобы это заработало.<o:p></o:p></span></div>
<h3 style="text-align: left;">
<span style="background: #F9F9F9;">Создаем вторую активность:</span></h3>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 13.5pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo2; tab-stops: list 36.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: Arial; mso-fareast-language: RU;">1.<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;"> </span></span><!--[endif]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Нажмите кнопку NEW <b>Новый</b> на
панели инструментов.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 13.5pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo2; tab-stops: list 36.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: Arial; mso-fareast-language: RU;">2.<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;"> </span></span><!--[endif]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">В появившемся окне
откройте папку <b>Android </b>и выберите </span><strong><span style="background-position: initial initial; background-repeat: initial initial; color: #222222; font-family: Arial, sans-serif; font-size: 10.5pt;">Android Activity</span></strong><span style="background-position: initial initial; background-repeat: initial initial; color: #222222; font-family: Arial, sans-serif; font-size: 10.5pt;">.
Click<span class="apple-converted-space"> </span><strong><span style="font-family: "Arial","sans-serif";">Next</span></strong>.</span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 13.5pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo2; tab-stops: list 36.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: Arial; mso-fareast-language: RU;">3.<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;"> </span></span><!--[endif]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Выберите <b>BlankActivity</b> и
нажмите кнопку <b>Следующее</b> .<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 13.5pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo2; tab-stops: list 36.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: Arial; mso-fareast-language: RU;">4.<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;"> </span></span><!--[endif]--><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Заполните подробности
<a href="http://developer.android.com/images/training/firstapp/adt-new-activity.png">(см.рис):</a><o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 27.0pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level2 lfo2; tab-stops: list 72.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Courier New"; font-size: 10.0pt; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: "Courier New"; mso-fareast-language: RU;">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Проект</span></b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> : MyFirstApp<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 27.0pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level2 lfo2; tab-stops: list 72.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Courier New"; font-size: 10.0pt; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: "Courier New"; mso-fareast-language: RU;">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Название деятельности</span></b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> :
DisplayMessageActivity<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 27.0pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level2 lfo2; tab-stops: list 72.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Courier New"; font-size: 10.0pt; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: "Courier New"; mso-fareast-language: RU;">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Имя макета</span></b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> : activity_display_message<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 27.0pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level2 lfo2; tab-stops: list 72.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Courier New"; font-size: 10.0pt; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: "Courier New"; mso-fareast-language: RU;">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Название</span></b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> : </span><span style="background-position: initial initial; background-repeat: initial initial; color: #222222; font-family: Arial, sans-serif; font-size: 10.5pt;">My
Message</span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 27.0pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level2 lfo2; tab-stops: list 72.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Courier New"; font-size: 10.0pt; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: "Courier New"; mso-fareast-language: RU;">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Иерархический Родитель</span></b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> : com.example.myfirstapp.MainActivity<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 27.0pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level2 lfo2; tab-stops: list 72.0pt; text-indent: -18.0pt;">
<!--[if !supportLists]--><span style="color: #222222; font-family: "Courier New"; font-size: 10.0pt; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: "Courier New"; mso-fareast-language: RU;">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Тип</span></b><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> <b> навигации</b>: </span><span style="background-position: initial initial; background-repeat: initial initial; color: #222222; font-family: Arial, sans-serif; font-size: 10.5pt;">None</span><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 13.5pt; margin-right: 0cm; margin-top: 3.75pt;">
<span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Нажмите </span><strong><span style="background-position: initial initial; background-repeat: initial initial; color: #222222; font-family: Arial, sans-serif; font-size: 10.5pt;">Finish</span></strong><span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 3.75pt; margin-left: 13.5pt; margin-right: 0cm; margin-top: 3.75pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">Откройте файл </span><span style="background: #F9F9F9;">DisplayMessageActivity.java. В эклипсе при создании активности:<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="background: #F9F9F9;">- класс уже включает вставку для
метода </span><span lang="EN-US" style="background: #F9F9F9; mso-ansi-language: EN-US;">onCreate</span><span style="background: #F9F9F9;">()<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
- также там есть заготовка метода<span style="background: #F9F9F9; color: #006600; font-family: "Courier New"; font-size: 10.0pt;"> </span><a href="http://developer.android.com/reference/android/app/Activity.html#onCreateOptionsMenu(android.view.Menu)"><span style="background: #F9F9F9; color: #258aaf;">onCreateOptionsMenu()</span></a>, но
он нам тут не нужен, его можно удалить,<o:p></o:p></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
- оставьте на месте заготовку метода <a href="http://developer.android.com/reference/android/app/Activity.html#onOptionsItemSelected(android.view.MenuItem)"><span style="background: #F9F9F9; color: #258aaf;">onOptionsItemSelected()</span></a><span class="apple-converted-space"><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">, который обрабатывает событие </span></span><span class="apple-converted-space"><span lang="EN-US" style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-ansi-language: EN-US;">UP</span></span><span class="apple-converted-space"><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;"> панели действий (</span></span><span class="apple-converted-space"><span lang="EN-US" style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-ansi-language: EN-US;">ActionBar</span></span><span class="apple-converted-space"><span lang="EN-US" style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;"> </span></span><span class="apple-converted-space"><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;">– панель в верхней части окна активности).</span></span><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0.0001pt 35.45pt;">
Поскольку элементы <a href="http://developer.android.com/reference/android/app/ActionBar.html">ActionBar</a>
доступны только на <a href="http://developer.android.com/reference/android/os/Build.VERSION_CODES.html#HONEYCOMB">HONEYCOMB</a> и
выше (начиная с Андроид 11), необходимо добавить условие вокруг метода <a href="http://developer.android.com/reference/android/app/Activity.html#getActionBar()">getActionBar ()</a> для проверки текущей версии платформы. Кроме того, необходимо
добавить тег @ SuppressLint
("NewApi") в метод <a href="http://developer.android.com/reference/android/app/Activity.html#onCreate(android.os.Bundle)">OnCreate
()</a>, чтобы избежать ошибок при компиляции.<o:p></o:p></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0.0001pt 35.45pt;">
Класс
DisplayMessageActivity будет выглядеть так:<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">public</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">class</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">DisplayMessageActivity</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">extends</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Activity</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">{</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
<br />
</span><span lang="EN-US" style="color: #006666; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">@SuppressLint</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"NewApi"</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">)</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #006666; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">@Override</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">protected</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">void</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> onCreate</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Bundle</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> savedInstanceState</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">)</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">{</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">super</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">onCreate</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">savedInstanceState</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
setContentView</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">R</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">layout</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">activity_display_message</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
<br />
</span><span lang="EN-US" style="color: #880000; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">// Make sure we're running on
Honeycomb or higher to use ActionBar APIs</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">if</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Build</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">VERSION</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">SDK_INT </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">>=</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Build</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">VERSION_CODES</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">HONEYCOMB</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">)</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">{</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #880000; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">// Show the Up
button in the action bar.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
getActionBar</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">().</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">setDisplayHomeAsUpEnabled</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">true</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">}</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">}</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
<br />
</span><span lang="EN-US" style="color: #006666; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">@Override</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">public</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">boolean</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> onOptionsItemSelected</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">MenuItem</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> item</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">)</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">{</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">switch</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">item</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">getItemId</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">())</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">{</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">case</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> android</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">R</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">id</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">home</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">:</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">NavUtils</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">navigateUpFromSameTask</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">this</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">return</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">true</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">;</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">}</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">return</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">super</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">onOptionsItemSelected</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">item</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">}</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">}</span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
В Эклипс обновите класс DisplayMessageActivity кодом,
показанным выше.<o:p></o:p></div>
<h3 style="text-align: left;">
<span style="background-color: white; background-position: initial initial; background-repeat: initial initial; color: #333333; font-family: Arial, sans-serif;">Редактирование файла манифеста</span></h3>
<div class="MsoNormal">
Все <span lang="EN-US">Activity</span>
должны быть объявлены в файле манифеста <span class="apple-converted-space"><span style="background: #C9D7F1; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;"> </span></span><code><span style="background: #C9D7F1; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">AndroidManifest.xml
</span></code>с помощью элемента <code><span style="background: #C9D7F1; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"><</span></code><span lang="EN-US">Activity</span>>. Эклипс сам
создает этот элемент при создании новой Активити, а при использовании другой
оболочки его надо добавлять вручную. Примерный вид манифеста<span lang="EN-US">:<o:p></o:p></span></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><application</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> ... </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
...<br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><activity</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:name</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"com.example.myfirstapp.DisplayMessageActivity"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:label</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"@string/title_activity_display_message"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:parentActivityName</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"com.example.myfirstapp.MainActivity"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><meta-data</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:name</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"android.support.PARENT_ACTIVITY"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android:value</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="color: #008800; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">"com.example.myfirstapp.MainActivity"</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">/></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></activity></span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"></application></span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal" style="margin-left: 13.5pt;">
<b>Примечание</b>: Здесь атрибут <span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">android</span><span style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">:</span><span lang="EN-US" style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">parentActivityName</span><span style="color: #882288; font-family: "Courier New"; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> – </span>имя родительской активности, которое
используется в Андроид 4.1 и выше для навигации по приложению. В более старых
системах можно использовать библиотеку <span lang="EN-US">android</span>.<span lang="EN-US">s</span><span style="background: white; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.0pt; line-height: 107%;">upport, и для этого добавляется элемент </span><a href="http://developer.android.com/guide/topics/manifest/meta-data-element.html"><code><span style="background: #C9D7F1; color: #258aaf; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; text-decoration: none; text-underline: none;"><meta-data></span></code></a>,
как показано в примере. Эту библиотеку надо специально установить, если вы не
применяете <span lang="EN-US">ADT</span><span lang="EN-US"> </span><span lang="EN-US">Bundle</span>,
на шаге добавления платформ и пакетов.<o:p></o:p></div>
<div class="MsoNormal">
Теперь в Эклипсе можно запустить программу на выполнение:
после нажатия кнопки должна открываться новая активность все с тем же приветом
по умолчанию «<span lang="EN-US">Hello</span><span lang="EN-US"> </span><span lang="EN-US">world</span>».<o:p></o:p></div>
<h3 style="text-align: left;">
Получение намерения</h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Каждая активность
вызывается Интентом (намерением). Вы можете получить
имя и данные того интента, который запустил текущую активность. Для этого есть метод
<a href="http://developer.android.com/reference/android/app/Activity.html#getIntent()">getIntent
()</a>: вставьте в метод <a href="http://developer.android.com/reference/android/app/Activity.html#onCreate(android.os.Bundle)">OnCreate
()</a> класса DisplayMessageActivity команды:<o:p></o:p></div>
<div class="MsoNormal" style="background-color: #deeaf6; background-position: initial initial; background-repeat: initial initial; margin: 0cm 0cm 0.0001pt 13.6pt; text-indent: 21.8pt;">
<span lang="EN-US" style="background: white; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.0pt; mso-ansi-language: EN-US;">Intent intent =
getIntent();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: #deeaf6; background-position: initial initial; background-repeat: initial initial; margin: 0cm 0cm 0.0001pt 13.6pt; text-indent: 21.8pt;">
<span lang="EN-US" style="background: white; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.0pt; mso-ansi-language: EN-US;">String message =
intent.getStringExtra(MainActivity.EXTRA_MESSAGE);</span><span lang="EN-US"><o:p></o:p></span></div>
<h3 style="text-align: left;">
<span lang="EN-US" style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"> </span><span style="background-color: transparent;">Вывод сообщения на экран</span></h3>
<h2>
<o:p></o:p></h2>
<div class="MsoNormal">
Создадим виджет <span class="apple-converted-space"><span style="background: #F9F9F9; color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; line-height: 107%;"> </span></span><code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"><a href="http://developer.android.com/reference/android/widget/TextView.html"><span style="color: #258aaf; font-family: "Calibri","sans-serif"; font-size: 11.0pt; line-height: 107%; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;">TextView</span></a> </span></code>и
зададим текст сообщения с помощью<code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;"> </span></code><a href="http://developer.android.com/reference/android/widget/TextView.html#setText(char[], int, int)"><span style="background: #F9F9F9; color: #258aaf;">setText()</span></a>. Потом добавим
его как корневой элемент в макет активности с помощью обращения к методу<a href="http://developer.android.com/reference/android/app/Activity.html#setContentView(android.view.View)"><span style="background: #F9F9F9; color: #258aaf;">setContentView()</span></a><code><span style="background: #F9F9F9; color: #006600; font-size: 10.0pt; line-height: 107%; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast;">. </span></code>После
этого метод <a href="http://developer.android.com/reference/android/app/Activity.html#onCreate(android.os.Bundle)">onCreate()</a> для
DisplayMessageActivity будет выглядеть следующим образом:<o:p></o:p></div>
<div style="background: #F7F7F7; border: solid #DDDDDD 1.0pt; mso-border-alt: solid #DDDDDD .75pt; mso-element: para-border-div; padding: 12.0pt 12.0pt 12.0pt 12.0pt;">
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; border: none; margin-bottom: 12pt; padding: 0cm;">
<span lang="EN-US" style="color: #006666; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">@Override</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">public</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">void</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> onCreate</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Bundle</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">
savedInstanceState</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">)</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">{</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">super</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">onCreate</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">savedInstanceState</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
<br />
</span><span lang="EN-US" style="color: #880000; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">// Get the message from the intent</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">Intent</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> intent </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> getIntent</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">();</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">String</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> message </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> intent</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">getStringExtra</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">MainActivity</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">EXTRA_MESSAGE</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
<br />
</span><span lang="EN-US" style="color: #880000; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">// Create the text view</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">TextView</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> textView </span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">=</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">new</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"> </span><span lang="EN-US" style="color: #660066; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">TextView</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #000088; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">this</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
textView</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">setTextSize</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="color: #006666; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">40</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
textView</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">.</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">setText</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">message</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
<br />
</span><span lang="EN-US" style="color: #880000; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">// Set the text view as the activity layout</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
setContentView</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">(</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;">textView</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">);</span><span lang="EN-US" style="font-family: 'Courier New'; font-size: 10pt;"><br />
</span><span lang="EN-US" style="color: #666600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;">}</span><span lang="EN-US" style="color: #006600; font-family: "Courier New"; font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: RU;"><o:p></o:p></span></div>
</div>
<div class="MsoNormal">
Можно теперь запустить программу. Когда она откроется,
введите какое-то сообщение в текстовое поле, нажмите кнопку Send, после чего во второй активности должно быть
выведено это сообщение. Итак, ваша первая программа готова!<o:p></o:p></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 11.25pt;">
<br /></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 11.25pt;">
<br /></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 11.25pt;">
<br /></div>
<div class="MsoNormal" style="background: #F9F9F9; line-height: 14.25pt; margin-bottom: 11.25pt;">
В заключение: прошу извинить за форматирование текста...</div>
</div>
Нинаhttp://www.blogger.com/profile/01218360324222039343noreply@blogger.com0