Как стать автором
Поиск
Написать публикацию
Обновить
37.5

iOS *

Мобильная ОС компании Apple

Сначала показывать
Порог рейтинга
Уровень сложности

iOS 6 beta 1 — первый взгляд

Время на прочтение5 мин
Количество просмотров6.7K
image
Всем доброго дня!
Сегодня решил поставить на свой iPod Touch 4g первую бета-версию iOS 6, которую Apple представили 11 июня на WWDC 2012. Захотел посмотреть, что же нам добавила Apple, и что обновила. Подробности под катом.
Читать дальше →

Интегрируем iOS-приложение с Evernote: первые шаги

Время на прочтение9 мин
Количество просмотров8.2K
image

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

Сейчас все больше и больше мобильных приложений поддерживают возможность чтения и отправки информации в Evernote. Нам это очень нравится, и мы бы хотели, чтобы так продолжалось и дальше — чем больше у вас будет способов получить доступ к своим заметкам, тем лучше (во всяком случае, нам так кажется). Будучи разработчиком, вы получаете выход на 30 с лишним миллионов наших пользователей и можете мгновенно увеличить ценность своего приложения в глазах этих людей, открыв им возможность связи с их внешней “цифровой памятью”.

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

В этом посте мы опишем конкретные шаги для интеграции Evernote в тестовое приложение iOS. Мы начнем новый проект в Xcode, загрузим и установим Evernote Software Development Kit (SDK) и создадим простое приложение, которое будет взаимодействовать с Evernote через Cloud API.
Читать дальше →

Core Data: импорт данных с минимумом кода

Время на прочтение5 мин
Количество просмотров11K
Как и многие разработчики, я не очень люблю писать много кода, особенно там, где это кажется не нужным — на ранних стадиях стараюсь придумать, как этот код оптимизировать и обобщить. Что касается непосредственно Core Data, мне всегда казалось, что все эти бесконечные фетчи и создания новых объектов можно упростить. Тогда я открыл для себя часто упоминаемый на хабре паттерн ActiveRecord и его очень хорошую (на мой взгляд) реализацию на Objective-C — MagicalRecord. Углубляться в описание не буду — все очень доступно описано на странице проекта.
Следующим шагом упрощения должен был быть маппинг данных, поступающих извне.

Читать дальше →

Исследование приложений обмена местоположением

Время на прочтение6 мин
Количество просмотров73K
Доброе время суток, Хабр

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



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

iOS 6 beta доступна для скачивания разработчикам

Время на прочтение1 мин
Количество просмотров2.5K
Сегодня во второй половине дня Apple обещает выложить iOS6 beta для разработчиков. Официальный релиз состоится осенью, но разработчики заранее получат систему, чтобы адаптировать свои приложения к новым API и изучить более 200 новых фич, которые Apple встроила в iOS 6.

  • Унификация телефонного номера и Apple ID
  • App Banners для веб-сайтов: по нажатию на баннер в браузере iOS автоматически устанавливает на устройство соответствующее приложение
  • Новые карты с 3D-интерфейсом вместо Google Maps
  • Браузер Safari с интеграцией всех устройств, так что можно открыть страницу на компьютере, а продолжить сёрфинг на iPad
  • Сохранение веб-страниц целиком для дальнейшего прочтения в офлайне

Читать дальше →

Как хотел срубить бабла с корпорации добра

Время на прочтение3 мин
Количество просмотров26K
У меня чудесная IT работа в русской провинции.
К тому же приличная зарплата. Даже по столичным меркам.
image
Несмотря на это, перед сном я мечтаю. Среди алчных мечт — получать какие-нибудь небольшие деньги за ничего-не-делание.
Ну, чтобы я спал, а денежка шла.
Доллар за день.
И доллар за ночь. Глядишь, за год можно положить под елку очередному сыну очередной iPad (=365*2$).

Понятно, для осуществления мечты нужно иметь Xcode+iPhone. Или Eclipse+Droid. Или VS+Mozart.
Мечты сбываются.
Но не сразу.

Читать дальше →

Icenium: кросс-платформенная облачная среда для создания мобильных приложений

Время на прочтение2 мин
Количество просмотров11K
Icenium – это совершенно новая интегрированная облачная среда (integrated cloud environment — i-c-e — Icenium) для разработки мобильных приложений. Сервис, который является продуктом подразделения Telerik, только что вышел на стадию приватного бета-тестирования и находится в поиске разработчиков, желающих опробовать его. Первоначально Icenium фокусируется на создании iOS и Android приложений, а позже надеется перейти к другим мобильным платформам, и, в конце концов, к серверам и десктопам.

Читать дальше →

Оптимизация ресурсов iOS приложений

Время на прочтение5 мин
Количество просмотров6.1K
При сборке приложений под iOS для оптимизации ресурсов используется скрипт iphoneos-optimize из набора XCode. Работает он отлично, но если копнуть поглубже, то становится ясно, что некоторые файлы не пережимаются, а другие хоть и немного уменьшаются, но все-равно далеки от идеала. Можно сказать, что задача скрипта сделать файлы более совместимыми с iPhone, чтобы они быстрее читались или распаковывались, но скорее всего это имело смысл лишь на старых iPhone 1 и иже с ними, а уже на процессорах 1ГГц с ARM 7 это откровенно не актуально.
С помощью простых оптимизаций и парочки программ из набора MacPorts можно добиться существенного уменьшения PNG и JPG картинок в конечной программе, а при желании и других видов данных.
Читать дальше →

WWDC и iOS 6: что мы ждем?

Время на прочтение2 мин
Количество просмотров29K
Конференция Apple Worldwide Developers Conference (WWDC) начнется уже в понедельник, 11 июня. Что мы больше всего ждем от нее? Учитывая, что iOS 4 была представлена в июне 2010 года, iOS 5 — в июне 2011, я думаю мы все ждем представления новой версии мобильной операционной системы Apple. Конечно, пока мало что про нее известно, но можно выделить ключевые позиции, которые кажутся наиболее интересными в представлении iOS 6.

Читать дальше →

Как НАДЕЖНО защитить in-App Purchase от ломалок

Время на прочтение4 мин
Количество просмотров9.5K
Совсем недавно я писал статью Как защитить in-App Purchase от ломалок . Прошло немного времени, а хакеры на месте не сидят. Тот метод защиты оказывается можно обойти, не очень сложно. Под катом метод, который намного надежнее.
Читать дальше →

Баннеры WWDC за последние 5 лет

Время на прочтение1 мин
Количество просмотров1.1K
2007
Apple анонсировала iPhone в январе 2007. WWDC 2007 начиналась 11 июня, разработчики надеялись, что компания анонсирует SDK, но Apple не сделали этого, а позволили разрабатывать лишь веб-приложения для Safari.

image
Читать дальше →

Особенности AR в iOS и Android

Время на прочтение5 мин
Количество просмотров8K


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

Читать дальше →

Очередная реализация ActiveRecord на Objective-C

Время на прочтение9 мин
Количество просмотров4K
Хочу поделиться очередной реализацией паттерна ActiveRecord на Objective-C, а конкретно для iOS.

Когда только начинал использовать CoreData в iOS разработке, то уже тогда появлялись мысли о том, что это взаимодействие можно как-то упростить. Спустя некоторое время я познакомился с ActiveRecord из RubyOnRails, и тогда я понял чего мне не хватает.
Немного поискав на гитхабе нашел массу реализаций, но по разным причинам они мне не понравились. Одни написаны для CoreData, а мне она не нравится, в других нужно создавать таблицы руками, или писать raw sql-запросы. А в каких-то код был до неприличия ужасен, я и сам порой пишу не очень чисто, но огромный забор из вложенных if/switch/if/switch это чересчур.
В конце концов решил написать свой велосипед, без CoreData и без SQL для пользователя.
Главной причиной этой разработки был, есть и, надеюсь, будет — интерес к разработке.

Вот что из этого всего вышло.
А под катом небольшое описание возможностей и реализации (на самом деле много текста и кусков кода, резюме в самом конце статьи).
Читать дальше →

Ближайшие события

Как создавать эффективные мобильные решения для предприятий

Время на прочтение4 мин
Количество просмотров2.3K
Еще совсем недавно коммуникационные вопросы решались на бумаге, телефонными разговорами и личными встречами. С появлением персональных компьютеров, потом локальных вычислительных сетей, а затем и сети Интернет, необходимые вопросы, казалось бы, решились: на экранах своих мониторов мы видим письма электронной почты, отчеты, таблицы, картинки, презентации и интерфейсы различного программного обеспечения.

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

Читать дальше →

Appsplit: еще один краудфандинг для мобильных приложений

Время на прочтение2 мин
Количество просмотров3.8K
Краудфандинг? Определенно самый модный тренд этого года. Все знают про Kickstarter, совсем недавно мы писали про AppStori, засветился и SellanApp.com. Сегодня же проявилась еще одна платформа «народного софинансирования». Appsplit – еще один сервис, который позволяет программистам собирать средства на свои проекты. Appsplit, прежде всего, сервис для поддержки мобильных приложений. Ты можешь рассказать о том, что ты создаешь, каким образом ты хочешь собирать средства («открытый» проект позволяет тебе оставить деньги даже в том случае, если вся требуемая сумма не собрана) и сколько денег тебе нужно. Ты также можешь продавать права на определенные приложения, и даже акции своей компании. Наконец, ты можешь найти людей, заинтересованных в работе над твоей идеей.

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

Читать дальше →

Алгоритм Ляна-Кнута в реальном проекте, или как я делал читалку для iOS

Время на прочтение4 мин
Количество просмотров12K
Всем привет! В этот раз я хочу рассказать, как я реализовывал альтернативу iBooks. В своем предыдущем посте я писал об алгоритме расстановки мягких переносов в тексте. Он как раз и пригодился при создании своей читалки, оценить его работу можно наглядно в приложении. Но помимо этого, при реализации проекта мне пришлось столкнуться с многими другими интересными вещами, такими как парсинг и рендеринг HTML с CSS, реализация элементов управления с кастомным дизайном и т.п. Наш дизайнер rashapasta очень любит подкинуть мне задачек с эдаким нестандартным интерфейсом, который нужно реализовывать ручками, но обо всем по порядку.
Читать дальше →

Пара слов о Header Map в XCode

Время на прочтение3 мин
Количество просмотров5.7K
Семейство языков Си/Objective C/C++ нуждается в препроцессоре. Препроцессор пропускает компилируемый исходник через себя, прежде чем отдать текст на вход компилятору. Пожалуй самая важная часть работы препроцессора заключается в подстановке на место директив #include<имя-файла> содержимого указанного файла. Обычно указывают относительный путь (ex: stdio.h, sys/stat.h). Возникает закономерный вопрос — как препроцессор находит заголовочные файлы?

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

Но Apple как всегда вносит свои коррективы. При сборке в XCode дополнительно используются т.н. header map. Это индекс всех заголовочных файлов в проекте. Если XCode «знает» про foobar.h, то данный файл будет доступен просто по имени (#include<foobar.h>), вне зависимости от фактического размещения на файловой системе.

Это прекрасное решение — до тех пор, пока оно работает как задумано. К сожалению, механизм header map плохо документирован, что не способствует быстрому разрешению проблем. Постараюсь восполнить этот пробел.

Читать дальше →

One More Thing Conference 2012

Время на прочтение15 мин
Количество просмотров2K
День добрый, Хабр.

Недавно довелось побывать на One More Thing Conference 2012. Я какое-то время думал, писать об этом или нет. В конце-концов решил рассказать что это за событие и что познавательного я там узнал. Если вам интересна тема разработки для iOS и истории с этим сзвязанные, то добро пожаловать под кат.
Читать дальше →

Разработчик Dropzone заработал 8000$ за день, сбросив цену с 14$ до 2$

Время на прочтение1 мин
Количество просмотров1.5K


Всем известно, что людям свойственно покупать совершенно не нужные или не интересные им вещи в периоды скидок. Такой эффект испытал на себе разработчик приложения Dropzone для Mac OS X. Обычная цена на его приложение составляла 14$, но он решил поучаствовать в акции Two Dollar Tuesday и сбросил цену до 2$.

Статистика загрузок и немного текста под катом.
Читать дальше →

Искусство на кончиках пальцев. iOS иконки

Время на прочтение1 мин
Количество просмотров26K
Одна из главных особенностей App Store — он пробуждает в дизайнерах креативное мышление. Кажется, будто каждую неделю появляются отличные идеи для интерфейсов, что очень радует все коммьюнити.

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

От переводчика: примеры красивых иконок и еще немного текста под катом.
Читать дальше →