Рубрика «разработка под iOS» - 160

В iOS7 встроили синтезатор речи, теперь заставить свое приложение говорить вопрос пары строчек кода.

За синтез речи отвечает класс AVSpeechSynthesizer Достаточно передать ему текст обернутый в класс AVSpeechUtterance и текст будет прочитан смартфоном.

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

var speechSynthesizer = new AVSpeechSynthesizer ();
var speechUtterance =
  new AVSpeechUtterance ("Shall we play a game?");
speechSynthesizer.SpeakUtterance (speechUtterance);

Читать полностью »

В пятой версии XCode появился Continuous Integration. Он работает через XCode службу OS X Server ($20, AppStore).

XCode Service умеет все тоже что и любой Continuous Integration сервер, возможно чуть меньше. Огромный плюс — полная интеграция с XCode и свойственная Apple «работа из коробки». Я запустил авто-сборку проекта за полчаса, хотя раньше ни разу не настраивал CI сервер. И не нужно курить мануалы как правильно собирать приложение из командной строки, как включить эмулятор или запустить тесты на устройстве.

xcode continuos integration
Читать полностью »

Первый вопрос. Зачем?

Отладка Android NDK это сложно, отладка в Xcode решает 90% проблем. Но бывает необходимость иметь прототип игры в Win32. Например, что бы дизайнер мог обновить текстуру в игре и увидеть результат или, что бы снять видео игры или редактор уровней может иметь общий код с игрой и использовать OpenGL ES 2.0 для отображения уровня, или у вас нет Xcode или просто вы фан Visual Studio.
Читать полностью »

Как известно в последней версии SDK (фреймворк UIKit Dynamics) разработчики могут определять динамическое поведение для UIView объектов, а также других объектов, принимающих протокол UIDynamicItem.

В данной статье я хочу поделиться опытом использования таких объектов.

Целью было сделать анимацию, аналогичную той, что используется в приложении Messages на iOS 7:
Читать полностью »

Введение

Продолжая разрабатывать «pod» в определённый момент приходит понимание, что проект становится большим и похож на лапшу состоит из нескольких логических частей. Чем раньше приходит такое понимание, тем проще выделить различные сущности одного проекта в отдельные блоки. Например, одна часть проекта отвечает за установку соединения с сервером, другая сериализует объекты в JSON и наоборот, третья взаимодействует с UI и т.п. Каждую такую сущность можно выделить отдельным модулем, называемым «subspec» (для простоты изложения далее буду использовать слово «модуль»). Такой подход не только поможет гибче управлять разработкой «pod»'а, но так же даст пользователям вашего «pod»'а возможность использовать только нужные им модули, не захламляя свои проекты ненужным кодом.
Читать полностью »

Все мы ходили/ходим на собеседования. Каждый раз при подготовки к очередному собеседованию просматриваем основные темы, вспоминаем вопросы, которые нам задавали в предыдущие разы, или вопросы, которые сами задавали. Ниже хочу представить основные вопросы, которые часто (основано на личном опыте) можно получить на собеседовании на должность middle/senior iOS Developer. Так сказать, шпаргалка. Заодно можно проверить свой уровень знания платформы.
Читать полностью »

Нельзя не упомянуть опубликованные ранее статьи по этой теме — введение в Cocoapods и краткое резюме по созданию своего pod'а.
Последняя указанная статья дала толчок в нужном направлении, но не хватало знаний для полного понимания поданной информации. Цель данной статьи — максимально подробно описать процесс создания и использования своего собственного CocoaPod'а, далее для краткости — «pod». Ну и упорядочить свои познания в данной области.
Читать полностью »

В математике и логике синглтон определяется как «множество, содержащее ровно один элемент». Поэтому неважно, насколько велика сумка, каждый раз при попытке достать из неё шарик будем получать один и тот же. В каких ситуациях нужен синглтон в программировании? Подумайте о ресурсах, которые невозможно скопировать, но можно использовать совместно. Например, на iPhone установлен единственный модуль GPS и определять текущие координаты умеет только он. Класс CLLocationManager из фреймворка CoreLocation предоставляет единственную точку входа ко всем сервисам GPS-модуля. Кто-нибудь может подумать: если можно сделать копию CLLocationManager, можно ли получить дополнительный набор GPS-сервисов для своего приложения? Это звучит, как фантастика – вы создали два программных GPS по цене одного аппаратного. Но в реальности вы все равно получаете только один GPS единовременно, так как в iPhone есть только один GPS, который создает настоящие соединения со спутниками. Так что, если вы думаете, что создали супер-приложение, которое может манипулировать двумя отдельными GPS-соединениями одновременно, и хотите похвастаться этим перед друзьями, подумайте дважды.

Класс синглтона в объектно-ориентированном приложении всегда возвращает один и тот же экземпляр самого себя. Он обеспечивает глобальную точку доступа для ресурсов, которые предоставляет объект класса. Паттерн с такой функциональностью называется Синглтон.
В этой главе мы изучим возможности реализации и использования паттерна Синглтон в Objective-C и фреймворке Cocoa Touch на iOS.
Читать полностью »

Если не знаешь, надо не бояться, а узнавать.
Айн Рэнд “Атлант расправил плечи”

Советы начинающим iOS разработчикам

Добрый день, меня зовут Игорь Томич и я лектор курсов iOS-разработки и сооснователь онлайн курсов Master Up. Это мой первый пост в наш корпоративный блог, в котором я решил поделиться советами для начинающих iOS-разработчиков. Свое первое приложение для iOS я начал писать в начале 2009 года, а в мае 2012 году провел первый курс обучения по рарзработке под эту же платформу и к этому времени у меня скопилось достаточно “часто повторяемых ошибок” и путей их решения.
Читать полностью »

Сегодня мы бесплатно открываем Метрику для приложений для всех разработчиков. Она работает с iPhone, Android или Windows Phone. В ней мы объединили всё, что сами хотели бы от инструмента для разработчиков приложений. Прежде всего, понятный интерфейс, в котором нет ничего лишнего, — всего за несколько кликов вы можете найти ответ на любой вопрос об аудитории ваших приложений.

image

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

На мобильной секции на YaC о Метрике для приложений рассказывал Александр Кочубей, менеджер этого проекта. Сегодня Саша уехал на конференцию Apps World, поэтому этот текст не от его имени, но написал его именно им. Читайте под катом подробности о том, какие данные о работе ваших приложений будут теперь вам доступны.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js