Давно ничего не писал, погряз в рутине, всякие Битроники, магазины подарков и другие не интересные вещи (шутка конечно). Но вот! Дождался! Спасибо Роману и заказчику Константинову В.К, давно хотел написать приложение под мобильное устройство, а так как недавно компания 1С-Битрикс подарила нам Samsung Galaxy Nexus, за что спасибо огромное отличный девайс, сразу выбор ОС пал на Android. Да и как то ближе он к нам, к людям обычным
Ох, давно не занимался прикладным программированием. Итак, идея приложения: На примере приложения “Вконтакте” в списке сервисов по расшариванию фотографий должна появляться иконка приложения, отправляющее изображение с автонарушителем на сайт daydoroguduraku.com, а так же необходимо дать возможность пользователю добавлять комментарий к фотографии. Все просто.
Однако незнакомый язык программирования, среда разработки Eclipse (да, да должна быть мне знакома, но я всегда пользовался нетбинсом и gedit'том) и виртуальная машина с андроидом(кстати довольно тормозная штука) заставили меня провозиться с разработкой 3-4 дня. Но вот оно приложение, готово и опубликовано!
Все материалы размещенные через андроид приложение было решено разместить в отдельном разделе, во-первых для SEO целей, во-вторых чтобы народ не заспамил главную страницу фотографиями своих частей тела
Кто не вкурсе, разработка под андроид ведется на языке Java. До этого ничего не писал на этом языке, но все же на Си похоже, поэтому не так сложно переключиться. Углубляться сильно не буду так как у нас не форум Андроид разработчиков. Расскажу основные особенности.
Проблема номер 1, с которой я столкнулся: Никак не мог понять, почему андроид не использовал интернет-подключение, но потом вспомнил, что все приложения при установки спрашивают разрешения на различные функции телефона (интернет, звонки, смс и т.д.). Полез на забугровые сайты и сразу нашел, что все эти механизмы указываются в файле “Манифесте”.
Проблема номер 2, отправить файл нашему сайту. Ну что, берем отправляем. Отправил быстро, но статический, а вот вытащить полный путь файла, который был только что создан, пришлось снова лезть на забугровые форумы. Но ниче, путь получил, файл отправил.
Вобщем то это единственные проблемы которые возникли, помимо интерфейса всплывающих окошек с сообщениями и прогресбарами, но там есть свои особенности.
Ну и в итоге схема работы получилась следующая: 1) Идем во двор вечером 2) Видим падонка, который запарковался на детской площадке 3) Фотаем телефоном с андроидом 4) Нажимаем кнопку расшарить 5) Выбираем наше приложение 6) Пишем комментарий и отправляем. Все! Падонак наказан.
А технически это выглядит так...
Со стороны приложения: Получаем фотографию из хранилища, текст комментария, IMEI телефона(для привязки записи по IMEI, мы всегда можем со своего аппарата увидеть свои записи и перейти к ним)
Важно! Генерируем подпись, чтобы записи можно было добавлять только через наше приложение. Иначе найдутся плохие люди которые захотят завалить проект нехорошими записями. Ай яй яй...
И все это отправляем методом POST, а там уже все родное, родненькое... битриксоидное...
Со стороны Битрикса:
Скрипт 1. принимает post данные, проверяет подпись, если подпись верна, создает запись в инфоблоке.
Скрипт 2. В нем лежит обычный news.list на который накладывается фильтр по свойству IMEI, для просмотра своих записей. Приложение обращается к этому скрипту и выводит собственно ссылки с названиями записей.
Вот такое простенькое и очень полезное приложение у нас получилось. Идей еще много по приложению, будем доделывать более сложный функционал и конечно же будем стараться развивать это направление у нас в компании и дальше, потому что интеграция сайта с мобильными приложениями – это будущее!
Антон, идея отличная. Но не совсем вижу схему указания сайта, нужна точка входа на сайт для приложения, тоесть нужно указывать определенный урл на сайте. Помоему это не совсем удобно.
Ну да, понял. Тогда в приложении нужна возможность хранить разные аккаунты для разных сайтов (site_url, login, pass), чтобы при постинге выбирать на какой сайт постим и не проходить снова авторизацию. Ну, в голове представил пойду ковырять MetaWeblog API .
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».