johnno1962 / HotReloading

Hot reloading as a Swift Package

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unable to create socket for device injection

denil-ct opened this issue · comments

As the title says, the package is unable to create the socket to port 8899.
Injection app is running in the background as well. I tried pinging that port on mac, but was unable to.
The defaults key is also written.
Any help is appreciated.

image

image

Hi, You seem to be trying to get injection running from a real device which is still very much in beta. To do this you need to run one of the binary releases of InjectionIII downloaded from GitHub and set a default as it says in the README to open the port. If you've set the default and run InjectionII and netstat -an | grep LIST doesn't list port 8898 then it is probably a defaults problem related to switching between the SandBoxed (AppStore) and un-SandBoxed versions of the app which you have to troubleshoot using the command find ~/Library -name com.johnholdsworth.InjectionIII.plist and deleting the plist file under '~/Library/Containers' and then set the default. The simplest thing to do is to only use HotReloading inside the simulator initially which is a much smoother ride and once you've proven that on your codebase you can see how well device injection can perform for you.

Oh yes, simulator is way smoother, and its working as expected. As some of our app's features don't work on simulator, we needed device support as well. So was trying it out.

It seems the issue was with the plist. Deleting and writing the defaults fixed it.

Thanks :)