No Image

Создание приложения для мобильных устройств

СОДЕРЖАНИЕ
0 просмотров
10 марта 2020

Содержание статьи

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

Запуск приложения в симуляторе iOS

Хакер #156. Взлом XML Encryption

Если ты внимательно изучал нововведения, которые ожидают нас в 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, и конечная программа будет выглядеть на мобильном телефоне так, как будто она написана на нативном языке (ну или почти так). Лучше всего проиллюстрировать вышесказанное на деле, то есть написать приложение, поэтому предлагаю сразу приступить к практике. Засекай время — на все про все уйдет едва ли больше получаса.

Другие полезности PhoneGap

Кроме потрясающей платформы для мобильных приложений, PhoneGap также предоставляет сервис для сборки твоего приложения в «облаке». Под все платформы и в один клик! Сборщик условно бесплатный. Ты можешь зарегистрироваться на сайте PhoneGap Build (build.phonegap.com) и получить доступ к сборщику. С его помощью ты вправе собрать неограниченное число приложений с открытым исходным кодом и одно приложение с закрытыми исходниками. Понятно, что если нужно скомпилировать больше закрытых приложений, то придется немного заплатить.

Если тебе не хватает какого-нибудь функционала в «базовой комплектации» PhoneGap, то ты можешь расширить его возможности с помощью плагинов. Существует целый репозиторий (github.com/phonegap/phonegap-plugins), который включает в себя четыре раздела iPhone, Android, Palm, BlackBerry. Сейчас под iOS написано более 20 плагинов: BarcodeScanner (сканер штрих-кодов), AdPlugin (отображения рекламы iAd), NativeControls (нативные для iOS контролы) и другие.

В качестве целевой платформы возьмем 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. Приведенный ниже код описывает верхнюю часть страницы с картой, надписью «Геонапоминалка» и кнопкой «Точки».

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

Страница с картой, открытая в мобильном браузере. Это еще не iOS приложение.

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

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

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

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

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

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

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

Метод 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, которое говорит о том, что мобильное устройство готово. Предлагаю этим воспользоваться:

Читайте также:  Почему с плей маркета долго скачивается игра

Прописываем ExternalHosts

Это событие проверяет, есть ли у пользователя хоть какое-нибудь интернет-соединение. Если его нет, выводим соответствующее сообщение. Вместо функции navigator.notification.alert можно использовать более привычную alert, но ее минус в том, что она выглядит менее естественно для мобильного приложения. Сейчас нам хватит и этих знаний, но ты можешь подробнее прочитать о network.connection (bit.ly/uEyRwz) и способах нотификации (bit.ly/tkvzE2).

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

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

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

Нативные уведомления в 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-приложение

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

Кроме 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.

Создание и размещение приложений из панели управления всего в несколько кликов. Создавайте неограниченное количество приложений. Мобильный конструктор приложений Apps Tech Global — это лучшее решение для малого и среднего бизнеса.

СОЗДАНИЕ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ БЕСПЛАТНО ДЛЯ IPHONE И АНДРОИД

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

ПРИЛОЖЕНИЯ ВИЗИТКИ

Приложение визитка для вашего бизнеса или для Вас

РЕСТОРАНЫ, КАФЕ, ПИЦЦЕРИИ

Приложение для ресторанов с оплатой и доставкой заказов

ЧАТЫ И МЕССЕНДЖЕРЫ

Публичные и приватные чаты. Возможно групповое и приватное общение

ПЛАТЕЖНЫЕ СИСТЕМЫ

Сбербанк, Яндекс, Qiwi, CloudPayment, PayPal и другие платежные системы

БИЗНЕС, ОРГАНИЗАЦИИ

Приложение для бизнеса, организации или учреждения

ИНТЕРНЕТ МАГАЗИНЫ

Каталоги, интернет-магазины с платежными системами

ДОСКА ОБЪЯВЛЕНИЙ

Готовый к использованию модуль доски объявлений

РАССЫЛКА УВЕДОМЛЕНИЙ

Рассылка уведомлений пользователям приложения

Система управления приложением

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

Интернет-магазин
в мобильном приложении

Вы можете создать полноценное приложение в конструкторе Apps Global
для продажи ваших товаров или услуг

УПРАВЛЕНИЕ

Редактирование товаров, обработка заказов и управление пользователями

ЭКВАЙРИНГ

В конструктор реализовано решение платежей через Яндекс, Сбербанк и Qiwi

ДОСТАВКА

Встроенная система расчета доставки в вашем регионе и по всей России

ПРИВЛЕЧЕНИЕ

Использование скидок, карт лояльности, бонусы за приглашение, дисконты

Система управления магазином

ПРОДУКЦИЯ

Добавление и редактирование товаров.

ЗАКАЗЫ

Оформление и обработка заказов

ПОКУПАТЕЛИ

Редактирование пользователей, бонусы, скидки

Читайте также:  Форма редактирования товара торгового каталога позволяет настроить

Конструктор мобильных приложений Apps Tech Global

Наш сервис позволит Вам в короткий срок и без привлечения программистов создать приложение. Приложения для IOS и Android телефонов и планшетов, создаются конструктором без специальных знаний кодировки. Большое количество готовых модулей, позволит вам использовать различные функции в вашем мобильном приложении. Если Вам нужен интернет-магазин в мобильном приложении, то достаточно только подключится к вашему и сайту и весь товар будет размещен в приложении. Наша команда может оказать помощь в создании и размещении приложений в Apple Store и Google Play. Низкая стоимость размещения, позволить сократить расходы на обслуживание приложения.

Создайте мобильное приложение для вашего бизнеса или предприятия

Наш сервис ориентирован на малый и средний бизнес. Стоимость приложений не превышает стоимость мобильной связи. Уже сотни людей воспользовались преимуществом
Конструктора мобильных приложений Apps Tech Global

  • По дате
  • По просмотрам

Год

  • Не выбрано
  • Январь
  • Февраль
  • Март
  • Апрель
  • Май
  • Июнь
  • Июль
  • Август
  • Сентябрь
  • Октябрь
  • Ноябрь
  • Декабрь

Теги

  • Бизнес иммиграция
  • Законодательство
  • Истории успеха / IT Style
  • Маркетинг / Свой бизнес
  • Стартап
  • Образование / Работа в ИТ
  • Языки программирования
  • Mobile application
  • Gamedev
  • IT Belarus
  • Технологии

Статьи

13 онлайн сервисов для создания своего мобильного приложения

Существует много историй, когда разработчик создавал свое мобильное приложение, загружал его на Google Play или App Store и становился миллионером. Если Вы не программист, но у вас есть идеи, — Вы можете попробовать самостоятельно создать мобильное приложение с помощью онлайн сервисов. Вы можете выбрать универсальных сервис или конструктор, заточенный для создания приложений определенного типа. Знания программирования при работе в таких сервисах не требуется. Но все-таки заплатить придется. Как правило, использование более менее качественных онлайн сервисов стоит от в среднем от 5 до 50 уе. ITmentor сделал подборку 13 онлайн сервисов для создания своего мобильного приложения.

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

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

Appsmakerstore — это онлайн-сервис, который позволяет пользователям создавать и публиковать свои собственные мобильные приложения в несколько кликов в интернете без каких-либо глубоких технологических навыков. Appsmakerstore предлагается в 23 языках, в том числе на русском. Стоимость использования от $10 в месяц.

Конструктор мобильных приложений для Android и iOS. Клиенты могут создать собственные каталоги, флаеры, брошюры, отчеты, резюме и пр. и предоставлять их с помощью SaaS-решения. Есть английская и русская версии. Стоимость использования от $35 в месяц.

ViziApps — конструктор приложений для компаний. Одна из главных особенностей — поддержка множества разных источников данных (включая таблицы Google, SalesForce, QuickBase или SQL базы данных), которые обычно используются в компаниях. На выходе вы получаете нативные приложения для веб, Android или iOS. Стоимость использования от $33 в месяц.

AppsBuilder — инструмент для самостоятельной разработки мобильных приложений, который не требует навыков программирования. Итальянская компания анонсировала последнюю версию конструктора, переведенную на 5 языков. Стоимость использования от $60 в месяц.

AppMakr — платформа создания приложений на основе HTML5. Основной функционал предлагается бесплатно, за дополнительные функции и кастомизацию уже надо будет платить. Стоимость использования от $2 в месяц.

BuildFire — онлайн-сервис для создания собственных приложений для ;iPhone, Android, Windows Phone. Особенность данного онлайн-сервиса в том, что создание приложений совершенно бесплатно, плата берется когда приложение публикуется в каталогах и составляет $49 ежемесячно.

Biznessapps является простым и доступным решением для предприятий по созданию и управлению приложениями для iPhone, iPad, Android. В течение 30 дней вы можете отказаться от использования конструктора и получить потраченные средства назад. Стоимость использования от $39 в месяц.

Для создания своего приложения пользователи могут выбирать элементы из множества различных шаблонов — от навигационных панелей и форм, до коммерческих элементов вроде звонков и СМС и контента вроде Google Maps. А выпадающие меню позволяют вводить дополнительные функции для каждого элемента приложения. Базовая функциональность сервиса доступна бесплатно.

Бесплатный сервис для создания приложений. Вы можете создавать программы для Android и iOS с простой функциональностью.

С помощью этого сервиса можно разрабатывать Android- и iOS-приложения. Стоимость использования от $16 в месяц.

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

Созданные в конструкторе приложения можно опубликовать в Google Play и App Store, их можно монетизировать с помощью рекламы или платных установок. Однако, не стоит переоценивать предложенные сервисы. Такие сервисы больше подходят для создания приложения для разного вида бизнеса, для того чтобы расширить целевую аудиторию и привлечь клиентов. С помощью предложенных сервисов действительно можно создавать работоспособные функциональные приложения, однако их недостатком остается шаблонность, простота дизайна и ограниченный функционал. Решайте, что лучше — один раз оплатить работу разработчиков или много лет платить владельцам конструктора за приложение средней функциональности?

Перепечатка статьи допускается только при указании активной ссылки на сайт itmentor.by

Хочешь получать новые статьи первым? Вступай в сообщества ITmentor Вконтакте и Facebook

Опубликован: 02-12-2016 71945 Поделиться:

Комментировать
0 просмотров
Комментариев нет, будьте первым кто его оставит

Это интересно
Adblock detector