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

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

Насколько я обнаружил, были варианты, основанные на SIMBL, но я не думаю, что вышеупомянутые используют его. Более того, есть Injection ( https://github.com/johnno1962/injectionforxcode), который использует XPC для внедрения кода.

Я бы предположил, что есть разные способы (например, как происходит изменение пользовательского интерфейса? Либо безупречный слой поверх него, либо изменение переменной в шерлок), так что было бы здорово, если бы кто-то здесь указал мне правильное направление.

0 ответов

Я не использовал плагины, НО:

  • Шерлок загружает код в приложение, которое запускается симулятором из того, что я прочитал. ( https://www.hackingwithswift.com/articles/131/sherlock-turbocharges-your-ios-simulator)

  • безупречный, но непонятный на сайте, все, что он делает, это накладывает UIWindow поверх окна симулятора. Даже отдельное приложение может сделать это. ( https://flawlessapp.io/)


  • SIMBL мог бы сделать оба идентификатора, я бы сказал...
  • но вы можете многое сделать, подключив LLDB тоже! действительно мощный. (хороший пример - https://github.com/facebook/chisel)
  • Внедрение кода в xcode в основном одинаково (примерно;)

=> для симулятора AFAIK до сих пор нет публичного / или приватного API

=> мне проще ориентироваться на приложения внутри симулятора

(есть другие способы, манипулируя значениями по умолчанию или играя с процессом simctl)

Другие вопросы по тегам