Как разработать плагины для симулятора 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)