Just Developer Blog

Коротко и ясно о разработке на Objective-C, JavaScript, C#, Java, Swift. Под Android, iOS, WinForms и Unity

Запуск консольных утилит из скрипта на Swift

В процессе написания утилит на Swift бывает необходимо запустить другую консольную утилиту с параметрами. Поскольку в Swift доступны для использования все стандартные библиотеки macOS и iOS мы можем с легкостью это сделать, используя API фреймворка Foundation.

Запуск Swift-скриптов из командной строки

Для автоматизации рутинных задач очень удобно писать маленькие скрипты, которые выполняют ту или иную функцию. Для этих целей я в основном использую Python и Swift. Если с запуском Python-скриптов все просто, то со Swift есть некоторые нюансы. О них вы узнаете из этой статьи.

Чтение параметров командной строки в Swift-скрипте

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

Получение информации о состоянии батареи в MacOS (выполнением консольной команды)

После обновления MacOS до Sierra я столкнулся с проблемой – в статус баре исчезла информация об оставшемся времени работы от батареи. Проблема на самом деле решается очень просто – можно установить стороннее приложение Battery-Time-Remaining, которое является настоящим швейцарским ножом в области работы с батареей макбука. Но мне захотелось разобраться как можно получить информацию об оставшемся времени работы от батареи в MacOS и написать свое приложение для статус бара.


Существует два способа получения состояния батареи в MacOS:


  1. (правильный) при помощи набора функций IOPowerFunctions фреймворка IOKit;
  2. (быстрый) выполнением консольной команды “pmset -g batt” и парсинга вывода.

Работа с AVAudioPlayer и MPNowPlayingInfo (iOS)

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

Ниже представлен код хэлпера, упрощающего работу с этим классом.

Ранее Ctrl + ↓