Skip to content
This repository has been archived by the owner on May 19, 2021. It is now read-only.

make build fails #1

Open
fruitofgeorge opened this issue Jun 26, 2020 · 4 comments
Open

make build fails #1

fruitofgeorge opened this issue Jun 26, 2020 · 4 comments

Comments

@fruitofgeorge
Copy link

Following the instructions, after entering cd iOSVNCServer && make build I get:

cd ./vendor/jsmn/; make
make[1]: *** No targets specified and no makefile found.  Stop.
make: *** [dependencies] Error 2

It seems like it's looking for another makefile in the /jsmn directory rather than using the one originally called?

@fruitofgeorge
Copy link
Author

Digging further, turns out there is supposed to be a makefile in the /jsmn directory but when cloning it just makes an empty folder. I was able to find another repo for jsmn and copy it in.
After taking care of that, it complained of not finding the library for imobiledevice. Looks like when installed with brew, it appends the version number on it. I had to edit the makefile to be -l imobiledevice-1.0 and then it builds.

@fruitofgeorge
Copy link
Author

Going further down the rabbit hole, I thought I'd continue feedback here rather than starting a new issue.
The curl code listed for starting a WebDriverAgent session doesn't work. There are some stray escape characters that don't belong and it requires "capabilities" rather than "desiredCapabilities". This started a session for me:

curl -X POST -H "Content-Type: application/json" -d "{\"capabilities\":{\"bundleId\":\"com.apple.preferences\"}}" [SOME_IP]:8100/session

Once a session was started, I was able to run the iosvncserver program. Unfortunately, the macOS Screen Sharing app wasn't able to view the screen because it required a password. I tried both the local machine's password and the phone's password but it would never accept and just time out. RealVNC's VNC Viewer was able to view the phone's screen but it did not have control. I could see the touch commands being sent but the server would respond with "unknown command." I didn't dig further but I'd suspect more malformed json.
Lastly, this was all done with the phone tethered over USB. I wasn't able to get it to work wirelessly. I enabled wireless deployment for my phone in Xcode and I could start a WebDriverAgent session but when I tried to run iosvncserver it reported no phone detected. This all seems pretty pointless if it doesn't work wirelessly, right?

@testingbot
Copy link
Collaborator

Hi @fruitofgeorge

I think the reason for the WebdriverAgent problems is that we built this a couple of years ago with an older version of WebdriverAgent. The protocol has since changed, so we’ll need to update the code.

Not sure if WebdriverAgent will support wireless. We use it in a tethered combination.

@fruitofgeorge
Copy link
Author

Further testing shows text entry does work. The "do tap" and "do drag" come back with an unhandled endpoint.

WebDriverAgent definitely does support wireless. I was able to issue all their test commands, including take a screenshot, query for elements and then send a click to an element. libimobiledevice also supports wireless. idevice_id -n will report the udid of the network connected device.

When trying to run iosvncserver with the wireless device it reports cannot create an iosss_handle_t but that's beyond my understanding of how it works. I'll wait for you to update compatibility with the current WebDriverAgent.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant