Karhin’s Blog
Apps, Design and Music
Later ↑

Пять последних функций iOS, о которых вы не знали

Собрал пять моих любимых фичей, которые делают работу с iOS намного приятнее. Некоторые из этих функций вскользь упоминались на презентациях, некоторые выпускали с неосновными обновлениями операционной системы и про них уже все забыли.

AirPods Pro можно использовать как AirTag и удалённо блокировать

Обновлённое приложение Find My позволяет отслеживать AirPods и даже получать уведомления, когда они оказались где-то далеко от вас. Устройства Apple уже несколько лет умеют общаться друг с другом в фоне с помощью блютуза, а ещё передавать идентификаторы устройств и геолокацию на сервера Apple.

Как-то провёл эксперимент: отправил Катю гулять с моими наушниками. Смог отслеживать её геолокацию практически в реальном времени.

Совсем недавно в одну из последних iOS 14 и iOS 15 добавили фичу с удалённой блокировкой AirPods, как с iPhone. Теперь воровать наушники нет смысла, а при покупке с рук нужно проверять на предмет блокировки. На наушниках должна быть версия прошивки не ниже 4A400. Если ниже, то необходимо обновить. Это не совсем тривиальная операция:

  • поместите наушники в кейс;
  • подождите, пока зарядятся;
  • подключите к вашему iPhone;
  • скорее всего, они скоро обновятся.

App Privacy Report

Моя любимая функция как безопасника, но вам тоже понравится. С помощью App Privacy Report можно отслеживать основную активность приложений: доступ к фотографиям, камере, контактам, геолокации, сети (включая IP адреса и домены) и так далее.

Функция доступна с iOS 15: Settings → Privacy → Листаем в самый низ → App Privacy Report.

Уже есть пример из жизни, когда это помогло. Приложение Яндекса в фоне отслеживало мою геолокацию через виджет погоды с уровнем разрешения «Пока использую приложение». Через App Privacy Report я смог это отследить и отобрал у приложения разрешение.

Drag-and-Drop в iOS

Одна из моих любимых функций, которая очень давно была в iPad, но совсем недавно появилась в iOS. Спросил у своих знакомых, а они про нее не слышали. Единственный недостаток в том, что телефон придётся брать в две руки.

Тягать между приложениями можно ссылки, картинки, текст и вообще почти всё, что угодно. Попробуйте прямо сейчас перетянуть фотографию из приложения Photos в Telegram.

Drag-and-Drop скриншота домашнего экрана в мой канал.

Постукивание по задней крышке

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

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

Функция доступна с iOS 14: Settings → Accessibility → Touch → Back Tap. Советую прогуляться по Accessibility: в iOS очень много прикольных функций спрятано именно там.

У меня при двойном постукивании открывается центр уведомлений, а при тройном центр управления. Это намного удобнее, когда пользуешься телефоном одной рукой. Только не рассказывайте, что можно смахнуть пальцем снизу: от этого жеста болит большой палец.

Магия Back Tap в действии.

Режимы микрофона в звонках

Одна из самых глючных функций, которую иногда сложно включить и выключить по неизвестным причинам, но которая сделала мои AirPods чуть менее бесполезными на улице. До появления изоляции голоса я не мог нормально разговаривать через наушники из-за внешних шумов и ветра: люди постоянно жаловались, что меня плохо слышно.

Во время звонка откройте центр уведомлений, сверху будет кнопка «Режим работы микрофона». Иногда не получается переключить режим; мне помогает перезагрузка телефона и повторный звонок. Функция доступна не только в iOS, но и в macOS и iPadOS.

В помещении на громкой связи рекомендую отключать, изоляция голоса глушит сам голос. Надеюсь, что исправят нелепые баги в следующих обновлениях.

Решаю важные вопросы с включенной изоляцией голоса.

Если вы знаете какие-то крутые функции, расскажите в комментариях.

Красивый Email за десять минут

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

Регистрируем домен

Это самый длительный и тяжелый момент. Во-первых, нужно придумать и найти свободный домен. Если вы потратите здесь больше трёх минут, то я не виноват, что у вас ушло больше времени, чем в заголовке. Во-вторых, нужно еще походить по разным сайтам и найти там, где будет дешевле.

Домен – это часть адреса от точки до точки, если очень просто. Домены считают справа налево. Например, в karh.in часть in это домен первого уровня, а karh это домен второго уровня. Домены второго уровня обычно платные. Домены первого уровня получают по заявкам и за очень большие деньги.

Всю связку доменов karh.in называют хостнеймом (hostname).

Есть домены третьего уровня за которые тоже нужно платить, типа kargin.co.uk или kargin.aeroport.fr. Но это специализированные предложения. Вообще, самое крутое, когда у тебя короткий домен, типа the.tj или t.me. За такие домены иногда платят миллионы баксов.

Я покупаю уже несколько лет домены у Name.com, потому что чаще всего беру какие-то специфичные домены первого уровня, а их сейчас очень много. Если вы собрались брать национальную зону (по названию государства), типа by или ua, то лучше смотреть у локальных регистраторов, у них будет дешевле. Например, у REG.RU сейчас можно купить ru за 200 ₽ или $2.70. В общем, вбивайте в поиске по маске “.club купить домен”.

Найти хороший домен – это самое сложное.

Обращайте внимание на сумму продления: в первый год могут попросить $0.01, а за продление $49.00. Для регистраторов обычное дело.

С покупкой никаких проблем возникнуть не должно, обычно, там простая и быстрая регистрация. Не сложнее, чем на Алике или Озоне. Возможно, потребуется указать свой адрес, но не пугайтесь – обычная практика и требование разных законодательств. Не забывайте, что оплачивать такие штуки лучше через виртуальную карту.

Хостинг

Этот момент вообще любого может отпугнуть. Самому держать свою почту, конечно, намного конфиденциальнее и безопаснее (пока не найдут новую уязвимость нулевого дня, ха-ха), но, если вы не собираетесь обсуждать планы захвата мира, а злое АНБ только сидит и думает, как прочитать вашу очередную рассылку от МдаМода со скидками 1000%, то можно взять у компаний, которые делают на этом бизнес.

Есть предложение от гугла по $6 за один почтовый ящик. Мне сложно комментировать без мата, откуда эта цена: ребята продают воздух.

Есть условно-бесплатное предложение для 5 почтовых ящиков от Apple, идёт бонусом с iCloud+. Намного интереснее, чем от гугла.

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

Я использую почту от Яндекса, потому что она бесплатная до 1000 почтовых ящиков, которые можно зарегистрировать, если вы собираетесь с них что-то писать. Если не собираетесь, то расскажу, как приблизить это количество к бесконечности.

К сожалению, пока писал этот пост и делал инструкцию, произошло кое-что интересное. Яндекс закрыл регистрацию в 360 (Connect) для физических лиц. В общем, передаю их менеджерам и управленцам привет. Будем переносить почту к Apple.

Теперь десяток моих некоммерческих проектов и поделок должны иметь российский ИНН. Спасибо, Яндекс, и до свидания.

Настройка Custom Email Domain в iCloud+

Переходим по адресу Custom Email Domain. У меня уже был добавлен адрес karh.in, но проблем с добавлением не должно возникнуть.

Если у вас уже привязана почта, то можно ввести существующий адрес и на него придут инструкции по дальнейшей настройке. Я уже забыл про Яндекс, поэтому нажимаю, что у меня нет почты.

На мой основной iCloud пришла информация, которую необходимо прописать в настройках DNS. Аналогичная информация доступна прямо на этой же странице при нажатии на кнопку “View” в разделе Update your domain registrar’s settings.

DNS – это система идентификации в интернете. Вы же слышали про IP адреса? Ну такие, типа 192.168.0.1 по которым вы заходите в настройки роутера. Есть еще буквенные адреса, типа google.com. Под капотом, на самом деле, есть отдельный сервис, который соотносит вот этот google.com с его IP адресом.

В ближайшем будущем IP адреса станут очень сложными, но они смогут уникально идентифицировать вообще каждое устройство в интернете. Фраза "вычислю по айпи и набью лицо” намного ближе к реальности.

Но DNS отвечает не только за такую конвертацию, там ещё содержатся всякие разные данные про сервера. Например, адрес почтового сервера, который мы сейчас заполним.

Apple предлагает настроить сразу несколько записей: TXT, SPF, MX, DKIM. Очень сложные слова, но попробую объяснить очень просто, что это за записи.

  • С помощью TXT записи сервер Apple проверит то, что именно вы являетесь владельцем домена.
  • С помощью MX (Mail Exchanger) записи определяется адрес по которому другие почтовые сервера должны доставлять письма.
  • SPF и DKIM нужны для того, чтобы получатель почты мог определить, что именно ваш сервер отправил сообщение. Звучит сложно, но электронная почта – это децентрализованный сервис, где такие вещи необходимы для того, чтобы избежать спама и поддельных сообщений.

Думаю, что вы уже устали от непонятных слов и всякой теории, но вдруг пригодится. Ищем в настройках вашего аккаунта, где вы покупали почтовый домен, кнопку “Manage DNS Records” или “Настройки DNS”.

У меня уже есть запись от Яндекса, которую я смело удаляю. Остальное заполняется из таблички, которая пришла от Apple. Там указан тип записи и что в него нужно ввести.

Есть такой момент, что в процессе заполнения, панель управления может поругаться на неправильный формат записей, но тут ничего страшного. Попробуйте убрать кавычки или точку в конце. У Name.com так и происходит с точкой, а кавычки у SPF записи не нужны.

Я провозился дольше из-за странной ошибки, связанной с проверкой SPF записи, которая никак не упоминается в документации от Apple. У Тимура получилось с первого раза по этой статье (у него был черновик). Обратите внимание на TTL, если он есть в настройках DNS; укажите 60 минут (3600 секунд) на все записи, которые просит Apple.

TTL (Time To Live) – это время, которое указывает сколько клиент, запрашивающий запись, должен хранить у себя ответ перед тем, как запросить запись снова.

Спустя минуту получаем заполненную табличку.

Возвращаемся в настройки и нажимаем “Finish Setup”. Если всё окей, то вы получите соответствующее сообщение, иначе проверьте записи DNS и прочитайте сноску выше. На других устройствах появится уведомление, что вы начали использовать новый почтовый адрес с вашим iCloud в iMessage.

Та-дам. Я переехал на почту от iCloud.

Я собирался рассказать про то, как сделал безлимитные адреса в Яндексе. У них есть возможность перенаправлять письма с несуществующих адресов на какой-либо существующий. К сожалению, у iCloud такой возможности нет. У меня был десяток адресов, которые я использовал вместо функции “Hide My Email” (yandex@karh.in, uber@karh.in и другие).

Отправил письмо в iCloud с просьбой добавить такую функцию. Мне сразу сказали, что не ответят.

UPD: В iCloud добавили возможность ловить все письма, которые приходят на домен.


Мне подсказали несколько других хостингов:

  • Zoho. 5 бесплатных ящиков, а потом по евро баксу за пользователя.
  • Mail.ru. Бесплатно и с рекламой. Подозреваю, что может стать такой же ловушкой Джокера, как и Яндекс.

Если у вас возникли какие-то вопросы или вы знаете альтернативный сервис получше, то расскажите про это в комментариях. Их можно оставлять без регистрации.

Как я провёл 2021 год

Это был очень сложный год и, наверное, один из самых сложных в моей жизни. Но что-то хорошее было, было же?

Окончание магистратуры

В начале этого года стал магистром. Теперь у всех синие дипломы, а у меня еще и красный есть. Если кто-то знает, как ещё один диплом может пригодиться в жизни, кроме трудоустройства в Apple и Microsoft, то пожалуйста расскажите. Мне будет очень интересно.

Написал одну большую книжку, чтобы дали книжку поменьше.

Пока учился, придумал алгоритм для извлечения основного содержимого из веб-страниц. На защите мне сказали, что у него как-то плохо с практическим применением и непонятно, что с ним делать, хоть я и пытался объяснить. На его основе работает Artykul, который до сих пор в бете. Надеюсь, в следующем году мы его выпустим в каком-то виде.

Кстати, учёба была весёлой. Разобрался с функциональным программированием и вспомнил математическое, потыкал кубы данных, написал нейросеть своими руками и поделал много других интересных вещей.

На вручении подкидывания шапочек не было, а просто пришёл, расписался и забрал диплом. Заскучал и купил себе уже устаревший 12 айфон. Не знаю, кто про это рассказывает после 2015 года, но чему-то же надо радоваться? Кстати, переход с базовой модели на Pro более ощутим, чем прыжки с Xr на 11, с 11 на 12 и так далее.

Я там довольный, поверьте на слово: ещё не знал, что это последняя крупная покупка в этом году.

Два месяца в Лиде

Прикольнулся и устроил себе самоизоляцию в Лиде на два месяца. Я уже и забыл, как это клёво жить в доме и родном городе. Первое время напрягало, что все магазины закрываются в 10 вечера, а весь движ останавливается ещё раньше, но быстро привык.

В один прекрасный день поднялась температура. Подумал, что обычный вирус; через полторы недели всё было нормально. Никогда бы про это не вспомнил, если бы спустя несколько месяцев не начали выпадать волосы и не сломались запахи и вкусы. Я не доктор, но выводы сделал.

Я фанат пиццы. Перепробовал почти все пиццы в Лиде. Какие выводы сделал? Если очень хочется, то у Тутаки неплохая. Всё остальное какое-то совсем плохое и вообще нет нормального сервиса с быстрой доставкой.

На первой Пицца Смайл, а остальные от Тутаки.

В процессе самоизоляции начал писать Artykul и вообще писать много кода. В перерывах много гулял. Лида очень компактный город: из одной части города в противоположную можно пройти пешком за 40-50 минут. Сейчас не очень понимаю, почему ездил на автобусах, когда в ней жил и учился в школе.

Попросил лебедей попозировать, они не отказали.
Котя пьёт водичку из ведра, как и ты утром 1 января.
Тори, которой уже 13 лет, встречает после моего отсутствия.

Ходьба

В этом году начал особенно много ходить. Я как-то прикидывал по расстояниям с апреля по ноябрь: мог бы пройти пешком из Минска в Питер и обратно. Если вы хотите себя держать в форме, не набирать вес, не заработать геморрой и варикоз, у вас повышенное давление и так далее, то ходите. Это полезно.

Статистика за холодный декабрь.

Ещё один приятный бонус от прогулок заключается в том, что лучше узнаёшь город и место в котором живёшь. В общем, я амбассадор НКО “Ходить каждый день в любую погоду” и всех призываю к этому.

Первое фото рядом с ботаническим садом. На втором фото национальная библиотека.
Блин, ну вот только собирался.

В 2021 году впервые взял полноценный отпуск на две недели за несколько лет. Я вообще так не отдыхал со второго курса университета, когда начал совмещать учёбу с работой. Знаете чем я занимался каждый день? Гулял.

Томатное пиво

Открыл для себя томатное пиво и перепробовал почти всё, что можно было найти на полках в Минске, а это больше двух десятков всяких разных банок от самых разных производителей. Я не люблю томатный сок, но с пивом нормально.

Первое нормальное, второе так себе и третье вообще ни о чём.

Грустная история в том, что теперь очень сложно найти что-то новое, а это пиво такое, что чаще всего не будешь пить больше одной бутылки. Tomato Soul от Brewmen, наверное, исключение.

Кстати, не понимаю, как люди пользуются Untappd, он же глючный и тормознутый. Понимаю, что там весь пивной движ, но принципиально им не пользуюсь.

Клёво, что появляется всё больше крафтового пива и нормальных заведений. SPIN Bar моё любимое, всем советую, если есть или будете в Минске.

Поделки

В этом году было много поделок, которые были разработаны, но не были запущены. В этом полная просадка. Собирались запустить приложения из прошлого года, но так до них и не дошли.

В любом случае, то, что увидело свет:

  • Этот блог и две его итерации.
  • Artykul почти увидел свет, но до сих пор в бете.
  • Мудкэт ну вот почти-почти в бете.

Помянем, то, что осталось на диске и в репозиториях гитлаба:

  • Периодик. Трекер подписок и периодических платежей.
  • Справы. Таск трекер для дел, которые нужно сделать сейчас, а не через тысячу лет.
  • Телехаб. Телеграм каналы с дискавером, которого до сих пор нет в официальном приложении. Судя по политике сервиса, нам не по пути.
  • Папера. Грустная история про сервис блогов с нормальным редактором.
  • Фотоникс. Эксперимент с подходом к редактированию фотографий.

Короче, за целый год я запустил только блог.

Уточкам всё равно, что сегодня 31 декабря.

Первый iPhone

Возле первого айфона часто вижу приписки «Революционный», «Прорывной» и так далее. У меня совсем другое мнение по этому поводу: большая часть аргументов по поводу его исключительности притянута за уши.

Архивные фотографии первого айфона с сайта Apple.

Не буду спорить с тем, что он красивый и определил направление развитие смартфонов в целом, но тут есть скользкий момент.

Первый айфон часто сравнивают с КПК (прикол, было же такое слово) и телефонами блэкберри с клавиатурой. Большой емкостный сенсорный экран с поддержкой нескольких нажатий очень выгодно выглядит на фоне таких конкурентов.

Айфон не был первым телефоном с таким дисплеем, им был LG Prada. И он даже умел записывать видео. Первый айфон не умел.

Фотографии LG Prada с Mobile Review.

В революционном первом айфоне не было сторонних приложений, только встроенные от Apple. Ну вот не выпустили инструменты для разработчиков и не разработали песочницу для них. Получилось такое MVP, где почти всё есть, но ничего нет. App Store появился только с релизом айфона 3G.

Альтернативой являлись веб-приложения. Это было крутое решение на несколько лет вперёд, но, к сожалению, сами Apple полностью забили на них, чтобы не создавать конкуренцию своему же магазину App Store.

Google наоборот последние несколько лет продвигает Progressive Web Application. Это веб-сайты, которые вы можете установить на домашний экран и они даже могут работать без интернета. На Android с Chrome в большинстве случаев они могут заменить нативные приложения, ведь веб-сайты теперь даже пуши присылать умеют, а на iPhone и iPad не умеют, потому что потому.

Первым прорывным айфоном я считаю 3GS. А первый айфон был устройством без нормальной камеры и записи видео, без сторонних приложений, без вменяемой мультиязычности, без поддержки режима модема. Для первой настройки требовалось подключение к компьютеру, а прикол про то, что буфер обмена в iOS появился только в спустя два года, вы и так, наверное, слышали.

Прерываемые анимации

Анимации - это весело и красиво, но восприятие даже самой эффектной анимации может испортить их реализация. Анимации в интерфейсе должны быть прерываемыми и не блокировать взаимодействие с приложением.

Пример хорошей анимации в диспетчере приложений iOS. Вы можете смахнуть приложение и оно закроется, но перед закрытием есть небольшой промежуток времени, когда можно словить улетающий экран и вернуть его на место. В это временное окно можно и дальше пролистывать список приложений: анимация ничего не блокирует.

Успеваю словить улетающий экран приложения.

Пример плохой анимации в приложении Фитнес iOS. При открытии медальки проигрывается длительная анимация, которую нельзя пропустить и вообще как-то остановить шоу с медалькой. Тут ещё есть момент с тем, что экран можно закрыть только нажатием на кнопку назад.

Всё заблокировано, пока проигрывается анимация.

Я понимаю, что разрабатывать прерываемые анимации сложно, когда это цепочки из разных анимаций, но всё таки старайтесь давать возможность пользователям прерывать анимации, длящиеся дольше 300-400 миллисекунд. Особенно, если они частые.

Если интересно посмотреть или почитать про анимации, то вот несколько ссылок. Они про iOS, но всё, что в них описывается, будет интересно дизайнерам и разработчикам под Android.

  • Лекция Designing Fluid Interfaces про то, как делать отзывчивые интерфейсы.
  • Custom paging в iOS. Реализация собственной пагинации в iOS с поиском опорной точки на основе скорости жеста.
  • Вытягивающаяся карточка. Развитие предыдущего способа реализации собственной пагинации, но теперь для вытягивающихся карточек.
  • Механика замедления в UIScrollView. Про математику в Scroll View iOS, которая делает его отзывчивым и естественным.
Earlier ↓