Как стать автором
Обновить
59.7

Разработка под iOS *

Популярная мобильная ОС

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

Когда закончится эра безграмотных мобильных интерфейсов? Воспоминания о курсе эргономики 1985 года

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

Друзья, вы уже в курсе, что IOS достигла версии 17, а Android версии 12? Уже более 10 лет как две огромные фирмы мучают людей и совершенно не собираются умнеть.
Начнем с простого действия. Которое на компьютерах называется ESC. Отмена. Или возврат к предыдущему состоянию. Функция та же что и у BACKSPACE, но не в применению к набору текста, а к любому действию, которое захотелось отменить.
Apple упорно лишает пользователей телефонов и планшетов этой функции.

Это явное насилие, ибо понять почему на клавиатуре нет этой кнопки невозможно. Тем более, что на компьютрах Apple она имеется. Но в планшете iPad ее нет.

Андроидные телефоны имеют кнопку назад. Сразу имели. А вот Apple сделала позорную недокнопку в левом верхнем углу. Вроде бы нужная кнопка что бы вернуться в предыдущее приложение, да вот заранее не предусмотрели и пришлось встраивать "костыль".

Вот я из "Почты" нырнул в какое-то приложение. И возврат обратно вот такой мизерной незаметной строчкой. < Mail. Попасть в нее пальцем ну мягко говоря не просто. Равно как и разглядеть.

Читать далее
Всего голосов 185: ↑158 и ↓27+131
Комментарии376

Новости

Приложение Хабра для Android и iOS

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров21K

Ну что, я же обещал сюрприз к новому году, хотя и переживал, что мы можем не успеть пройти ревью. Об этом знают даже не все мои коллеги, так как всю работу мы держали в секрете — вы узнаёте в числе первых!

UPD: пост можно прикрепить к 5 хабам — как только выбрал «Разработка под iOS», сразу прошли ревью!

Читать далее
Всего голосов 145: ↑135 и ↓10+125
Комментарии120

Как графический формат прошлого века привёл к zero-click exploit в iOS

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

Тема информационной безопасности в сфере интересов команды М.Видео и Эльдорадо, поэтому делимся с вами очередным интересным переводным тематическим материалом. В начале 2022 года Citizen Lab удалось выявить zero-click-эксплойт на основе NSO iMessage, использовавшийся для атаки на активиста из Саудовской Аравии.

В этой серии из двух постов мы впервые расскажем, как работает zero-click-эксплойт iMessage.

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

Рассматриваемая в посте уязвимость была устранена 13 сентября 2021 года в iOS 14.8 в рамках CVE-2021-30860.
Читать дальше →
Всего голосов 106: ↑106 и ↓0+106
Комментарии4

Хакаем CAN шину авто. Мобильное приложение вместо панели приборов

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

Я продолжаю изучать CAN шину авто. В предыдущих статьях я голосом открывал окна в машине и собирал виртуальную панель приборов на RPi. Теперь я разрабатываю мобильное приложение VAG Virtual Cockpit, которое должно полностью заменить приборную панель любой модели VW/Audi/Skoda/Seat. Работает оно так: телефон подключается к ELM327 адаптеру по Wi-Fi или Bluetooth и отправляет диагностические запросы в CAN шину, в ответ получает информацию о датчиках.

По ходу разработки мобильного приложения пришлось узнать, что разные электронные блоки управления (двигателя, трансмиссии, приборной панели и др.) подключенные к CAN шине могут использовать разные протоколы для диагностики, а именно UDS и KWP2000 в обертке из VW Transport Protocol 2.0.

Как телефон взаимодействует с автомобилем
Всего голосов 109: ↑109 и ↓0+109
Комментарии123

Истории

Как без усилий сократить объем входящего в дата-центр трафика на 70%

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

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

Единственное, о чем мы пожалели — что не применили это решение раньше.

Читать далее
Всего голосов 137: ↑136 и ↓1+135
Комментарии53

Как мы запустили 2ГИС под CarPlay и до сих пор расхлёбываем

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


Привет! Меня зовут Ваня, я пишу мобильное приложение 2ГИС под iOS. Сегодня будет история о том, как наш навигатор появился в CarPlay. Расскажу, как с такой себе документацией и недоделанными инструментами мы создали рабочий продукт и разместили его в AppStore.

Поехали!
Всего голосов 107: ↑106 и ↓1+105
Комментарии88

Пускаю слюни, пишу код

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

Это Иван Бакаидов — программист, автор на Хабре, панк, девятнадцатилетний гражданин Российской Федерации, инвалид первой группы по причине Церебрального паралича.

В прошлом году я прочитал статью «Как узнать какие цветы дарить девушке, если у нее двигается только голова и она не может говорить?», она поразила меня похлеще чем «Смотря на код с закрытыми глазами».

Интервью с Иваном ibakaidov. Есть над чем подумать.

Расскажи, как впервые увидел компьютер? Как заинтересовался программированием и как учился?

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

А вот посадить меня за него предложили в институте раннего вмешательства. Это питерская организация, активная в 1990х, 2000х годах. Они собрали прогрессивных специалистов в сфере реабилитации и много сотрудничали с западом.

Основной идеологией было: «Не надо делать из человека здорового, надо научить его удобно жить», что до сих пор противоположно политике Минздрава и большинства больниц, а на самом деле задай себе вопрос: «Что надо человеку: ходить или перемещаться?» или же «говорить или общаться?»
Всего голосов 166: ↑159 и ↓7+152
Комментарии52

Как технологии Яндекс.Такси приближают будущее личного и общественного транспорта

Время на прочтение6 мин
Количество просмотров52K
Некоторое время назад Яндекс.Такси стало предлагать вызвать такси не точно туда, где вы находитесь, а пройти несколько метров, но доехать быстрее и дешевле.



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

Читать дальше →
Всего голосов 126: ↑124 и ↓2+122
Комментарии231

Почему айфон перезагружается от арабской смс

Время на прочтение6 мин
Количество просмотров233K
DISCLAIMER

Не пытайтесь повторить это со своими телефонами и телефонами коллег! Судя по комментариям, много людей уже заразили свои телефоны, а 100%-тного лекарства еще нет!

DISCLAIMER 2

Даже не пытайтесь назвать так Wi-fi точку!

Около 15 часов назад на Reddit появился забавный пост, который рассказывал о перезагрузке айфона после странного сообщения вида:
Не шлите никому на айфон
Power
لُلُصّبُلُلصّبُررً ॣ ॣh ॣ ॣ



Читать дальше →
Всего голосов 184: ↑178 и ↓6+172
Комментарии138

Apple заблокировала аккаунты разработчиков в Крыму

Время на прочтение1 мин
Количество просмотров141K
В связи с санкциями, направленными США против жителей Крыма, все иностранные компании должны прекратить свою деятельность на полуострове. Буквально вчера Steam перестал продавать игры жителям Республики, а сегодня все крымские разработчики, которые пользовались developer.apple.com, заблокированы на этом сайте.

Письмо, которое я получил сегодня ночью:
Читать дальше →
Всего голосов 245: ↑201 и ↓44+157
Комментарии144

Как я попал в Топ AppStore с простым приложением курса валют

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

Резюме


Я хочу рассказать о том, как создал вполне заурядное и совсем не инновационное приложение, которое объективно стало лучшим в своём роде и даже некоторое время пребывало на самой вершине топа. Это не история успеха и не руководство к действию. Я просто хочу рассказать, как у меня получилось сделать самое популярное приложение в своём сегменте.
Читать дальше →
Всего голосов 126: ↑118 и ↓8+110
Комментарии69

Темная сторона мобильного трафика

Время на прочтение6 мин
Количество просмотров149K
Специально для Хабра мы взяли интервью с представителем “темной стороны” рынка мобильного трафика.
“Вы считаете, что работая с CPA агентствами вы приобретаете хоть сколько нибудь живой трафик? Вы верите в модель CPI? Угадаете долю живого трафика в подобных сетях? На самом деле, доля “серого” трафика намного больше, чем Вы могли подумать."
Интересно?
image
Перейти на темную сторону
Всего голосов 275: ↑228 и ↓47+181
Комментарии135

Видео-курс по Swift на русском языке

Время на прочтение1 мин
Количество просмотров115K
Здравствуй, Хабр!

Мы сделали видео-уроки по языку Swift на основе бесплатной книги The Swift Programming Language от Эппл.



Все 32 урока доступны на нашем сайте. Несколько уроков – под катом.
Читать дальше →
Всего голосов 146: ↑129 и ↓17+112
Комментарии62

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

One day offer от ВСК
Дата16 – 17 мая
Время09:00 – 18:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн
Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Как собрать WhatsApp за сутки. Часть 1

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


Здравствуйте, дорогие читатели Хабрахабра!

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

  1. Создание проекта, простой UI, привязка к сервису мгновенных сообщений
  2. Делаем красивый UI, добавляем видео и аудио звонки, передачу фото и документов

К сожалению, пособие о том, как набрать 400 000 000 пользователей и продать сервис за 19 Инстаграмов, затерялось где-то на книжной полке. Постараюсь его найти, если кому интересно.

Заинтересовавшихся прошу под кат.
Читать дальше →
Всего голосов 178: ↑146 и ↓32+114
Комментарии55

О правомерности работы физического лица с магазином App Store в РФ

Время на прочтение3 мин
Количество просмотров68K
Эта статья предназначена в первую очередь для программистов-одиночек, желающих попробовать свои силы на рынке платных мобильных приложений. Статья не претендует на истину первой инстанции, поэтому любые ваши замечания крайне приветствуются.

Итак, суть статьи заключается в том, чтобы понять: можно ли в РФ физическому лицу законно получать прибыль от продаж программ в App Store? Просмотр тематических форумов с подобными вопросами привел к выводу: мнения людей на этот счет расходятся. Одни считают, что можно, другие — что такая деятельность будет квалифицироваться как незаконная предпринимательская деятельность, т.к. договор от Apple — это агентский договор и в нем нет ни слова про авторские вознаграждения, и, как следствие, нужно регистрироваться в качестве индивидуального предпринимателя (ИП).
Читать дальше →
Всего голосов 114: ↑110 и ↓4+106
Комментарии51

Как Минковский во Flappy Bird играл

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


Многие пробовали играть во Flappy Bird. Редко кому удается пролететь за 50 труб, очень немногие долетают до сотни-двух. Некоторые пробовали создать бота, в том числе на хабре. Удивительно, но даже у самого успешного бота, которого можно найти на просторах интернета, результаты не очень-то впечатляют – что-то около 160 очков. Возникает вопрос, а можно ли вообще играть во Flappy Bird бесконечно долго? Или всегда с некоторой, пусть и небольшой, вероятностью может встретиться последовательность препятствий, которую даже опытный игрок/идеальный бот не сможет преодолеть?

И тут на помощь приходит математика. Давайте найдем выигрышную стратегию для Flappy Bird.
Читать дальше →
Всего голосов 364: ↑357 и ↓7+350
Комментарии32

Как я написал и выпустил книгу по разработке игр под iOS

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


В прошлом году вышла iOS7. В ней был ряд нововведений, включая новую библиотеку для разработки игр — Sprite Kit. Геймдев — мое небольшое хобби, которым я занимаюсь после работы по возможности, и конечно он меня заинтересовал.

Написал пару маленьких проектов по нему для изучения фреймворка, по привычке выложил в гитхаб, начал делать свою полноценную игру на нем.
И вот некоторое время спустя этих событий ко мне на почту пришло письмо от одного англоязычного издательства. В письме менеджер по поиску авторов писал о том, что видел мои маленькие проекты на гитхабе, и так как они ищут автора для книги по Sprite Kit, предложил мне написать книгу.
Читать дальше →
Всего голосов 136: ↑125 и ↓11+114
Комментарии54

Android vs iOS на примере одной игры

Время на прочтение4 мин
Количество просмотров128K
Всем привет! Меня зовут Павел и я разработчик инди.
Я часто читаю разного рода аналитику, там куча графиков про то, сколько сейчас активируется андроид устройств, сколько iOS, как растут рынки и падают доли. К сожалению, проценты и абстрактные цифры редко позволяют точно понять что же на самом деле происходит внутри.
Скорее всего, я не один сталкиваюсь с такой проблемой, поэтому решил поделиться «живой» статистикой одной моей игры, ставшей довольно популярной на iOS и Android. Сразу оговорюсь, что речь о игре исключительно на русском языке, соответственно играют в неё только русскоязычные пользователи. Для тех, у кого таргет на Европу, США и т.п. пост может быть малоинформативен.
Читать дальше →
Всего голосов 190: ↑173 и ↓17+156
Комментарии90

DoS эксплоит для движка WebKit

Время на прочтение1 мин
Количество просмотров145K
Определенная последовательность арабских символов позволяет вызвать критическую ошибку, приводящую к аварийному завершению любого приложения использующего движок WebKit в iOS и Mac OS.

Уязвимость воспроизводится на Mac OS 10.8 (Mountain Lion) и iOS 6. Версии iOS <6 и 7 beta, Mac OS <10.8 и 10.9 beta не подвержены проблеме.

Ссылка на эксплоит: https://zhovner.com/tmp/killwebkit.html

Уязвимость можно воспроизвести:
  • Отправив sms на iPhone — при этом происходит респринг и больше нельзя зайти в приложение «Сообщения». Исправить можно так habrahabr.ru/post/191654/#comment_6658802
  • Отправив сообщение через iMessage на iOS или десктопный Messages в Mac OS — приложение завершится и более в него нельзя будет зайти.
  • Открыв страницу содержащую строку — мобильный Safari в iOS просто закроется. При этом, если не удалить историю посещений, зайти повторно в него не получится. Десктопный Safari ведет себя так же. Десктопный Chrome завершит процесс вкладки показав сообщение об ошибке, сам браузер продолжит работать. Новая Opera и Яндекс.Браузер ведут себя аналогично Хрому.
  • Поместив строку в название WiFi-сети (ESSID) — во время сканирования сетей это должно вызвать ошибку. Метод описан на news.ycombinator.com и мною не проверялся: news.ycombinator.com/item?id=6293824


Читать дальше →
Всего голосов 124: ↑115 и ↓9+106
Комментарии209