WWDC15. День третий. Интересности

    В Сан-Франциско продолжается главная конференция разработчиков под Apple-платформы: iOS, Mac OS X и новую watchOS 2. Неделя в самом разгаре, сессии в основном технические. Уже более-менее понятно, с чем нам придется иметь дело в ближайшие месяцы, адаптируя и совершенствуя свои приложения к релизу новых систем, так что спешу поделиться новостями с вами.



    Аналитика в 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


    Дизайн-евангелисты эппл называют три принципа дизайна для 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. День второй. Подробности
    Redmadrobot 72,98
    №1 в разработке мобильных решений для бизнеса
    Поделиться публикацией
    Похожие публикации
    Комментарии 12
    • 0
      Полноценная работа у двух приложениях будет доступна только на iPad Air 2, но наложение одного поверх другого и режим видео «картинка-в-картинке» можно будет увидеть и в более слабеньких моделях (mini, mini 2 и Air).

      А допустим на The New iPad это не будет доступно, когда я обновлюсь до iOS 9?
      • +2
        К сожалению, нет.
        • 0
          Уверен, что после выхода джейлбрейка, один из первых твиков для 9 оси будет включение данного режима на всех планшетах. И что-то мне подсказывает, что все будет работать без каких-либо проблем, по крайней мере на mini retina и air и дело тут не в нехватке оперативной памяти, как где-то писали, а в банальном маркетинге новой модели планшета.
          • 0
            Это было так с iPhone 4S где все вычисления происходили не на устройстве но у iPad Air 2 в два раза больше памяти и дополнительное третье ядро.

            Такие приложения как Xcom занимают почти всю память, это можно легко проверить если закрыть игру, открыть Safari и потом открыть игру заново — iOS начнет загружать игру заново. У меня у самого такое было каждый раз на iPad mini. И это совсем не экстремальный пример, очень часто нужно подсмотреть в интернет информацию про прохождению в процессе игры.

            Теперь представим себе как Safari и Xcom будут работать одновременно — ответ, никак. Я уверен что игра будет перезагружаться все время или приложения постоянно будут вылетать одновременно.

            Вы можете ответить — так нечего запускать такое огромное приложение в окне и это уже будет идеалистический спор. Может и на Android это прокатило где нет почти контроля над user experience, но на iOS все должно быть максимально просто и быстро.
      • 0
        Lightweight interaction

        А есть какие-то новые API чтобы понять, что пользователь «только взглянул» и «пользователь не только взглянул, но и стал всматриваться»?
        • 0
          Есть отдельно выделенные куски приложения на часах — Glances, Notifications, Complications. Как правило, именно их просматривают быстро и на ходу.
          А основное приложение WatchApp уже предполагает чуть более продолжительное взаимодействие.
        • 0
          > Для умелой работы с данными рекомендуют всегда держать в «активной» памяти только то, что приложению действительно необходимо

          Мне одному кажется, что за обратное руки надо отрывать всегда, не важно, на iPad ли запущен софт, или на супер-мега-компьютере? ) Может, хоть этот подход научит иных девелоперов писать чуть аккуратнее, а то прямо обидно бывает, когда после 15 минт игры во что-то такое, простенькие по графике, корпус девайс стал заметно теплый, а батарея — не менее заметно «уменьшилась».
          • +1
            На сессии как раз рассказывали про системное приложение, которое отображает главное меню с иконками в iOS. Они где-то 20 минут показывали, что правильное решение для всех крайних ситуаций совсем даже не тривиальное.

            Поэтому отрывать руки сразу не надо — ведь разработчиков много, а опытных и толковых мало. А надо прививать культуру и сессии такие рассказывать.)
            • 0
              Если не трудно, поинтересуйтесь пожалуйста у разработчиков Apple (если предоставится возможность), почему Springboard так сильно зависит от числа установленных приложений? Дольше выполняются операции по удалению приложений (переход в режим удаления), больше занято оперативной памяти — кажется что возможности для оптимизации должны быть, тем более у них. Ещё интересно как построена система QA у них, используют какие-то общедоступные сервисы/технологии или есть своё специализированное ПО? Пробовали ли они поставить на устройство 300-500 приложений и поработать с ним?
              • 0
                А видео с этой сессии общедоступно?
                • 0
                  Lightweight interactions — session 805 (Apple Watch Design Tips and Tricks)

                  Designing for Future Hardware — session 801

                  Доступно в приложении WWDC.
              • +1
                Некоторые разработчики гонятся за кросс платформенностью в ущерб производительности. Есть и технологии и фреймворка от Apple которые позволяют писать эффективный нативный код. Мы должны донести это сообщения до разработчиков. Я стараюсь отдавать приоритет эксклюзивным приложениям.

              Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

              Самое читаемое