14 votes

Suppression du badge de notification du dock pour les applications qui ne sont pas dans le centre de notification

Pour les applications nuisibles qui définissent une icône de notification en forme de badge, mais qui ne sont pas dans le centre de notifications des paramètres, existe-t-il un moyen de bloquer l'icône en forme de badge ?

Spotify, par exemple, crée une notification pour chaque événement insignifiant, sans qu'il soit possible de la bloquer dans l'application.

Personnellement, je ne comprends pas comment les applications sont autorisées à montrer une icône de badge sans être dans le centre de notifications en premier lieu.

Exemple :

enter image description here

29voto

Cameron Booth Points 3037

J'ai une solution que j'ai réussi à inverser. Je l'ai testée sur ma machine, sous Yosemite 10.10.4 (14E46). Si vous pouvez trouver l'ID du bundle (dans le fichier Info.plist du bundle de l'application), vous pouvez utiliser ce script pour forcer l'application à apparaître dans le panneau de préférences des notifications.

# "Usernoted" seems to be the "user notifications daemon", so get it's PID.
pid=$(ps aux | grep -i [u]sernoted | awk '{print $2}')

# Find the sqlite3 database that this program has open. It's in a "private" folder (app sandboxing).
db="$(lsof -p $pid | grep com.apple.notificationcenter/db/db\$ | awk '{print $9}')"

# I got the bundleid from Spotify.app/Contents/Info.plist
bundleid="com.spotify.client"

# I use 0 as the flags because you can change all the settings in System Preferences
# 5 seems to be the default for show_count
# Grab the next-highest sort order
sql="INSERT INTO app_info (bundleid, flags, show_count, sort_order) VALUES ( '$bundleid', 0, 5, (SELECT MAX(sort_order) + 1 FROM app_info) );"

# Run the command
sqlite3 "$db" "$sql"

# Restart usernoted to make the changes take effect
killall usernoted

À ce stade, vous pouvez ouvrir Préférences Système -> Notifications, et vous trouverez l'application que vous venez d'ajouter en bas de la liste. Vous pouvez activer / désactiver le badgeage de l'icône à partir de cette page.

0voto

Ch333 Points 9

Pour les personnes qui sont des noobs mac comme moi, pour créer et exécuter le script ci-dessus :

1. Ouvrez TextEdit,
2. Mettez l'éditeur en mode texte brut - Format > Faire du texte brut.
(Si vous sautez cette étape, il ne vous laissera pas l'enregistrer en tant que script).
3. Collez le script ci-dessus dans la fenêtre TextEdit
4. Enregistrez le fichier comme un script - Fichier > Enregistrer sous dans TextEdit. Entrez votre nom de fichier suivi de l'extension ".sh", puis enregistrez le document sur le bureau.
5. Ouvrez l'application Terminal
6. Naviguez sur le bureau dans Terminal - Tapez dans (puis appuyez sur entrée) :

cd Desktop7\. Définissez les autorisations pour le fichier que vous venez de créer afin de pouvoir l'exécuter - Tapez dans Terminal (puis appuyez sur en) :    sudo chmod 700 file.sh(Remplacez "file.sh" par le nom de votre script).  

8. Exécutez le fichier - Tapez dans Terminal : ./file.sh(Encore une fois, remplacez "file.sh" par le nom de votre script).
9. Ouvrez Notifications dans Préférences Système. Vous devriez pouvoir trouver l'application Spotify et désactiver les notifications.

Source pour créer un script : Terminal 101 : Automatiser le terminal avec des scripts Bash

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X