Рубрика «MacOS»

С выходом macOS 10.14.5, Apple добавила обязательную процедуру нотаризации (Notarization process) приложений перед их распространением. Что это и какие сложности возникли с этим обновлением при разработке на Electron.js я и хотел бы рассказать.

Процедура нотаризации Electron приложения для macOS 10.14.5 - 1

Читать полностью »

iOS 13, watchOS 6, iPadOS и новый Mac Pro. Презентация Apple на WWDC 2019 - 1

Сегодня в Сан-Хосе на первый день своей конференции Apple провела большую презентацию со всеми апдейтами софта. Пять тысяч журналистов и девелоперов собрались, чтобы узнать, какие апдейты ждут их iOS и macOS. Действо получилось довольно впечатляющим, и длилось два с половиной часа – в разы дольше, чем обычные ежегодные презентации iPhone и iPad. А перед ним в аудитории устроили красивое шоу. Освещением выступали только три гигантских черных экрана, на которых показывались разные световые анимации.

Чуть короче, с прицелом на разработчиков и их интересными отзывами/впечатлениями, о WWDC 2019 уже написал dydus0x14 вот здесь. Рекомендуется к прочтению. У нас – чуть меньше о разработчиках, но чуть больше о всём остальном. С подробностями и по порядку хода презентации, как привыкли.Читать полностью »

Квалифицированная электронная подпись под macOS - 1

По данным РБК и Тензор, в 2019 году в России будет выдано 4,6 млн. сертификатов квалифицированных электронных подписей (КЭП), соответствующих требованиям 63-ФЗ. Получается, что из 8 млн. зарегистрированных ИП и ООО каждый второй предприниматель пользуется электронной подписью. Помимо КЭП для ЕГАИС и облачных КЭП для сдачи отчетности, выдаваемых банками и бухгалтерскими сервисами, особый интерес представляют универсальные КЭП на защищенных токенах. Такие сертификаты позволяют логиниться на гос.порталы и подписывать любые документы, делая их юридически значимыми.

Благодаря сертификату КЭП на USB-токене можно удаленно заключить договор с контрагентом или дистанционным сотрудником, направить документы в суд; зарегистрировать онлайн-кассу, урегулировать задолженность по налогам и подать декларацию в личном кабинете на nalog.ru; узнать о задолженностях и предстоящих проверках на Госуслугах.

Представленный ниже мануал поможет работать с КЭП под macOS – без изучения форумов КриптоПро и установки виртуальной машины с Windows.

Читать полностью »

Автоматизировал задание файловых ассоциаций, то есть выбор программы которая будет открывать файл из Explorer/Finder. И делюсь.

Сначала проблематика… Файлы нужных расширений часто не открываются по умолчанию ничем, а если открываются, то каким-нибудь iTunes. Под windows нужные ассоциации, бывает, и вовсе теряются при установке (или даже деинсталяции) программ: снесёшь, бывало, GIMP, а ico-файлы перешли во владение от привычного просмотрщика файлов к стандартной Photo Gallery. Почему? Зачем? Неизвестно… А если нашёл новый редактор или, по разным причинам, свежая инсталляция? А если компьютер не один? В общем, кликать мышками в диалогах — развлечение такое себе.

Вместо этого я сохранил два файлика на Dropbox и теперь привести компьютерный мир к привычному состоянию можно почти мгновенно. И чего ждал столько лет… Далее рецепт для Windows и macOS.

Читать полностью »

В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM.

SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его основе лежит графическая технология OpenGL, а за создание окон отвечает библиотека GLFW. Используя данный фреймворк, вы можете работать и создавать графические клиентские приложения в операционных системах Linux, Mac OS X, Windows. Для программистов C# в данное время это особенно актуально, учитывая, что Microsoft не собирается переносить WPF на другие ОС и Avalonia является единственным возможным аналогом. Особенностью же SpaceVIL в этом конкретном случае является мультиязычность, то есть на данный момент фреймворк под .Net Core можно использовать в связке со следующими языками программирования: C#, VisualBasic. Фреймворк под JVM можно использовать в связке с языками Java и Scala. То есть, SpaceVIL можно использовать с любым из этих языков и итоговый код будет выглядеть одинаково, поэтому при переходе на другой язык переучиваться заново не придется.

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

Читать полностью »

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

  • назначать иконку приложения в строке меню
  • делать приложение размещенным только в строке меню
  • добавлять пользовательское меню
  • показывать всплывающее по запросу пользователя окно и прятать его, когда необходимо, используя Event Monitoring

Замечание: это руководство предполагает, что вы знакомы со Swift и macOS.

Читать полностью »

image

В начале эпохи домашних компьютеров существовала компания под названием Apple. Она только что заработала огромный успех благодаря линейке компьютеров Apple II, но чтобы оставаться на вершине быстро развивающегося компьютерного рынка, ей необходимы были инновации. Компания уже работала над линейкой Lisa, которая вдохновлялась мини-компьютерами и была предназначена для бизнес-пользователей, а значит, и имела соответствующую цену, но для среднестатистического потребителя она казалась слишком дорогой. В качестве дополнительного проекта был разработан Macintosh, который должен был стать реализацией идеи нового поколения компьютеров для «людей с улицы» и стоить около 500 долларов. Проектом занялся Стив Джобс, и под его руководством «железо» стало более продвинутым, ПО получило вместо текстового интерфейса GUI, а цена взлетела почти до 2500 долларов. Хотя оборудование, получаемое за эту цену, немного разочаровывало, например, ему не хватало графических ускорителей и звуковых возможностей, имевшихся у других машин, зато цену оправдывало ПО. Первым Macintosh был Mac 128K, и его успех подтолкнул к созданию более продвинутых моделей этого компактного Mac, в частности, Macintosh 512K, Macintosh Plus и серии Macintosh SE.

Хотя разработка Macintosh происходила примерно в 1984 году, задолго до того, как я начал разбираться в компьютерах, я питаю к компактным Macintosh какую-то слабость: первым компьютером, купленным моими родителями, был Macintosh Plus. Позже он был дополнен жёстким диском SCSI на 20 МБ, и на этой машине я писал свои первые программы на Basic. Когда ещё жил в Нидерландах, я купил сломанную машину SE/30 и превратил её в Linux-сервер, который тем не менее способен был запускать ПО для Mac. Однако я оставил эту машину в Нидерландах, а здесь, в Шанхае, у меня больше нет классического «железа» Apple.

Хоть и очевидно, что в повседневной жизни Mac Plus мне больше не понадобится, мне понравилась идея иметь его под рукой на случай приступов ностальгии.Читать полностью »

Команда Google Project Zero хорошо известна своим умением находить недостатки безопасности как в собственных продуктах компании, так и в продуктах других фирм. Её члены обнаруживают недостатки в программном обеспечении, сообщают о них производителям в частном порядке и дают им 90 дней на решение проблемы до ее публичного раскрытия.

Команда Google Project Zero нашла серьезную уязвимость в ядре macOS - 1

В ноябре они нашли "серьезную уязвимость" в ядре macOS.

Читать полностью »

В нашем новом дайджесте обновления iOS и Swift, самое интересное машинное обучение в Android, опрос про известность мобильных команд, поиск фрилансеров для вменяемой разработки, самые популярные приложения в разных категориях и многое другое.

Дайджест интересных материалов для мобильного разработчика #284 (28 января — 3 февраля) - 1Читать полностью »

Реализация горячей перезагрузки С++ кода в Linux и macOS: копаем глубже - 1
*Ссылка на библиотеку и демо видео в конце статьи. Для понимания того, что происходит, и кто все эти люди, рекомендую прочитать предыдущую статью.

В прошлой статье мы ознакомились с подходом, позволяющим осуществлять "горячую" перезагрузку c++ кода. "Код" в данном случае — это функции, данные и их согласованная работа друг с другом. С функциями особых проблем нет, перенаправляем поток выполнения из старой функции в новую, и все работает. Проблема возникает с данными (статическими и глобальными переменными), а именно со стратегией их синхронизации в старом и новом коде. В первой реализации эта стратегия была очень топорной: просто копируем значения всех статических переменных из старого кода в новый, чтобы новый код, ссылаясь на новые переменные, работал со значениями из старого кода. Конечно это некорректно, и сегодня мы попытаемся исправить этот изъян, попутно решив ряд небольших, но интересных задач.
В статье опущены детали, касающиеся механической работы, например чтение символов и релокаций из elf и mach-o файлов. Упор делается на тонких моментах, с которыми я столкнулся в процессе реализации, и которые могут быть полезны кому-то, кто, как и я недавно, ищет ответы.

Читать полностью »