isonic1 / flick

A CLI with helpful QA tools for Android (Devices & Emulators) and iOS (Devices).
MIT License
101 stars 26 forks source link

flick not working with iOS 10 Xcode 8 #10

Closed philipsTanoto closed 7 years ago

philipsTanoto commented 7 years ago

Not able to get any video using the command "flick video -a start -p ios -s 0.5 -c 6000" followed by "flick video -a stop -p ios -s 0.5 -c 6000" on Xcode 8, iOS 10.

No file was created, and "error: No such file or directory - (, ), User --trace to view backtrace." was observed.

same error message with --trace: note: username, directory and UDID is removed from log for privacy.

/Library/Ruby/Gems/2.0.0/gems/flick-0.2.4/lib/flick/video.rb:142:in rename': No such file or directory - (/Users/<user_name>/.flick/<UDID>.mp4, /Users/<user_name>/<UDID>.mp4) (Errno::ENOENT) from /Library/Ruby/Gems/2.0.0/gems/flick-0.2.4/lib/flick/video.rb:142:inmp4' from /Library/Ruby/Gems/2.0.0/gems/flick-0.2.4/lib/flick/video.rb:130:in stop_screenshot_recording' from /Library/Ruby/Gems/2.0.0/gems/flick-0.2.4/lib/flick/video.rb:51:instop' from /Library/Ruby/Gems/2.0.0/gems/flick-0.2.4/lib/flick/video.rb:25:in run' from /Library/Ruby/Gems/2.0.0/gems/flick-0.2.4/bin/flick:32:inblock (2 levels) in <top (required)>' from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/command.rb:178:in call' from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/command.rb:178:incall' from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/command.rb:153:in run' from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/runner.rb:444:inrun_active_command' from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/runner.rb:68:in run!' from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/delegates.rb:15:inrun!' from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/import.rb:5:in `block in <top (required)>'

saikrishna321 commented 7 years ago

flick uses idevice library, you need to uninstall the library and install with HEAD, to get it working with ios10

saikrishna321 commented 7 years ago

brew uninstall ideviceinstaller brew uninstall --ignore-dependencies libimobiledevice brew install --HEAD libimobiledevice brew unlink libimobiledevice && brew link libimobiledevice brew install --HEAD ideviceinstaller brew unlink ideviceinstaller && brew link ideviceinstaller

isonic1 commented 7 years ago

thank you @saikrishna321! @philipsTanoto please follow this instructions to reinstall ideviceinstaller and try again.

isonic1 commented 7 years ago

Im setting this to wontfix. If the steps @saikrishna321 didn't help then I will reopen.

philipsTanoto commented 7 years ago

It is working now, thanks @saikrishna321 @isonic1 !

testableapple commented 6 years ago

@isonic1, libmobiledevice working good with ios11, but flick can't get device log: UDID: <my_udid> - Is not paired with your machine! Run: idevicepair -u <udid> pair If not working still, see: https://github.com/isonic1/flick/issues/10

isonic1 commented 6 years ago

Hmm, you went through the steps to uninstall and reinstall the ideviceinstaller libraries? is it just logs that doesn't work or can you capture a screenshot on iOS with flick? If the latter, it could be an issue with ideviceinstaller needing updating for iOS 11.

testableapple commented 6 years ago

at first idevicesyslog not working with ios11 after reinstall/relink the ideviceinstaller libraries, idevicesyslog working good

but flick still get error no, its not only log, screenshoting not working too.

isonic1 commented 6 years ago

Ah ok. Yeah, probably brew hasn't got the latest fix that was put in for the issue below. I don't have ios 11 installed yet. would you mind trying the command below to install the iOS 11 libimobiledevice libraries below?

https://github.com/libimobiledevice/libimobiledevice/issues/510

brew install https://gist.github.com/Haraguroicha/0dee2ee29c7376999178c5392080c16e/raw/libimobiledevice.rb --HEAD --with-ios11

testableapple commented 6 years ago

its not helped me

if update libmobiledevice brew install --HEAD libimobiledevice https://gist.github.com/Haraguroicha/0dee2ee29c7376999178c5392080c16e/raw/libimobiledevice.rb --HEAD --with-ios11_ ######################################################################## 100,0% Warning: libimobiledevice HEAD-5a85432_2 is already installed

if uninstall/install libmobiledevice brew uninstall --ignore-dependencies libimobiledevice brew install https://gist.github.com/Haraguroicha/0dee2ee29c7376999178c5392080c16e/raw/libimobiledevice.rb --HEAD --with-ios11 ######################################################################## 100,0% ==> Cloning https://git.libimobiledevice.org/libimobiledevice.git Updating /Users/a.alterpesotskiy/Library/Caches/Homebrew/libimobiledevice--git ==> Checking out branch master ==> Downloading https://gist.githubusercontent.com/nikias/b351bf633d62703e0ff4f2 ######################################################################## 100,0% ==> Patching ==> Applying validate_pair_fix.diff patching file src/idevice.c Hunk #1 FAILED at 256. 1 out of 1 hunk FAILED -- saving rejects to file src/idevice.c.rej patching file src/idevice.h Hunk #1 FAILED at 76. 1 out of 1 hunk FAILED -- saving rejects to file src/idevice.h.rej patching file src/lockdown.c Hunk #1 succeeded at 720 with fuzz 2 (offset 13 lines). Hunk #2 FAILED at 749. 1 out of 2 hunks FAILED -- saving rejects to file src/lockdown.c.rej Error: Failure while executing: /usr/bin/patch -g 0 -f -p1 -i /private/tmp/libimobiledevice--patch-20170915-65205-11a9ia5/validate_pair_fix.diff

isonic1 commented 6 years ago

ah, bummer was hoping that would work. iOS 11 isn't officially released until next week. Im hoping brew will have the updated fix for it by then.

testableapple commented 6 years ago

sorry, but I don't understand idevicesyslog and idevicescreenshot working good on iOS11, why it's not working with flick? and what this is the brew fix?

saikrishna321 commented 6 years ago

@alter-al what is the issue your facing ? wat does flick log say ?

isonic1 commented 6 years ago

Thanks @saikrishna321 . Yes, please run flick with --trace and copy paste the output in the terminal. Thanks.

saikrishna321 commented 6 years ago

@alter-al i use flick and it works fine with iOS11 ...

isonic1 commented 6 years ago

@alter-al try now with the latest gem. Apparently, iOS 11 removed the ability to validate a paired device so tweaked that logic a bit.

Make sure you have latest Xcode and command line tools installed and the device is not locked. Also, make sure you can see the Developer menu options in the Settings.

testableapple commented 6 years ago

@isonic1, thank you! When updated flick to 0.4.2, all works awesome (even with XCode 8.3.3)