El siguiente ejemplo AppleScript código funciona para mí bajo macOS High Sierra :
Nota: Cambie "Calendar"
en set appName to "Calendar"
a la aplicación de destino apropiada.
set appName to "Calendar"
if running of application "System Preferences" then
quit application "System Preferences"
delay 1
end if
tell application "System Preferences"
set the current pane to pane id "com.apple.preference.notifications"
delay 1
tell application "System Events"
tell table 1 of scroll area 1 of window 1 of application process "System Preferences"
repeat with i from 2 to (count rows)
if value of static text 1 of group 1 of UI element 1 of row i is appName then
select row i
exit repeat
end if
end repeat
end tell
delay 0.2
click checkbox "Badge app icon" of group 1 of window 1 of application process "System Preferences"
end tell
quit
end tell
Las Preferencias del Sistema no necesitan estar visibles para que esto funcione y por qué no hay un comando activate
en el ejemplo AppleScript código . Además, si Preferencias del sistema ya está abierto, primero se cierra antes de que se procese el resto del código . Esto se hace por un par de razones, la primera de las cuales ya se mencionó y, en segundo lugar, ver los eventos de IU procesados es una distracción visual y puede ser molesto.
También tenga en cuenta que el valor de los comandos delay
puede necesitar un ajuste para su sistema, y / o comandos adicionales delay
Puede o no ser necesario. Ajuste valores de y / o agregue / elimine los comandos delay
según corresponda.
Para una versión que actúa en varias aplicaciones o en todas las aplicaciones en Centro de notificaciones en Preferencias del sistema , consulte mi respuesta a: ¿Eliminar múltiples iconos de distintivos de aplicaciones con un script?
Nota: El ejemplo AppleScript código es solo eso y no emplea ningún manejo de errores y está destinado solo a mostrar una de las muchas maneras en que se puede realizar una tarea. La responsabilidad recae siempre sobre el Usuario para agregar / usar el manejo de errores según sea necesario / deseado.