На это неделе мы узнали как стать ниндзя Xcode, возмутились политикой Google Play, рассмотрели ему альтернативы, научились делать прототипы и встраивать планшет в автомобиль. Мобильная разработка не затихает даже в жарком августе!
Рубрика «iOS» - 123
Полезные материалы для мобильного разработчика #65 (4-10 августа)
2014-08-10 в 8:49, admin, рубрики: android, iOS, mobile development, windows phone, маркетинг, мобильные устройства, монетизация, Разработка под android, разработка под iOS, разработка приложенийImagrium: Фреймворк для автоматизации кросс-платформенного тестирования мобильных приложений
2014-08-07 в 7:23, admin, рубрики: android, iOS, автоматизация тестирования, Разработка под android, разработка под iOS, тестирование, тестирование приложенийКомпания, в которой я работаю, разрабатывает ПО на заказ, в том числе мобильные приложения на базе Android и iOS. В связи с тем, что конкуренция в этом сегменте рынка довольно высока, тестировщики не только отвечают за соответствие конечного продукта спецификациям и ожиданиям клиента, но еще и поставлены в жесткие рамки по бюджету и срокам тестирования. Это побуждает нас исследовать новые инструменты и методы, которые позволили бы нам уменьшать затраты на тестирование и повышать качество продуктов.
Imagrium — это результат одного из таких исследований. Технически это Jython фреймворк для кросс-платформенного тестирования мобильных Android/iOS приложений с помощью распознавания изображений, написанный нашей компанией. Он представлен в виде рабочего PyDev проекта, который вы можете изменить под свои нужды. Код распространяется под MIT лицензией и доступен на Github. В этой статье я расскажу о принципах работы фреймворка и его устройстве.
Читать полностью »
Решение проблемы с циклическими ссылками в блоках ObjC
2014-08-04 в 16:56, admin, рубрики: iOS, objective-c, Блог компании Viber, блоки, макросы, разработка под iOS, управление памятью, циклическая ссылка О блоках в ObjC и правильной работе с ними написано очень много, в том числе и на хабре. Вопрос о том, как правильно работать с self в блоках, чтобы избежать циклических ссылок, регулярно задается на собеседованиях. При использовании таких фреймворков, как ReactiveCocoa количество блоков в коде сильно возрастает, при этом увеличивается шанс допустить ошибку и потерять в памяти объекты. Про попытку окончательно решить эту проблему, метапрограммирование для с99 с экстеншнами и блоками + хипстерсткие макросы с @ под катом.
Читать полностью »
Cisco Jabber Guest и разработка несложных приложений под IOS с помощью AppArchitect
2014-08-04 в 5:11, admin, рубрики: AppArchitect, apple, Cisco, guest, iOS, ip-телефония, jabber, jabberguest, Блог компании Cisco, разработка под iOS Выбирая тему для этой статьи, я находился под впечатлением от общения с замечательным и, что не маловажно, бесплатным приложением для создания собственных приложений для iPad и iPhone – AppArchitect (http://apparchitect.com/).
Что касается Jabber Guest – он как нельзя лучше подходит для задачи – продемонстрировать как просто выполнить видеосоединение с мобильного устройства без необходимости получения аккаунта или регистрации.
Но сначала, в двух словах, – что же такое Jabber Guest ™
Как известно, Jabber у Cisco – обобщенное наименование для унифицированного многофункционального программного клиента, существующего на разных платформах и позволяющего осуществлять различные типы коммуникаций (IM, голос, видео и т.д.)
Все эти клиенты привязаны к инфраструктуре: предприятия или облачной.
Jabber Guest не исключение, но поскольку его основное назначение – обеспечение коммуникаций между сотрудником корпорации и внешним, не аутентифицированным пользователем, – он нам подходит как нельзя лучше. (конечно же у Cisco в корпоративной сети установлены необходимые для работы Jabber Guest сервера)
Ролик, иллюстрирующий работу Jabber Guest
Как это работает? Необходим Call Manager (ну как же без него), связка серверов Expressway Core и Edge (бесплатное решение от Cisco для предоставления удаленного доступа устройствам, регистрирующимся на CUCM) и сервер Jabber Guest. Все компоненты решения поставляются в виде виртуальных машин для инфраструктуры VMware.
Полезные материалы для мобильного разработчика #64 (28 июня-3 августа)
2014-08-03 в 10:17, admin, рубрики: android, iOS, mobile development, windows phone, маркетинг, мобильные устройства, монетизация, Разработка под android, разработка под iOS, разработка приложенийЧем запомнилась прошедшая неделя: Яндекс объяснил, как проверять безопасность мобильных приложений, глава Минкомсвязи предложит Apple раскрыть свои исходные коды, сама Apple открыла iAd в России и собственную CDN по всему миру, Intel обновил XDK, Wooga объяснила, как попасть в мобильные топы. Все это и многое другое в еженедельном дайджесте материалов о мобильной разработке.
Библиотека для автоматизации приемочного тестирования в мобильных приложениях
2014-07-31 в 7:23, admin, рубрики: iOS, lex, objective-c, автоматизация тестирования, интерпретаторы, разработка под iOS, тестированиеПреамбула
Я работаю в компании, которая делает достаточно большое и, не побоюсь этого слово, громоздкое мобильное приложение с солидной для мобильного приложения историей в несколько лет и, соответственно с довольно солидным и монструозным кодом.
Поток пожеланий от заказчика разнообразен и обилен и в связи с этим время от времени приходится вносить изменения даже в те места, которые для этого, вроде как, не предназначены. Некоторые, возникающие при этом проблемы — регрессионные баги — доставляют время от времени немало сложных часов.
При этом, по тем или иным причинам на проекте существует лишь ручное тестирование и довольно внушительного количество тестировщиков, а довольно наивные попытки автоматизации оного остались лишь на уровне нескольких довольно тривиальных юнит-тестов на уровне «Hello world».
В частности — у отдела тестирования есть внушительный цикл тестов для поиска регрессии, который проводится достаточно регулярно и занимает приличное количество времени. Соответственно, однажды возникла задача как-то оптимизировать этот процесс. Об этом и пойдет речь.
Честно, я не помню, какие средства для автоматизированного приемочного тестирования я смотрел и почему они мне не подошли. (Буду очень благодарен, если кто-то в комментариях подскажет интересные варианты решения этого — наверняка я пропустил что-то очень стоящее) Одно могу сказать точно — так как наше приложение, фактически тонкий клиент — очень многие кейсы невозможно(ну или как минимум, я не знаю как) покрыть юнит-тестами и нужно что-то еще. Так или иначе было решено написать свою библиотеку для автоматизации приемочного тестирования.
Читать полностью »
Расставляем по местам или «Пару слов в защиту Flash»
2014-07-30 в 21:57, admin, рубрики: Action Script, adobe air, android, as3, flash runtime, Flash-платформа, iOS, mobileСтатья является адаптированным переводом известного человека в своих кругах.
Actionscript 3 был выпущен в 2006. А уже в 2010 люди начали называть его мертвым (и это спустя 4 года после его появления) и продолжают делать то же самое еще на протяжении 4 лет.
Полезные материалы для мобильного разработчика #63 (21-26 июля)
2014-07-27 в 8:48, admin, рубрики: android, iOS, mobile development, windows phone, маркетинг, мобильные устройства, монетизация, Разработка под android, разработка под iOS, разработка приложенийНа этой неделе раскрылась интересная история о недокументированных процессах на iOS-устройствах, Хабр дружно разбирался, за что могут заблокировать разработчика в Google Play, вышел новый отчет Developer Economics, наконец, Yahoo купила Flurry — консолидация на рынке инструментов для разработчиков набирает обороты.
Apple не следит, а помогает пользователям, с помощью скрытых сервисов на мобильных устройствах
2014-07-26 в 11:48, admin, рубрики: iOS, безопасность, большой брат следит за тобой, желтая пресса, информационная безопасность, разработка под iOS, хакеры
Недавно Джонатан Здзиарски (Jonathan Zdziarski), на конференции Hackers On Planet Earth в Нью-Йорке, опубликовал доклад, в котором рассказал о нескольких скрытых, не документированных фоновых процессах, запущенных на всех iOS-устройствах. Эксперт предположил, что эти функции нужны Apple для того, чтобы организовывать слежку за пользователям при поступлении запросов от властей.
Джонатан Здзиарски, также известный как NerveGas, принимал активное участие в разработке джейлбрейков для первых моделей iPhone. Он автор нескольких книг по разработке приложений для iOS. Т.е. человек явно «в теме».
Удивительно, что Apple не проигнорировали этот доклад, а описали задачи каждого процесса. Для чего, по их мнению, служат эти сервисы.
Делаем красивый Progress Bar в iOS приложении
2014-07-25 в 16:06, admin, рубрики: iOS, iphone, objective-c, кастомные элементы, разработка под iOSДобрый день!
В этой статье я хочу описать способ, при помощи которого мы сделали такой красивый кастомный progress bar — на иллюстрации — в одном из последних проектов.
Задача была поставлена следующим образом:
- Картинки были нарисованны дизайнером.
- Progress bar должен перекрывать и блокировать весь UI.
- Элемент должен вызываться нотификацией в NSNotificationCenter.
- Должна быть возможность досрочно завершить действие элемента.
- Progress bar должен быть один, вне зависимости от количества посланных нотификаций.
Заинтересовавшихся в реализации прошу под кат.
Читать полностью »