支持系统
OS X 10.12
价格
0
下载次数
252
官方网站
InjectionIII adds a limited form of “Hot Reload” capability to your iOS, tvOS and macOS projects written in Swift or Objective-C. This allows you to change the implementations of methods in classes without having to restart your app. To get started, install the app to /Applications and run it then, download the example project http://johnholdsworth.com/GettingStarted.zip and build and run it in Xcode. You’ll be promoted to select the directory containing the project file and sources by the menubar app to give it access to which files have changed. Once injection has connected, if you save a file, it will be recompiled and injected into the running app, the new implementations taking place of the old. In the GettingStarted iOS app, if you edit the file DetailViewController.swift to change the string appended after the detail.description in function configureView() then save the file, you can see it take effect straight away. InjectionIII requires Xcode version 9.3 to work, installed at the standard location in /Applications. You need to add one of the following to your app’s startup: #if DEBUG Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle")?.load() //for tvOS: Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/tvOSInjection.bundle")?.load() //Or for macOS: Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/macOSInjection.bundle")?.load() #endif It’s limited in that it can only reload implementations of non-final, non-generic classes and not structs but in general it works quite well once you’re up an running.