AppiumTestDistribution / appium-device-farm

This is an Appium 2.0 plugin designed to manage and create driver sessions on available devices.
https://devicefarm.org
Apache License 2.0
292 stars 90 forks source link

iOS remote control stopped working on version 8.4.7-rc.44 #1200

Closed nskcashHH closed 1 week ago

nskcashHH commented 1 week ago

Describe the bug

In this topic https://github.com/AppiumTestDistribution/appium-device-farm/issues/1181 the problem of working with inspector was fixed, it now works. But the iOS remote control is no longer working, there is no image. Remote control works on android. It worked on iOS in version 43.

The link to the stream looks like this: http://192.168.88.97:4723/device-farm/#/iOSStream?port=4723&platform=ios&udid=00008101-000A0D5C34C3003A&host=192.168.88.97&streamPort=61513&width=390&height=844

Screenshot 2024-06-22 at 22 54 57

Link to Appium logs https://gist.github.com/nskcashHH/01a1f40ac6d2c06909ff3ac383a104aa

Environment 8.4.7-rc.44

saikrishna321 commented 1 week ago

@nskcashHH

Error executing command: Error: Command failed: ios install --udid=00008101-000A0D5C34C3003A --path=/Users/qaauto/.cache/appium-device-farm/assets/wda-resign.ipa /bin/sh: ios: command not found

Can you make sure go-ios is installed

nskcashHH commented 1 week ago

@saikrishna321 I am so sorry, I did not attach that appium log. I have go-ios installed, because iOS remote control definitely worked earlier. qaauto@QAs-Mac-mini ~ % ios --version {"version":"v1.0.121"}

https://gist.github.com/nskcashHH/01a1f40ac6d2c06909ff3ac383a104aa

nskcashHH commented 1 week ago

@saikrishna321 I rolled back the version to 8.4.7-rc.43 and the controls are working

qaauto@QAs-Mac-mini ~ % appium plugin uninstall device-farm  
✔ Successfully uninstalled plugin 'device-farm'
qaauto@QAs-Mac-mini ~ % appium plugin install --source=npm appium-device-farm@8.4.7-rc.43
✔ Checking if 'appium-device-farm' is compatible
✔ Installing 'appium-device-farm@8.4.7-rc.43'
ℹ Plugin device-farm@8.4.7-rc.43 successfully installed
qaauto@QAs-Mac-mini ~ %
Screenshot 2024-06-23 at 08 16 03
sudharsan-selvaraj commented 1 week ago

@nskcashHH Are you using device farm with hub/node setup?

nskcashHH commented 1 week ago

@sudharsan-selvaraj The device is connected to a mac mini running appium via cable, there are no additional settings, I run appium like this: appium server -ka 800 -p 4723 -pa /wd/hub --use-plugins=device-farm --plugin-device-farm-platform=both --plugin-device-farm-ios-device-type=real

If I understood your question correctly

sudharsan-selvaraj commented 1 week ago

@nskcashHH Could you give a try with 8.4.7-rc.45?

nskcashHH commented 1 week ago

@sudharsan-selvaraj I'll try it in a few hours, thanks!

nskcashHH commented 1 week ago

@sudharsan-selvaraj I checked 8.4.7-rc.45 and now the iOS device control is working. I checked #1181 again, it also works with the inspector. Thank you very much!

erdncyz commented 1 week ago

Hi @nskcashHH How to fix this issue ?

image image
nskcashHH commented 1 week ago

@erdncyz I had a problem with controlling an iOS device via remote control without an appium inspector, and it works.

Screenshot 2024-06-25 at 16 58 08

And the issue of remote control using the inspector, if I'm not mistaken, is discussed here #1207

erdncyz commented 1 week ago

@nskcashHH how to fix this issue

image

Unable to install "wda-resign" Domain: com.apple.dt.MobileDeviceErrorDomain Code: -402620395 User Info: { DVTErrorCreationDateKey = "2024-06-25 14:43:09 +0000"; }

A valid provisioning profile for this executable was not found. Domain: com.apple.dt.MobileDeviceErrorDomain Code: -402620395 User Info: { DVTRadarComponentKey = 487925; MobileDeviceErrorCode = "(0xE8008015)"; "com.apple.dtdevicekit.stacktrace" = ( 0 DTDeviceKitBase 0x00000001141f8b9c DTDKCreateNSErrorFromAMDErrorCode + 229 1 DTDeviceKitBase 0x000000011422c254 90-[DTDKMobileDeviceToken installApplicationBundleAtPath:withOptions:andError:withCallback:]_block_invoke + 158 2 DVTFoundation 0x000000010b89f36c DVTInvokeWithStrongOwnership + 70 3 DTDeviceKitBase 0x000000011422bf89 -[DTDKMobileDeviceToken installApplicationBundleAtPath:withOptions:andError:withCallback:] + 1412 4 IDEiOSSupportCore 0x0000000114a7dd53 118-[DVTiOSDevice(DVTiPhoneApplicationInstallation) processAppInstallSet:appUninstallSet:installOptions:completionBlock:]_block_invoke.305 + 3837 5 DVTFoundation 0x000000010b9dcbfb __DVT_CALLING_CLIENT_BLOCK + 7 6 DVTFoundation 0x000000010b9dd6e7 DVTDispatchAsync_block_invoke + 196 7 libdispatch.dylib 0x00007ff80a629ac6 _dispatch_call_block_and_release + 12 8 libdispatch.dylib 0x00007ff80a62adbc _dispatch_client_callout + 8 9 libdispatch.dylib 0x00007ff80a630eff _dispatch_lane_serial_drain + 800 10 libdispatch.dylib 0x00007ff80a631997 _dispatch_lane_invoke + 377 11 libdispatch.dylib 0x00007ff80a63b414 _dispatch_root_queue_drain_deferred_wlh + 271 12 libdispatch.dylib 0x00007ff80a63ad2a _dispatch_workloop_worker_thread + 451 13 libsystem_pthread.dylib 0x00007ff80a7c8b84 _pthread_wqthread + 327 14 libsystem_pthread.dylib 0x00007ff80a7c7acf start_wqthread + 15 ); }

System Information

macOS Version 14.5 (Build 23F79) Xcode 15.2 (22503) (Build 15C500b) Timestamp: 2024-06-25T17:43:09+03:00

nskcashHH commented 1 week ago

@erdncyz Have you signed the WDA into the certificate? In order for wda-resign.ipa to be established, the device must have confidence in this certificate.

https://devicefarm.org/setup / - Manual Control of Devices for iOS real device section

there's a link link https://github.com/DanTheMan827/ios-app-signer , download the application and register your certificate profile for wda-resign.ipa, something like this looks like:

Screenshot 2024-06-25 at 17 56 56

it seems to me that this is the problem, if it doesn't work out, then it's better to contact the developers