![](https://habrastorage.org/files/490/f86/ac0/490f86ac01204a96bc1a00b2ae0cb016.jpg)
Аналитика в iTunesConnect
У встроенной в iTunes аналитики есть несколько преимуществ перед всеми остальными. Она бесплатная, автоматически работает без всяких настроек, предоставляет уникальные данные, никому больше не доступные (например, просмотры в AppStore).
Итак, iTunesConnect Analytics вышла из беты и обзавелась новыми фичами. Все данные, которые собираются в облаках эппла, можно поделить на три категории:
- данные из AppStore — количество просмотров, источники переходов на страницу приложения (работают из коробки, без дополнительных настроек и спец.ссылок!), активность маркетинговых компаний
- данные по продажам — количество покупок, количество скачиваний, in-app purchase, retention rate
- использование приложения — переходы по экранам, краши, ошибки и прочее.
Последняя категория собирается только в случае согласия пользователя, что уже не так вкусно, конечно.
Все это реализовано во вполне симпатичном интерфейсе и доступно уже сейчас.
Multitasking в iPad
В новой iOS 9 в iPad появится режим split-screen. Полноценная работа у двух приложениях будет доступна только на iPad Air 2, но наложение одного поверх другого и режим видео «картинка-в-картинке» можно будет увидеть и в более слабеньких моделях (mini, mini 2 и Air).
Сегодня много говорили о том, как в таких условиях приложениям работать и не страдать от тормозов, нехватки памяти и прочих десктопных проблем. Оптимизировать нужно нагрузку на CPU, GPU и работу с памятью. И если в первых двух случаях все просто будет медленно работать, то в последнем варианте система может убить ваше приложение, если поверх него наложить другое, тяжелое, приложение (да, такая несправедливость).
Для умелой работы с данными рекомендуют всегда держать в «активной» памяти только то, что приложению действительно необходимо (например, картинки, которые отображаются на экране). Все прочее следует помещать в NSCache или немедленно очищать при получении Memory Warning.
Для проверки того, все ли вы сделали правильно, рекомендуют запустить ваше приложение, а поверх него системную сафари. Если не грохнулось, значит пронесет и потом.
Проектирование и дизайн для Apple Watch
1. Personal communication
Девайс настролько персональный, насколько можно себе вообразить. Поэтому под страхом расстрела не рекомендуется беспокоить пользователя частыми нотификациями и пространными формулировками.
Рекомендуют догадываться о предпочтениях пользователя и перестраивать интерфейс. Например, системное приложение Sports запоминает выбор пользователя и его вкусы и предлагает вероятные варианты занятий спортом прежде других.
2. Holistic Design
Это красота и аккуратность. Часы сливают железо и софт в едином экстазе, и поэтому нужно использовать черный фон и выравнивание край-в-край в своих приложениях. Так сложно отличить, где закончился экран и начался корпус.
Также нужно использовать Digital Crown, к которой у нас в watchOS 2 есть полный доступ. И не забывать про Haptic Feedback — это звуки и Taptic Engine. Чем богаче приложение на реакции, тем проще им пользоваться на ходу.
3. Lightweight interaction
Этот пункт отлично обсосали еще в Android Wear Guidelines. Мысль в том, что приложение на часах используют в среднем в течение 5 секунд. За это время нужно успеть передать всю важную информацию, и на помощь нам приходят Glances и Complications. Ну а если есть что-то важное, то нужно использовать Handoff для перенаправления пользователя в релевантное место основного приложения.
Designing for Future Hardware
Если помните, в прошлом году на WWDC была угарная сессия про дизайн-мышление, быстрое прототипирование мобильных приложений в Keynote и процесс создания сервиса по поиску тостов в Сан-Франциско.
В этом году те же ребята рассказывают, как сделать умный тостер. С изготовлением прототипа, тем же Keynote’ом и прочими оригинальными подходами. В apple они занимаются придумыванием и изготовлением продуктов (Watch, iPhone, iPad и прочих), так что сессия очень полезна и имеет реальное отношение к действительности. Советую посмотреть, словами такое не передать.
Не забывайте, с чего все начиналось:
WWDC15. День первый. Keynote
WWDC15. День второй. Подробности
Комментарии (12)
olegi
11.06.2015 15:17Lightweight interaction
А есть какие-то новые API чтобы понять, что пользователь «только взглянул» и «пользователь не только взглянул, но и стал всматриваться»?mc_murphy Автор
12.06.2015 02:47Есть отдельно выделенные куски приложения на часах — Glances, Notifications, Complications. Как правило, именно их просматривают быстро и на ходу.
А основное приложение WatchApp уже предполагает чуть более продолжительное взаимодействие.
achekalin
11.06.2015 18:19> Для умелой работы с данными рекомендуют всегда держать в «активной» памяти только то, что приложению действительно необходимо
Мне одному кажется, что за обратное руки надо отрывать всегда, не важно, на iPad ли запущен софт, или на супер-мега-компьютере? ) Может, хоть этот подход научит иных девелоперов писать чуть аккуратнее, а то прямо обидно бывает, когда после 15 минт игры во что-то такое, простенькие по графике, корпус девайс стал заметно теплый, а батарея — не менее заметно «уменьшилась».mc_murphy Автор
12.06.2015 02:51+1На сессии как раз рассказывали про системное приложение, которое отображает главное меню с иконками в iOS. Они где-то 20 минут показывали, что правильное решение для всех крайних ситуаций совсем даже не тривиальное.
Поэтому отрывать руки сразу не надо — ведь разработчиков много, а опытных и толковых мало. А надо прививать культуру и сессии такие рассказывать.)sman
12.06.2015 10:17Если не трудно, поинтересуйтесь пожалуйста у разработчиков Apple (если предоставится возможность), почему Springboard так сильно зависит от числа установленных приложений? Дольше выполняются операции по удалению приложений (переход в режим удаления), больше занято оперативной памяти — кажется что возможности для оптимизации должны быть, тем более у них. Ещё интересно как построена система QA у них, используют какие-то общедоступные сервисы/технологии или есть своё специализированное ПО? Пробовали ли они поставить на устройство 300-500 приложений и поработать с ним?
Redgard
18.06.2015 13:08+1Некоторые разработчики гонятся за кросс платформенностью в ущерб производительности. Есть и технологии и фреймворка от Apple которые позволяют писать эффективный нативный код. Мы должны донести это сообщения до разработчиков. Я стараюсь отдавать приоритет эксклюзивным приложениям.
G0ran
А допустим на The New iPad это не будет доступно, когда я обновлюсь до iOS 9?
corle
К сожалению, нет.
painjkee
Уверен, что после выхода джейлбрейка, один из первых твиков для 9 оси будет включение данного режима на всех планшетах. И что-то мне подсказывает, что все будет работать без каких-либо проблем, по крайней мере на mini retina и air и дело тут не в нехватке оперативной памяти, как где-то писали, а в банальном маркетинге новой модели планшета.
Redgard
Это было так с iPhone 4S где все вычисления происходили не на устройстве но у iPad Air 2 в два раза больше памяти и дополнительное третье ядро.
Такие приложения как Xcom занимают почти всю память, это можно легко проверить если закрыть игру, открыть Safari и потом открыть игру заново — iOS начнет загружать игру заново. У меня у самого такое было каждый раз на iPad mini. И это совсем не экстремальный пример, очень часто нужно подсмотреть в интернет информацию про прохождению в процессе игры.
Теперь представим себе как Safari и Xcom будут работать одновременно — ответ, никак. Я уверен что игра будет перезагружаться все время или приложения постоянно будут вылетать одновременно.
Вы можете ответить — так нечего запускать такое огромное приложение в окне и это уже будет идеалистический спор. Может и на Android это прокатило где нет почти контроля над user experience, но на iOS все должно быть максимально просто и быстро.