Włącz wskaźnik dotykowy dla nagrywania wideo demonstracyjnego aplikacji na iOS

31

Chciałbym nagrać film demonstracyjny aplikacji na iOS z QuickTime na Yosemite. (Znalazłem ten samouczek ) Czy można włączyć wskaźnik dotknięcia, taki jak małe kółko, dla zdarzeń dotykowych, aby użytkownicy mogli łatwo zauważyć, gdzie autor dotknął?

Thom
źródło

Odpowiedzi:

33
defaults write com.apple.iphonesimulator ShowSingleTouches 1

pojedynczy dotyk


Jak znalazłem to ustawienie?

Ukryte opcje można znaleźć, uruchamiając poniższe polecenie, a następnie, cóż, zastanawiając się, co robią. Są nieudokumentowane i można je usunąć w dowolnym momencie.

strings /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app/Contents/MacOS/Simulator | grep -E '^[A-Z][[:alpha:]]+$' 

Jeśli możesz mieć problem z przejściem do śmieci, dodaj

| grep -E '(Enable|Disable|Show|Number)' | sort

mam

AppleTVRemoteWindowDidShow
EnableKeyboardSync
NSDisabledCharacterPaletteMenuItem
NSDisabledDictationMenuItem
NSScreenNumber
ShowChrome
ShowChromeUIRects
ShowPinchPivotPoint
ShowPinches
ShowSingleTouches
ShowUITestMenu
TouchBarShowRemoteTemplate

ShowChrome to Okno> Pokaż ramki urządzenia. ShowChromeUIRects rysuje pewne linie wokół ramki. Szczypce mają charakter opisowy. ShowUITestMenu wyświetla wyłączone menu na pasku symulatora (?). Przetestuję TouchBarShowRemoteTemplate, gdy wrócę do mojego MacBooka touch. Nie wiem, co robią inni.

W przypadku Xcode polecenie powinno brzmieć:

strings /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/IDEKit | grep -E '^IDE[[:alpha:]]+$'

a polecenie defaults powinno mieć przedrostek com.apple.dt.Xcode. Na przykład

defaults write com.apple.dt.Xcode IDEIndexerActivityShowNumericProgress 1

ShowSingleTouches jest naprawdę przydatny, ale większość opcji jest bez znaczenia lub po prostu hałas. Na przykład powyższe polecenie pokazuje liczbę indeksowanych plików zamiast ogólnego paska postępu. Zatem tylko hałas.

Jano
źródło
11
„Jak znalazłem to ustawienie” +1
Ahmed Khalaf
3
Bardzo dobrze. Zastanawiam się, czy istnieje sposób, aby pokazać to podczas nagrywania ekranu za pośrednictwem xcrun simctl io booted recordVideo.
Daniel Pendergast
4
Działa to w przypadku symulatora, ale nie w przypadku nagrywania prawdziwego urządzenia.
Travis Griggs
@TravisGriggs spróbuj w tym celu pomocy dotykowej. Zobacz apple.stackexchange.com/a/250290/8668
Jano
Dzięki @Jano. Bawiłem się tym. Nie jestem tym naprawdę zachwycony. Pozostawia przez cały czas asystenta dotykowego sterowania i chociaż gest stuknięcia jabłka może być świetny do pomocy ludziom w tym geście, nie jest świetny jako grafika do pokazania, kiedy i gdzie coś zostało dotknięte. Chyba spróbuję jednego z rozwiązań bibliotecznych.
Travis Griggs
7

Zdarzenia dotykowe nie są rejestrowane na iOS 9 i niższych, więc musisz albo ustawić kamerę, aby przechwytywać krany i wyświetlać je obok szczegółowych zdjęć lub użyć go do nakładania kranów w postprodukcji.

To taki świetny pomysł, że złożyłem raport o błędzie, aby oficjalnie poprosić Apple o wsparcie.

bmike
źródło
1
Używam iOS 9.2 i OS X 10 - nie widzę zdarzeń dotykowych, kiedy nagrywam dema iPhone'a. Powiedziałeś „nie daj się złapać na iOS 9 i niższych”, ale oba moje systemy operacyjne są aktualne. Co miałeś na myśli?
Dave G
3
Po prostu sprawia, że ​​ten post jest przyszłościowy :)
Johnny Z
PS: Nadal nie ma możliwości przechwytywania gestów za pomocą Quicktime (iOS 11.3, Mac OS 10.13)
Annjawn
@JohnnyZ dobrze zrobione! Mój żywopłot był potrzebny tylko przez około 16 miesięcy. Przyszłość już nadeszła .
bmike
7

Jeśli chcesz zaprezentować własne aplikacje (tzn. Jeśli masz rzeczywisty kod źródłowy i możesz wykonać specjalną wersję demonstracyjną), najlepszym sposobem jest dodanie pomocnika do projektu Xcode, takiego jak https://github.com/ toddreed / Touchpose lub https://github.com/mapbox/Fingertips . Oba nakładają na twoje dotknięcia (konfigurowalny) wskaźnik linii papilarnych po podłączeniu do zewnętrznego lustra (na przykład podczas nagrywania AirPlay lub Quicktime).

DrMickeyLauer
źródło
2
Dziękuję za Twoją odpowiedź. Palce działają magicznie: obsługuje szybki, symulator iOS i bardzo prosty w instalacji.
kelin
Czy jest jakiś sposób, by użyć Palców do nagrywania tego wyjścia? Próbowałem wysłać go do Quicktime na Macu, ale wizualizacja gestów nie wydaje się przy tej konfiguracji.
RegularExpression
@RegularExpression Tak. Możesz ustawić opcję na opuszkach palców alwaysShowTouches = true.
PaulMest
Potrzebowałem czegoś do C # Xamarin.iOS i jestem analfabetą Obj-C, więc znalazłem implementację Swift github.com/LukasCZ/GSTouchesShowingWindow-Swift
Colin
1
Mój port GSTouches LukasShowingWindow-Swift dla Xamarin: github.com/ColinNg/GSTouchesShowingWindow-Xamarin
Colin
2

Możesz to zrobić, tworząc własny gest dotknięcia w Ustawieniach> Ogólne> Dostępność> AssistiveTouch> CreateNewGesture, jak wyjaśniono w poniższym linku: record-iphone-ios-screen-showing-touches-tap-signs

Następnie wybierz gest jako ulubiony przed nagraniem filmu za pomocą odtwarzacza QuickTime.

smora
źródło
Witamy, aby zapytać inaczej! Proszę powstrzymać się od podawania przede wszystkim odpowiedzi „link”. Staramy się znaleźć najlepsze odpowiedzi, które dostarczą informacji, dlaczego są najlepsze. Linki mogą się zmieniać z czasem, a następnie tracimy kontekst pytanie-odpowiedź. Zobacz Jak odpowiedzieć na pytanie, jak udzielić wysokiej jakości odpowiedzi. - Z recenzji -
fsb
Możesz to zrobić, dodając kod do biblioteki niektórych z tych bibliotek: TouchVisualizer lub COSTouchVisualizer
smora
2

Jeśli tworzysz własną aplikację, możesz skorzystać z kilku bibliotek. W chwili publikacji oto 4 biblioteki iOS, które znalazłem uporządkowane według gwiazd GitHub:

  1. https://github.com/conopsys/COSTouchVisualizer (Obj-C, 936 gwiazdek)
  2. https://github.com/mapbox/Fingertips (Obj-C, 724 gwiazdki)
  3. https://github.com/morizotter/TouchVisualizer (Swift, 638 gwiazdek)
  4. https://github.com/toddreed/Touchpose (Obj-C, 533 gwiazdek)
PaulMest
źródło
I przeniosłem GSTouchesShowingWindow-Swift dla Xamarin.iOS : github.com/ColinNg/GSTouchesShowingWindow-Xamarin Mój zły port jest wadliwy, ale na krótkie serie jest w porządku.
Colin,
1

Możesz także dotknąć / AppleInternal na dysku, aby odblokować ukryte opcje w symulatorze (GUI niektórych ukrytych ustawień domyślnych)

Może to wymagać rozruchu w celu odzyskania, aby to zrobić w nowoczesnych wersjach systemu operacyjnego

pijany
źródło
Należy zauważyć, że będzie to działać tylko w High Sierra i starszych.
iCediCe
0

Darmowe, przenośne i skuteczne rozwiązanie Kane Cheshire: ShowTime .

Można dodać za pomocą cocoapods lub dołączając pojedynczy plik do projektu. Dzięki za jego wysiłki!

Kelin
źródło