Заказ закрыт
Sandboxed macOS-приложение собственный Input Method, end-to-end доставка текста

Бюджет: по договоренности
Sandboxed macOS-приложение собственный Input Method, end-to-end доставка текста. Фиксированная цена, дистрибуция через Mac App Store, Swift 6 / Xcode 16.

Нужен опытный macOS-разработчик, который соберёт минимальный воспроизводимый end-to-end демо:
- sandboxed хост-приложение отправляет произвольную строку в собственный InputMethodKit-бандл, а Input Method вставляет эту строку в активное текстовое поле любого стороннего приложения (TextEdit, Notes, Safari и т.д.).
- Никакой бизнес-логики и UI — только транспорт и инжекция как примитив, стабильно работающий на чистой машине, подписанный и в песочнице.
- Решение состоит из двух таргетов (HostApp и MyInputMethod): генерация через XcodeGen, встраивание IM-бандла в HostApp.app/Contents/Library/Input Methods/ через copy build phase, авто-регистрация на старте через TISRegisterInputSource, подкласс IMKInputController с commitText, общий App Group entitlement, подпись реальным Team ID.
- По триггеру (кнопкой) хост шлёт захардкоженную строку, IM вставляет её через client().insertText(...), хост получает структурированный ответ (success / inputMethodInactive / noClient / commitFailed). Цикл должен занимать меньше 500 мс.

Жёсткие ограничения:
- никаких Accessibility-разрешений, никакого CGEventPost и синтезированных нажатий клавиш, никакого AppleScript, никаких хаков с пастебордом «вставка через Cmd+V», никакого NSDistributedNotificationCenter для пейлоада, никаких приватных API.
- Транспорт должен быть обоснован документацией Apple и совместим с App Sandbox и Hardened Runtime.
- Реалистичные варианты: App Groups + UNIX domain socket в shared-контейнере, App Groups + NSXPCListenerEndpoint, либо полноценный LaunchAgent + XPC service bundle.

Оплата фиксированная, по майлстоунам:
- 50% за рабочую сборку end-to-end на вашей машине с видеозаписью
- 50% после того, как я воспроизведу её у себя из вашей ветки и пройду критерии приёмки.
- За исследовательское время не плачу. Ищу только тех, кто уже делал ровно такую задачу, понимает все перечисленные ограничения и знает точное рабочее решение. Для подходящего человека это работа на 2–4 дня.
Опубликован 01.05.2026 в 16:56
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.