Wie erfahre ich, welche App meinen Fokus in OS X gestohlen hat?

6977
Josh Bleecher Snyder

Das aktive Fenster auf meiner Maschine verliert gelegentlich den Fokus. Die aktive App bleibt dieselbe. Wenn ich zuvor in Chrome war, bin ich jetzt noch in Chrome. Das aktive Fenster ist jedoch nicht mehr aktiv. Kein Fenster ist aktiv Das ist frustrierend; Es geschah, als ich diese Frage tippte, und meine Tastatureingaben hörten plötzlich auf zu registrieren.

Ich glaube, dass eine andere App den Fokus stiehlt, aber selbst keine Benutzeroberfläche zur Anzeige hat. Das aktive Fenster wird also nicht aktiv, die aktive App bleibt jedoch aktiv.

Die Frage ist: Wie kann ich die fehlerhafte App aufspüren, damit ich sie verärgert löschen kann? Normalerweise ist der Täter bei Fokusdiebstahl offensichtlich, weil er scharf eingestellt ist. In diesem Fall bin ich verblüfft.

18
Sie können das Menü "Apple> Force Quit ..." versuchen, um zu sehen, ob etwas läuft, das nicht sein sollte. Michael Frank vor 10 Jahren 0
@MichaelFrank Es werden keine Anwendungen angezeigt, die keine Menüleiste haben (z. B. Anwendungen, bei denen "LSUIElement" in "Info.plist" auf "true" gesetzt ist). Diese sind absolut dazu in der Lage. Daniel Beck vor 10 Jahren 1
@ DanielBeck Ahh, gotcha. Das ist praktisch zu wissen. Michael Frank vor 10 Jahren 0
Zu Ihrer Information, ich habe im Grunde dieselbe Frage zu Apple SE gestellt: [Gibt es eine Möglichkeit zu erkennen, welches Programm den Fokus auf meinem Mac stiehlt?] (Http://apple.stackexchange.com/questions/123730/is-there-a- Weg zu erkennen, was Programm stiehlt-Fokus-auf-mein-Mac) Kevin Reid vor 10 Jahren 1
`der Anwendung" Systemereignisse "mitteilen, um die Warnung ((Name des ersten Anwendungsprozesses, dessen vorderster Wert wahr ist) als Zeichenfolge anzuzeigen) Daniel Beck vor 10 Jahren 0
Sucht die Liste der Anwendungen, die mit Hilfe der Anmeldehilfe gestartet wurden? * Systemeinstellungen »Benutzer und Gruppen» (Ihr Benutzername) »Login-Elemente * Daniel Beck vor 10 Jahren 0
@KevinReid Danke! Traurig, keine fertigen Antworten zu sehen. Josh Bleecher Snyder vor 10 Jahren 0
@DanielBeck Dies ist ein Arbeitslaptop. Darauf laufen alle möglichen Dinge, von denen viele nicht von mir installiert wurden. Ich fürchte, die Inspektion wird wahrscheinlich nicht die Antwort liefern, die ich brauche. Ich habe mir die Login Items angesehen, aber alle haben eine Menüleiste. Ich vermute, ich könnte ein Skript schreiben, um durch meine Festplatte zu scrollen, "Info.plist" für "LSUIElement" auf "false" zu parsen und dort zu beginnen ... Josh Bleecher Snyder vor 10 Jahren 0

2 Antworten auf die Frage

25
medmunds

Hier ist ein Skript, das Ihnen mitteilt, welche App aktiviert wird, ohne Sie darüber zu informieren. Ich habe es von einer Antwort auf die Frage von @ KevinReid auf Apple SE angepasst .

Lassen Sie es in einem Terminal laufen, warten Sie, bis die Rogue-App den Fokus stiehlt, und sehen Sie, welche App zuletzt aufgeführt ist. (Für mich: Google Drive. Andere haben Symantec-AV-Daten gemeldet.)

#!/usr/bin/python   try: from AppKit import NSWorkspace except ImportError: print "Can't import AppKit -- maybe you're running python from brew?" print "Try running with Apple's /usr/bin/python instead." exit(1)  from datetime import datetime from time import sleep  last_active_name = None while True: active_app = NSWorkspace.sharedWorkspace().activeApplication() if active_app['NSApplicationName'] != last_active_name: last_active_name = active_app['NSApplicationName'] print '%s: %s [%s]' % ( datetime.now().strftime('%Y-%m-%d %H:%M:%S'), active_app['NSApplicationName'], active_app['NSApplicationPath'] ) sleep(1) 
Dieses Skript sagt mir, dass mein Schuldige "Google Drive [/ Applications / Google Drive.app]" ist MarkHu vor 9 Jahren 0
Der Schuldige für mich war schließlich Symantec. Josh Bleecher Snyder vor 9 Jahren 0
In meinem Fall ist es SecurityAgent [/System/Library/Frameworks/Security.framework/Versions/A/MachServices/SecurityAgent.bundle] Ed Randall vor 6 Jahren 0
0
Paul E

Das klingt albern und absurd einfach ... Ich hatte das gleiche Problem mit meinem Laptop, als ich das Trackpad oder die integrierte Tastatur verwendet habe. Hatte zwei separate Laptops ähnliche Erfahrungen gemacht, nachdem ich etwas Feuchtigkeit ausgesetzt war (ja, ich habe auf die Tastatur geschüttet).

Das Hinzufügen von peripherer Maus und Tastatur löste es für mich.

Interessant. Ich verwende eine externe Maus und eine externe Tastatur, aber hoffentlich hilft dies jemand anderem. Vielen Dank. Josh Bleecher Snyder vor 10 Jahren 1