Домой / Инструкции / Как сделать собственное приложение. Как создать мобильное приложение для Аndroid самостоятельно. Запуск на устройстве

Как сделать собственное приложение. Как создать мобильное приложение для Аndroid самостоятельно. Запуск на устройстве

Google Play, App Store, Windows Store полны самыми разнообразнейшими приложениями. Неверно предположить, что все это ассорти создано профессионалами различных уровней. Все больше и больше обычных пользователей создают удобные и простые приложения, совсем не имея навыков программирования. Где и как последовать их примеру, мы подробно расскажем далее, выбрав для примера программы смартфонов на базе Android.

Кому будет полезно самостоятельно созданное приложение

Если вы решили создать Android-приложение без навыков программирования ради спортивного интереса, то можете смело переходить к разделу "Онлайн-конструкторы". Решившимся заняться этим делом для продвижения и популяризации своего бизнеса, творческого или делового проекта важно определить: достаточно ли им простого, созданного самостоятельно приложения или все же необходимо обратиться за помощью к опытным разработчикам.

Итак, когда оптимален данный вариант:

  • начинающему бизнесу или проекту: аудитория простит вам ряд недоработок, сославшись на вашу неопытность;
  • пользователям требуется приложение с простым функционалом - удобная версия сайта, к примеру;
  • пуск неудачного приложения не будет для вас болезненным - вы его создаете, работая на перспективу;
  • вы не хотите зависеть от запросов разработчиков.

Каким должно быть приложение

Перед тем как создать приложение для Android, необходимо наметить те ключевые моменты, на которые будете опираться в работе. Вы создаете программу, которая будет работать на смартфонах и планшетах, будет призвана решать практические задачи пользователя: знакомить его с новостями, помогать совершать покупки, осуществлять функции связи и т. д.

Аудиторию привлекают приложения, которые соответствуют перечисленным пунктам:

  • безопасность;
  • бесперебойное функционирование;
  • удобная навигация;
  • личный кабинет;
  • наличие push-уведомлений;
  • информативность - ответ на все свои запросы человек должен находить внутри приложения.

Выбор конструктора приложений

Так как мы создаем первое приложение для Android, не имея представления о языках программирования, то помочь нам в этом деле смогут онлайн-конструкторы. Перед выбором внимательно ознакомьтесь с его характеристиками. Он должен обладать:

  • интуитивным интерфейсом;
  • понятной логикой работы;
  • возможностью работы и с кодом, и с графикой;
  • подробными инструкциями, техподдержкой, форумом.

Конструктор обязательно должен обеспечивать хостинг приложения, давать вам возможность управлять им, а также публиковать свое творение в Google Play.

Десятка лучших онлайн-конструкторов

Тем, кто ищет, как создать приложение для Android без навыков, предлагается следующая линейка конструкторов, отвечающая всем перечисленным выше требованиям:

1. Mobile Roadie. Один из старейших сервисов, которым пользуется Мадонна, "Цирк Солнца", зоопарк Сан-Диего. Больше всего ориентирован на шоу-бизнес, маркетинговые и PR-агентства. Через созданные проекты можно продавать билеты, перепрофилировать их под конкретное событие. Цена за пользование конструктором не символична: минимум 149$.

2. AppsBuilder. Как создать приложение для Android здесь - достаточно собрать его из готовых шаблонов. Кроме этого, в конструктор добавлены возможности для программистов. Создание одного приложения в месяц обойдется здесь в 49 евро.

3. Viziapps. Конструктор также предлагает готовые шаблоны для вашего приложения, а также возможность отправки с него сообщений на электронную почту, в Twitter, Facebook. Цена минимального месячного пакета: 33$.

4. iBuildApp. Конструктор для тех, кто ищет, как создать простое приложение для Android - с его помощью делаются мобильные программы-каталоги, брошюры, резюме. Помимо английской, доступна и русская версия. За 2 400 рублей в месяц клиент получает возможность трех тысяч установок своего приложения без встроенной рекламы.

5. My-apps.com. Работает и в русской, и в английской версии. Для создания собственного приложения здесь требуется порядка пяти минут, ведь достаточно выбрать только необходимые модули и дизайн программы. Минимальный пакет "Старт" обойдется в 599 рублей в месяц. В сумму входит конструктор приложений только для "Андроида", бесплатные шаблоны и иконки, обновление программы не чаще раза в два месяца.

6. AppGlobus. Российский конструктор доступнен на 8 языках. За 900 рублей в месяц предоставляются: конструирование приложений, панель администратора, отсутствие в проекте встроенной рекламы и ограничений на использование push-уведомлений, количество установок.

7. Biznessapps. Для заинтересованных в том, как создать приложение для Android с нуля, чтобы оно работало на благо бизнеса, это оптимальный вариант: чат, уведомления, корзина для товаров, интеграция с социальными сетями, каталог услуг, раздел новостей. Минимальная плата за создание приложения: 59$ в месяц.

8. Appsmakerstore. Позволяет создавать приложения не только для "Андроида", но и еще для 5 платформ. Интерфейс на 23 языках, в т. ч. и на русском. Ключевая особенность конструктора: уже готовые шаблоны для различных проектов: торговли, салонов красоты, ресторанов и т. д. Месячное использование - 9,78$.

9. TheAppBuilder - бесплатный конструктор, предоставляющий готовые типовые шаблоны для бизнеса, творческих, новостных, спортивных, образовательных проектов. Но один минус - в приложении будет встроенная реклама. Отключить ее предлагается за 5$ в месяц.

10. AppsGeyser. Конструктор предлагает бесплатную конвертацию содержимого сайта в мобильное приложение. Свои творения возможно продавать, а также размещать в них собственную рекламу.

Теперь рассмотрим на примерах конкретных конструкторов создание собственного приложения.

Как создать приложение для Android: выбор шаблона в AppsGeyser

Для работы в этом конструкторе не требуется регистрация - достаточно кликнуть на главной странице на Creat now.

Создание приложения для блога в AppsGeyser

Итак, как создать мобильное приложение для Android самостоятельно блогеру:

  1. Выберите тип блога: RSS, "Тамблер", "Вордпресс" и т. д. Далее - его электронный адрес и цветовое решение для вашего будущего приложения.
  2. Теперь название создаваемой мобильной программы.
  3. В "Дискрипшн" поместите лаконичное и информативное описание приложения (хоть интерфейс на английском, вы можете вводить текст на кириллице).
  4. Выберите из предложенных вариантов логотип приложения или загрузите свой.
  5. Чтобы создать загрузочный файл своего проекта, следует нажать на Creat App. Для этого нужно обязательно пройти регистрацию в системе.
  6. В личном кабинете AppsGeyser вы можете загрузить свое творение на собственный смартфон, а также разместить его в магазине Google Play. Если вы активируете монетизацию, в приложении будет отображаться встроенная реклама, а вам за ее просмотры пользователями будет отсчитываться определенная плата.

В личном кабинете также можно следить за числом загрузок, редактировать приложение, создавать push-баннеры, публиковать проект в других магазинах.

Как создать приложение для Android формата "Гайд"

При помощи того же AppsGeyser возможно также создать приложение-инструкцию, руководство пользователя.

Делается это тоже в несколько простых шагов:

  1. Настройте цветовое решение мобильной программы и способ отображения шагов гайда: по одному или по несколько на активном экране.
  2. Редактор поможет загрузить вам необходимый текст, ссылки, видео или картинки, необходимые для наглядности. Для добавления фотографий воспользуйтесь хостингом Imgur. Скопируйте ссылку изображения на этом ресурсе в Image URL.
  3. В конце работы добавьте описание и логотип своего приложения, затем - клик на Creat App. Приложение создано - осталось проверить его работоспособность и выложить в Google Play.

Создание приложения для магазина

Разберем, как создать приложения для Android с нуля владельцам интернет-магазинов. Для примера будем использовать другой конструктор - Mobi Cart, специализирующийся на этой сфере. Сервис поддерживает русский язык, работает как в платном, так и в бесплатном режиме. Для последнего действует ограничение - добавление не более 10 товаров.

Итак, как создать приложение для Android:

  1. Первый пункт - регистрация. Далее в личном кабинете клик на Creat Application.
  2. Upload logo - загрузка логотипа вашего магазина. На этом этапе вы выбираете также цветовую тему приложения.
  3. Выбор вкладок, страниц, которые будут в вашем приложении: "Новости", "Мой кабинет", "Домашняя", "Магазин", "Контакты" и т. д.

Настройки магазина в Mobi Cart

Для настроек своего интернет-маркета кликните на Store Settings:

  1. Введите название, электронный адрес админа, валюту.
  2. Для использования "Гугл-карт" нужна регистрация ключа API - затем он копируется в окошко.
  3. Отметьте галочкой бесплатную доставку, если ваш магазин ее предлагает. Для наложенного платежа выберите размер наценки (если он равен, к примеру, 12 %, то в Cash On Delivery прописывается 1,12).
  4. В Shipping указывается стоимость доставки для определенного региона. Процесс этот трудоемкий, так как для каждого региона цена указывается вами вручную.
  5. В разделе Tax российские магазины указывают стоимость с включенным в нее НДС, поэтому отметьте галочкой здесь Prices to include tax.
  6. В Payments Gateway укажите платежные системы, с которыми вы работаете. Будьте внимательны - Mobi Cart не поддерживает популярные "Яндекс.Деньги".
  7. Languges - язык вашей мобильной программы. Русский не выставляется по умолчанию, поэтому вам необходимо прописать перевод предложенных команд вручную.
  8. App Vital - здесь указывается название программы и страны, жители которых смогут ее загружать.
  9. Images - логотип приложения, Home Gallery - картинка на главном экране.

Добавление информации о продукции в Mobi Cart

Следующий важный шаг: добавление линейки ваших продуктов в Store Builder. Это можно сделать любым удобным вам методом:

  • с помощью файла CSV, содержащего всю информацию об ассортименте;
  • используя плагин конструктора для синхронизации своего сайта с создаваемой программой;
  • ручной ввод информации в личном кабинете.

Для последнего способа используются два раздела: Departments и Products. Добавление осуществляется с помощью кнопки Add Product. Далее вводится его название, цена, категория, подробное описание.

Прочие полезные опции для магазина в Mobi Cart

Коснемся опций, которые могут оказаться полезны тому, кто интересуется, как создать приложение для Android самому:

  1. More Pages - информация, отображаемая на страничках программы.
  2. Push Notification - ручное создание push-уведомлений. Здесь можно выбрать отсылку как всем пользователям, так и определенным адресатам.
  3. News Tab - копирование новостей в одноименную вкладку из "Твиттера" или RSS-источников. Укажите здесь имя пользователя для первого и URL для второго.
  4. Publish News позволяет вам отправлять новости в приложение самостоятельно.

Перейдя в Create Application - Submit Apps, вы можете создать apk-файл (установочный), согласившись с лицензионным соглашением. При выборе платной версии ваше приложение автоматически загружается в Google Play, при бесплатной - вам предстоит это сделать самостоятельно через Play Console. Инструкции по регистрации в этой системе, а также по загрузке в нее собственного приложения Mobi Cart высылает вам на электронный почтовый ящик.

Таким образом, создание Android-приложения при помощи конструкторов данных мобильных программ - дело, с которым справится любой уверенный пользователь ПК. Ведь этот процесс на большинстве сервисов можно осуществить без знания даже начальных основ программирования.

В Google Play можно найти сотни приложений, позволяющих редактировать фотографии на любой вкус и цвет. Однако современное фотоискусство часто выходит за рамки привычного, заставляя человека взглянуть на мир совсем под другим углом. Именно для тех, кто не привык ограничивать себя лишь изменением цветовой гаммы, яркости и контраста мы подобрали десять необычных, но очень интересных приложений.

Всем пользователи Instagram хорошо знакомы оранжевые пиктограммы, означающие, что вас кто-то добавил в друзья, оценил фотографию или прокомментировал ее. Создатели Giddylizer решили развить эту тему и создали большую коллекцию стикеров, на которых изображены эмоции, объекты, жесты, флаги стран и многое другое.

Глитч - направление в музыке, видео и фотографии, в котором преобладают эффекты, вызванные ошибками и сбоями при цифровой записи звуков и изображений. Приложение Glitchr позволяет накладывать на фотографии такие ретро-фильтры, как ZX-Spectrum, NES, Gameboy, эффект помех VHS-пленки, 3D-анаглиф и другие. Все эти модификации значительно искажают оригинальное изображение, однако при правильной выбранной композиции и в умелых руках способны выдать интересный результат.

Blendpic: Blend Photo

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

Приложение D3LTA делает упор на геометрию, позволяя играть с формами, отражениями и преломлением объектов внутри фотографии. В распоряжении пользователя есть около 40 различных эффектов и геометричеких фигур, позволяющих преобразить свое фото до неузнаваемости.

Описание приложения, как и отзывы к нему, прекрасно описывают назначение Тленограм:

Тлен и безысходность. Теперь со светящимися глазами! Этот редактор фотографий поможет тебе показать всем тленность бытия всего за 3 простых шага:

1. Делаешь снимок или выбираешь изображение из галереи.
2. Добавляешь тлен одним из 12 безысходных фильтров. Интенсивность тлена регулируется по вкусу.
3. Загружаешь на свою стену ВКонтакте.

Установи тлен в свой телефон, чтобы безысходность всегда была с тобой!

Чем D3LTA отличается от Shapical? В последнем приложении упор сделан на разнообразии геометрических форм, коих здесь более трехсот. Глядя на некоторые фигуры, невольно задаешься вопросом: «Авторы Monument Valley подсмотрели стиль у создателей Shapical или наоборот?». В Google Play есть как платная версия, так и бесплатная. Отличие лишь в количестве геометрических фигур, однако в полной версии они более изощренные и интересные.

Eraser и PhotoLayers~Superimpose, Eraser

Два разных приложения, дополняющих друг друга и созданных одним разработчиком. Первое, Eraser (Фоновый ластик), позволяет отделить объект от фона и сохранить его в формате PNG. Весьма удобно, что при «стирании» фона палец не заслоняет изображение в точке, а управляется стиком на расстоянии.

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

Phonto - Текст на фотографиях

Приложение для нанесения надписей на фотографию. В арсенале Phonto более 200 разномастных шрифтов, изменение размера, цвета, наклона текста, его прозрачности и текстуры. Незаменимо для красивой подписи изображений.

Хотя результатом работы Flipagram является видеоролик, все же в основе его лежат фотографии. Благодаря приложению можно создавать небольшие видеоотчеты путем объединения любого числа изображений и наложения музыкальных и визуальных эффектов. Для любителей Instagram и Vine предусмотрен авторасчет времени записи.

В сетях появляется все больше таких фото и вам наверняка хочется тоже попробовать на себе фильтры. Сегодня вы это сделаете, давайте приступать к поискам.

Как называется программа, где можно сделать себя старым или поменять пол?

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

Сейчас просто пройдемся по возможностям и вы сможете понять, или это точно то, что вы уже наверняка так долго ищете.

Первым делом стоит отметить улыбку. Есть фильтры, которые сделают любого человека веселым. Просто появляется улыбка и на самом деле, оба варианта совершенно разные и можно подобрать только на практике.

Основными фильтрами, которые очень сильно привлекли внимания стали Молодость, Старость и конечно же Смена пола на мужской или женский. Ради интереса, можно попробовать себя в каждом из них.

Все это дело помещается в коллаж 2 на 2 и помещается в Инстаграм, для примера. Если все эти моменты сходяться, то вам точно на следующий пункт статьи.

Как пользоваться этой программой?

Я не буду вас долго мучать и хочу сказать, что приложение для всех вышеописанных действий называется FaceApp . Появилось оно достаточно давно, но внимание смогло привлечь только сейчас.


Если вы хоть раз пользовались подобными программами, то в принципе проблем не должно возникнуть. Для начала запускаете и делаете свою фотку. Если не знаете как убрать овал, то просто отдалите телефон от лица.

Дальше листаем и пробуем разные фильтры. Все делается при помощи нейросетей, поэтому процесс может занять некоторое время. Не думайте, что это секундное дело.


Есть кнопки, чтобы сразу поделится работой в социальных сетях. Но если просто хочется сохранить на смартфон, то кнопочка справа со стрелочкой вниз, создана именно для вас.

Пишем название в магазине приложений и просто качаем. Если что, вот ссылочки для скачивания, если не хочется искать:

Изучить новый язык и среду разработки - это минимум, что от тебя потребуется, если ты захочешь написать свое первое мобильное приложение. Чтобы с пониманием набросать элементарный todo list для Android или iOS, не передирая пример из книжки, уйдет не меньше пары недель. Но можно не осваивать Objective-C или Java и при этом быстро разрабатывать приложения для смартфонов, если использовать такие технологии, как PhoneGap.

Если ты внимательно изучал нововведения, которые ожидают нас в Windows 8, то, возможно, заметил, что под ней можно будет разрабатывать приложения на HTML5. Идея, на самом деле, не новая - технологии, реализующие тот же подход для мобильных платформ, развиваются семимильными шагами. Одним из таких фреймворков, позволяющим разрабатывать приложения для смартфонов с помощью связки привычных для нас HTML, JavaScript и CSS!, как раз и является PhoneGap. Написанное с его помощью приложение подойдет для всех популярных платформ: iOS, Android, Windows Phone, Blackberry, WebOS, Symbian и Bada. Тебе не нужно будет изучать особенности программирования под каждую платформу (например, Objective-C в случае с iOS), разбираться с различными API и средами разработки. Все, что потребуется для создания кросс-платформенного мобильного приложения, - это знание HTML5 и специального PhoneGap API. При этом на выходе получится не тупая HTML-страница, «обрамленная» в интерфейс приложения, нет! API фреймворка позволяет задействовать практически все возможности телефона, которые используются при разработке с помощью нативных инструментов: доступ к акселерометру, компасу, камере (запись видео и фотосъемка), списку контактов, файловой системе, системе нотификаций (стандартных уведомлений на телефоне), хранилищам и т. д. Наконец, такое приложение может безболезненно обращаться к любому кросс-доменному адресу. Ты можешь воссоздать нативные элементы управления с помощью фреймворков вроде jQuery Mobile или Sencha, и конечная программа будет выглядеть на мобильном телефоне так, как будто она написана на нативном языке (ну или почти так). Лучше всего проиллюстрировать вышесказанное на деле, то есть написать приложение, поэтому предлагаю сразу приступить к практике. Засекай время - на все про все уйдет едва ли больше получаса.

Что мы будем создавать

В качестве целевой платформы возьмем iOS - да-да, деньги лежат в AppStore, и монетизировать свои разработки пока лучше всего там:). Но сразу внесу ясность: все то же самое, без изменений, можно провернуть, скажем, для Android. Долго думал, какой пример рассмотреть, так как писать очередную тулзу для учета списка дел совершенно не хотелось. Поэтому я решил создать приложение под названием «Геонапоминалка», навигационную прогу, назначение которой можно описать одной фразой: «Сообщи мне, когда я снова тут окажусь». В AppStore есть немало утилит, которые позволяют «запомнить» место, где пользователь припарковал машину. Это почти то же самое, только чуть попроще. Ты сможешь указать на карте города точку, задать для нее определенный радиус и запрограммировать сообщение. Когда ты в следующий попадешь в пределы окружности с указанным радиусом, приложение выдаст тебе уведомление, а точка будет удалена. Будем действовать по такому плану: сначала создадим простое веб-приложение, проверим его в браузере, а затем перенесем с помощью PhoneGap на платформу iOS. Очень важно написать в прототипе и протестировать в браузере на компьютере основную часть кода, поскольку отлаживать приложение в телефоне гораздо сложнее. В качестве каркаса мы возьмем JS-фреймворк jQuery c jQuery Mobile (jquerymobile.com), а в качестве движка карт - Google Maps v3. Приложение будет состоять из двух страниц: карты и списка точек.

  • На карте устанавливается маркер твоего текущего положения. По клику на карте создается точка, к которой привязывается сообщение (вроде «машина рядом»). Точку можно удалить, кликнув на ней. Для перемещения маркера человека по карте используется геонавигационный API.
  • На странице со списком точек должна иметься дополнительная кнопка «Удалить все точки», а рядом с каждой точкой - кнопка «Удалить эту точку». Если кликнуть по элементу в списке, соответствующая точка отобразится на карте. Настройки пользователя и список точек будем сохранять в localStorage.

UI-фреймворки

jQuery Mobile - это, конечно, не единственный фреймворк для создания мобильного интерфейса. На сайте PhoneGap приведен огромный список библиотек и фреймворков, которые ты можешь использовать (phonegap.com/tools): Sencha Touch, Impact, Dojo Mobile, Zepto.js и др.

Каркас приложения

Сразу объясняю, зачем мы будем использовать jQuery Mobile. Эта JS-библиотека предоставляет нам уже готовые элементы интерфейса мобильного приложения (максимально приближенные к нативным) для самых разных платформ. Нам ведь надо, чтобы на выходе было именно мобильное приложение, а не страничка из браузера! Так что качаем последнюю версию JQuery Mobile (jquerymobile.com/download) и переносим в рабочую папку первые файлы приложения, которые нам понадобятся:

  • images/ (перенеси сюда все изображения из одноименной папки архива jq-mobile);
  • index.css;
  • index.html;
  • index.js;
  • jquery.js;
  • jquery.mobile.min.css;
  • jquery.mobile.min.js.

Нужно сделать ресурсы в основном локальными, чтобы пользователь в будущем не тратил мобильный интернет. Теперь создаем каркас страниц в файле index.html. Приведенный ниже код описывает верхнюю часть страницы с картой, надписью «Геонапоминалка» и кнопкой «Точки».

Страница с картой

Геонапоминалка

Точки

Атрибут страницы data-dom-cache="true" необходим для того, чтобы она не выгружалась из памяти. Для кнопки «Точки» используется data-transition="pop", чтобы страница «Список точек» открывалась с эффектом «Всплытие». Подробнее о том, как устроены страницы jQuery Mobile, можно почитать в хорошем мануале (bit.ly/vtXX3M). По аналогии создаем страницу со списком точек:

Страница со списком точек

Удалить все

Точки

Карта

Для кнопки «Карта» тоже пропишем data-transition=»pop», но добавим атрибут data-direction=»reverse», чтобы страница «Карта» открывалась с эффектом «Затухание». Те же атрибуты пропишем в шаблоне точки. Все, наш каркас готов.

Создание приложения

Теперь надо отобразить карту, для чего мы возьмем стандартный API Google Maps, который используется миллионами разных сайтов:

Var latLng = new gm.LatLng(this.options.lat, this.options.lng); this.map = new gm.Map(element, { zoom: this.options.zoom, // Выбираем начальный зум center: latLng, // Устанавливаем начальный центр mapTypeId: gm.MapTypeId.ROADMAP, // Обычная карта disableDoubleClickZoom: true, // Отключаем автозум по тапу/двойному клику disableDefaultUI: true // Отключаем все элементы интерфейса });

Здесь Gm - это переменная, ссылающаяся на объект Google Maps. Параметры инициализации я хорошо закомментировал в коде. Следующий шаг - отрисовка маркера человечка на карте:

This.person = new gm.Marker({ map: this.map, icon: new gm.MarkerImage(PERSON_SPRITE_URL, new gm.Size(48, 48)) });

В качестве PERSON_SPRITE_URL используется адрес спрайта человечка из Google-панорам. Его статический адрес - maps.gstatic.com/mapfiles/cb/mod_cb_scout/cb_scout_sprite_api_003.png . Пользователь будет добавлять точки, кликая на карте, поэтому, чтобы их отрисовывать, мы будем слушать событие click:

Gm.event.addListener(this.map, "click", function (event) { self.requestMessage(function (err, message) { // Метод, возвращающий текст, введенный пользователем if (err) return; // Метод добавляет точку в список активных и // отрисовывает ее на карте self.addPoint(event.latLng, self.options.radius, message); self.updatePointsList(); // Перерисовываем список точек }); }, false);

Я привожу бОльшую часть кода - остальное ищи на диске. Дальше нам нужно научить приложение перемещать иконку пользователя по карте. В прототипе мы задействуем Geolocation API (тот, который используется в том числе в десктопных браузерах):

If (navigator.geolocation) { // Проверяем, поддерживает ли браузер геолокацию function gpsSuccess(pos) { var lat, lng; if (pos.coords) { lat = pos.coords.latitude; lng = pos.coords.longitude; } else { lat = pos.latitude; lng = pos.longitude; } self.movePerson(new gm.LatLng(lat, lng)); // Перемещаем иконку пользователя } // Каждые три секунды запрашиваем текущее // положение пользователя window.setInterval(function () { // Запрашиваем текущее положение navigator.geolocation.getCurrentPosition(gpsSuccess, $.noop, { enableHighAccuracy: true, maximumAge: 300000 }); }, 3000); }

Метод movePerson с помощью простой процедуры getPointsInBounds() проверяет, не находится ли пользователь в какой-нибудь активной точке. Последний вопрос - где хранить список точек? В HTML5 появилась возможность использовать localStorage, так что не будем ей пренебрегать (предоставляю тебе самостоятельно разобраться с этими участками кода, которые я хорошо закомментировал). Итак, приложение, работающее в браузере, готово!

Запуск веб-приложения

Как я уже говорил, отладку в основном необходимо выполнять на компьютере. Самый подходящий браузер для тестирования веб-приложений на компьютере - это Safari или Chrome. После отладки в этих браузерах ты можешь быть уверен в том, что твое приложение не «поедет» в браузере мобильного телефона. Оба этих браузера совместимы с большинством мобильных веб-браузеров, поскольку точно так же, как и они, построены на основе движка WebKit. После устранения всех багов можно переходить к запуску мобильного веб-приложения непосредственно на телефоне. Для этого настрой свой веб-сервер (пусть даже Denwer или XAMPP), чтобы он отдавал созданную страницу, и открой ее уже в браузере мобильного телефона. Приложение должно выглядеть примерно так, как показано на рисунке. Тут важно понимать, что будущее мобильное приложение, собранное для мобильной платформы с помощью PhoneGap, будет выглядеть почти один в один, за исключением того, что на экране не будет отображаться навигационная панель браузера. Если все хорошо, можно приступать к созданию из странички полноценного iOS-приложения. Заметь, что PhoneGap и IDE для мобильной разработки мы до этого момента даже не трогали.

Подготовка

Для того чтобы собрать приложение под iOS, тебе нужен компьютер с операционной системой Mac OS 10.6+ (или виртуальная машина на Mac OS 10.6), а также среда разработки Xcode с установленным iOS SDK. Если у тебя не установлен SDK, придется скачать с сайта Apple образ диска, включающий в себя Xcode и iOS SDK (developer.apple.com/devcenter/ios/index.action). Имей в виду, что образ весит около 4 Гб. Кроме этого, тебе понадобится зарегистрироваться на сайте Apple в качестве разработчика (если ты не собираешься публиковать свое приложение в AppStore, то это требование можно обойти). С помощью этого набора можно разрабатывать приложения на нативном для iOS языке Objective-C. Но мы решили пойти обходным путем и воспользоваться PhoneGap, поэтому нам еще нужно установить пакет PhoneGap iOS. Просто скачай архив с офсайта (https://github.com/callback/phonegap/zipball/1.2.0), распакуй его и в папке iOS запусти программу установки. Когда установка завершится, в меню проектов Xcode должна появиться иконка PhoneGap. После запуска придется заполнить несколько форм, но уже очень скоро ты увидишь рабочую область IDE с твоим первым приложением. Чтобы проверить, все ли работает, нажми кнопку Run - должен запуститься эмулятор iPhone/iPad с шаблонным приложением PhoneGap. Собранная программа выдаст ошибку с сообщением о том, что index.html не найден, - это нормально. Открой папку, в которой ты сохранил первичные файлы проекта, и найди в ней подпапку www. Перетащи ее в редактор, кликни на иконке приложения в списке слева и в появившемся окне выбери «Create folder references for any added folders». Если запустить программу еще раз, то все должно заработать. Теперь можно скопировать все файлы нашего прототипа в папку www. Пора подпилить наш прототип для работы на смартфоне в обработке PhoneGap.

Перенос прототипа

В первую очередь нужно подключить phonegap-1.2.0.js в твой индексный файл. PhoneGap позволяет ограничивать список доступных для посещения хостов. Предлагаю сразу настроить такой «белый список». В меню проекта открой Supporting Files/PhoneGap.plist, найди пункт ExternalHosts и добавь в него следующие хосты, к которым будет обращаться наше приложение (это сервера Google Maps): *.gstatic.com, *.googleapis.com, maps.google.com. Если их не указать, программа выдаст предупреждение в консоли и карта не отобразится. Для инициализации веб-версии нашего приложения мы использовали событие DOMReady или хелпер jQuery: $(document).ready(). PhoneGap генерирует событие deviceready, которое говорит о том, что мобильное устройство готово. Предлагаю этим воспользоваться:

Document.addEventListener("deviceready", function () { new Notificator($("#map-canvas")); // Если у пользователя нет интернета, // сообщаем ему об этом if (navigator.network.connection.type === Connection.NONE) { navigator.notification.alert("Нет интернет-соединения", $.noop, TITLE); } }, false);
Запретим скроллинг: document.addEventListener("touchmove", function (event) { event.preventDefault(); }, false);

Затем заменим все вызовы alert и confirm на нативные, которые предоставляет нам PhoneGap:

Navigator.notification.confirm("Удалить точку?", function (button_id) { if (button_id === 1) { // Нажата кнопка OK self.removePoint(point); } }, TITLE);

Последнее, что нам нужно поменять, - это блок кода, перемещающий иконку пользователя по карте. Наш текущий код тоже работает, но работает менее оптимально (перемещает иконку, даже если координаты не изменились) и дает не такие богатые данные, как аналог в PhoneGap:

Navigator.geolocation.watchPosition(function (position) { self.movePerson(new gm.LatLng(position.coords.latitude, position.coords.longitude)); }, function (error) { navigator.notification.alert("code: " + error.code + "\nmessage: " + error.message, $.noop, TITLE); }, { frequency: 3000 });

Этот код более изящный - он генерирует событие только тогда, когда координаты изменились. Жмем кнопку Run и убеждаемся, что только что созданное нами приложение отлично работает в симуляторе iOS-устройства! Пора приступать к запуску на реальном устройстве.

Запуск на устройстве

Подсоедини iPhone, iPod или iPad к компьютеру, на котором запущен Xcode. Программа определит новое устройство и попросит разрешения использовать его для разработки. Нет смысла ей отказывать:). Повторю еще раз: чтобы запустить написанное приложение на iOS, необходимо быть авторизированным разработчиком iOS (другими словами, быть подписанным на iOS Developer Program). Этим придется заморочиться только в случае разработки приложений для продукции Apple, с другими платформами (Android, Windows Phone) все намного проще. У тех, кто обучается в вузе, есть шанс получить доступ к программе бесплатно благодаря каким-нибудь льготам. Все остальные должны платить $99 в год для участия в программе. Apple выдает сертификат, которым ты сможешь подписывать свой код. Подписанное приложение разрешается запускать на iOS и распространять в App Store. Если ты не студент, а $99 для невинных экспериментов тебе пока жалко, то есть и другой способ - обмануть систему. Ты можешь создать самоподписанный сертификат для верификации кода и запустить мобильную программу на джейлбрейкнутом iOS-устройстве (не буду на этом останавливаться, потому что все максимально подробно расписано в этой статье: bit.ly/tD6xAf). Так или иначе, ты вскоре увидишь работающее приложение на экране своего мобильного телефона. Останавливай секундомер. Сколько времени у тебя на это ушло?

Другие платформы

Кроме PhoneGap, существуют и другие платформы, позволяющие создавать мобильные приложения без использования нативных языков. Перечислим наиболее крутых игроков.

Appcelerator Titanium (www.appcelerator.com).

Titanium умеет собирать приложения в первую очередь под Android и iPhone, но в нем также заявлена поддержка BlackBerry. Кроме самого фреймворка, проект предоставляет набор нативных виджетов и IDE. Ты можешь разрабатывать приложения на Titanium бесплатно, однако за поддержку и дополнительные модули придется заплатить (от $49 в месяц). Цена некоторых сторонних модулей доходит до $120 за год. Разработчики Appcelerator Titanium утверждают, что на основе их фреймфорка написано более 25 тысяч приложений. Исходный код проекта распространяется под лицензией Apache 2.

Corona SDK (www.anscamobile.com/corona).

Эта технология поддерживает основные платформы - iOS и Android. Фреймворк нацелен в основном на разработку игр. Еще бы, ведь разработчики заявляют о высококачественной оптимизации на OpenGL. Бесплатной версии у платформы нет, а цена довольно-таки кусачая: $199 в год за лицензию для одной платформы и $349 в год для iOS и Android. Corona предлагает свою IDE и эмуляторы устройств. Приложения под Corona пишут на языке, похожем на JavaScript.

Заключение

Мы создали простое мобильное веб-приложение и в несколько простых шагов портировали его на платформу iOS с помощью PhoneGap. Мы не написали ни строчки кода на Objective-C, но получили программу приличного качества, потратив минимум времени на перенос и изучение API PhoneGap. Если ты предпочитаешь другую платформу, например Android или Windows Mobile 7, то ты так же легко, без каких-либо изменений под эти платформы, сможешь собрать наше приложение (для каждой из них есть хороший вводный мануал и видеоурок: phonegap.com/start). Чтобы убедиться в состоятельности платформы, можно посмотреть на уже готовые приложения на PhoneGap, которые разработчики технологии собрали в специальной галерее (phonegap.com/apps). По факту PhoneGap - это идеальная платформа для создания как минимум прототипа будущего приложения. Ее главными преимуществами являются быстрота и минимум затратат, чем активно пользуются стартапы, которые во всех отношениях ограничены в ресурсах. Если приложение попрет, а внутренности на HTML+JS тебя по какой-то причине перестанут устраивать, всегда можно будет портировать приложение на нативный язык. Не могу не сказать, что PhoneGap изначально разрабатывался компанией Nitobi как открытый проект (репозиторий располагается на GitHub: github.com/phonegap). Исходники и дальше будут оставаться открытым, хотя в октябре прошлого года компанию Nitobi купил Adobe. Нужно ли говорить, какие перспективы появляются у проекта при поддержке в лице такого гиганта?

В последнее время набирают популярность приложения для мгновенной замены лиц на фото и видео. В App Store данный вид софта представлен многочисленными решениями от различных разработчиков и, чтобы хоть как-то ориентироваться во всём этом разнообразии, рассмотрим самые яркие примеры таких программ для iPhone и iPad.

Замена лиц, смена пола, прически, макияж, коррекция фигуры, эффекты и маски на фото и видео для iPhone – 20 лучших приложений

Instagram (эффекты и маски)

Наложить маску на портрет во время съемки можно штатными средствами приложения Instagram. Перейдя в режим камеры, следует нажать в правом нижнем углу кнопку с изображением смайлика, которая откроет панель эффектов.

Выбрав понравившуюся маску, можно сделать снимок и сохранить его в свою Историю, а затем при желании добавить в ленту Instagram как обычную фотографию.

Вконтакте (эффекты и маски по категориям)

Аналогичным образом работает алгоритм наложения эффектов и в мобильном клиенте российской социальной сети Вконтакте. Переходим в раздел Новости, запускаем камеру нажатием соответствующей кнопки в левом верхнем углу и затем открываем меню масок при помощи кнопки со смайликом. Фильтры здесь удобно разбиты на категории и корректно применяются при съемке как фото, так и видео.

Snapchat (возраст, смена пола, эффекты и маски)

Популярнейшее приложение, позволяющее добавлять различные маски, эффекты, стикеры и текст на фото. Используя Snapchat, пользователь может фотографировать, снимать видео, добавлять текст и рисунки и отправлять их управляемому списку получателей.

Весной 2019 года в приложении появились новые «маски», позволяющие накладывать эффекты на сделанные селфи-фото. Один из наиболее популярных фильтров как раз и позволял менять пол. Мужчины могли представить, какой бы женщиной и наоборот.

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

Огромной популярностью пользуется и .

FaceApp (возраст, прически, смена пола, улыбки)

Данное приложение заставит улыбнуться даже самого сурового и серьезного человека. Также в программе можно состарить или же омолодить объект изменения и даже изменить ему пол. Для редактирования фотографии FaceApp использует ставшие популярными нейронные сети.

Приложения от ModiFace (изменение цвета волос, глаз и макияжа)

Известный разработчик ModiFace, специализирующийся на создании приложений с дополненной реальностью, представил три отдельных приложения позволяющих изменить цвет волос (Hair Color), глаз (Eye Color Studio) и макияж (MakeUp). Система распознает лицо пользователя и наносит на него виртуальные элементы.

Kirakira+ (анимация блеска)

Программа автоматически добавляет анимацию сверкающего блеска на различные объекты в кадре при съемке видео (работает и с фото, однако эффект менее реалистичный). Приложение самостоятельно определяет и «подсвечивает» нужные элементы – украшения, фрагменты макияжа, блестящие вещи и аксессуары.

Meitu (коррекция фигуры и формы лица, цвета кожи, удаление пятен и шрамов + эффекты и фильтры)

Помимо применения дополненной реальности для изменения фигуры и лица, цвета кожи и добавления различных эффектов и фильтров, приложение Meitu является полноценным фоторедактором, где можно изменять фотографии, масштабировать, а также составлять коллажи.

YouCam Makeup (подбор косметики, изменение цвета волос + эффекты)

Как следует из названия, приложение позиционируется в качестве виртуального визажиста и позволяет наносить макияж профессионального уровня на портретные фотографии. С помощью YouCam Makeup не составит труда отбелить прокуренные зубы, удалить дефекты кожи, исправить бледность или красноту лица, добавить блеска обреченному взгляду.

Фоторедактор лица и фигуры Lite (коррекция фигуры и формы лица)

Само название приложения недвусмысленно говорит о его назначении. Этот фоторедактор предназначен для коррекции лица и фигуры. Face & Body Photo editor Lite дает возможность увеличить бедра и грудь, а также нанести на свое тело очертания пресса. Эта программа позволяет имитировать результаты пластической хирургии. С помощью приложения можно легко изменить форму лица или носа и даже осуществить виртуальную липосакцию.

Fabby Look (измененение цвета волос)

Данный продукт дает возможность поэкспериментировать с экзотическими расцветками волос, например, с зеленым или даже фиолетовым. Создала приложение белорусская компания AIMATTER, чей создатель, Юрий Мельничек, известен в качестве сооснователя картографического сервиса maps.me.

Perfect 365 (коррекция формы лица, макияжа)

Подбор наилучшего для себя макияжа – трудная задача для многих женщин. Но это приложение позволит понять, какой образ лучше всего вам подходит. Надо всего лишь загрузить свое селфи, обозначить губы, глаза, контуры лица и экспериментировать затем с вариантами макияжа.

На вкладке Skin можно убрать темные круги под глазами и складки на коже. В Eyes предоставляется возможность изменить цвет глаз, а Mouth поможет виртуально отбелить зубы и сформировать голливудскую улыбку.

Wanna Nails (подбор лака для ногтей)

Это бьюти-приложение тоже создано белорусской командой, на этот раз WANNABY. Программа позволяет оценить и примерить цветовые оттенки различных лаков для ногтей перед их приобретением. Можно поэкспериментировать с подбором цвета или оценить сочетания оттенков в зависимости от цвета кожи, освещения и общего стиля.

Фоторедактор Эффекты Color Pop (изменение цвета некоторых элементов на фото)

Это приложение умеет делать снимки, оставляя цветными лишь выбранные элементы композиции - глаза, губы, фрагменты одежды. При должном уровне фантазии и оригинальности результат впечатляет.

B612 - Beauty & Filter Camera (улучшение фото + эффекты и маски)

Основная функция приложения - коррекция лица в реальном времени (перед снимком или во время съемки видео). Разработчики предлагают боле 1500 различных «стикеров», которые можно примерить на свое лицо, добавив тем самым эмоциональной окраски портрету. Кроме того, B612 отлично справляется с автоматическим улучшением физиономии пользователя, избавляясь от дефектов кожи, складок, морщин и т.д.

Cymera (коррекция фигуры, ретушь фото + маски, эффекты и фильтры для селфи)

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

MomentCam (превращает фото в карикатуры и стикеры)

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

Visage Lab (ретушь и коррекция лица)

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

Bestie (камера для автопортретов, ретушь и коррекция лица + эффекты)

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

Zombify (делает лица зомби)

Как уже ясно из названия, Zombify превращает пользователей в зомби. Приложение сожержит множество различных эффектов, включая анимационные.

Face Swap Live (обмен лицами)

Главной особенностью приложения является возможность обмена лицами с другим пользователем, попавшим в объектив камеры. Кроме этого можно применять имеющиеся в базе эффекты и маски к снимкам и видео.

Благодаря данному решению, юзеры смогут в один клик создать себе неожиданный образ – рыцаря, гангстера, монашки, клоуна и т.п.

Программа автоматически подставляет лица со снимков к готовым шаблонам, после чего сама корректирует изображение таким образом, чтобы на выходе получался максимально реалистичный фотомонтаж.

OldBooth (подставляет лицо в ретро-шаблоны)

Одно из старейших приложений в App Store по измению лиц. OldBooth позволяет превращать фото пользователя в оригинальных ретро персонажей. При помощи встроенных покупок можно докупить коллекции эффектов соответствующих различным периодам прошлого столетия.