4 votes

Suppression du badge de notification du Mac App Store dans le Dock

# "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

Comment appliquer un tel script pour le Mac App Store afin qu'il apparaisse dans les paramètres du centre de notification ? Je n'ai pas la moindre idée de la façon de modifier le script ci-dessus pour qu'il fonctionne avec l'App Store :( Je veux éviter les mises à jour du système et j'aimerais me débarrasser du badge numéroté sur l'icône dans le Dock. Merci d'avance !

4voto

Waitsnake Points 53

Juste une solution de contournement (testé avec 10.11.3) :

  1. Ouvrir ~/Bibliothèque/Préférences/com.apple.dock.plist avec l'éditeur Plist de votre choix (par exemple Xcode).
  2. Ouvrez la propriété (tableau) avec le nom "persistent-apps".
  3. Dans ce tableau se trouve un élément pour chaque application persistante (celles qui restent si vous fermez l'application) dans votre Dock. Le Finder en première position du Dock n'est PAS dans cette liste ! La première application après le Finder est dans "Item 0", la deuxième dans "Item 1" et ainsi de suite. Trouvez le numéro de l'élément dans le tableau où vous avez l'App Store et ouvrez l'élément pour voir les sous propriétés.
  4. Ouvrez également la propriété "tile-data". Vous devriez maintenant voir une sous-propriété "dock-extra" de type BOOLEAN.
  5. Dans la propriété "file-data/_CFURLString" ou la propriété "bundle-identifier", vous pouvez vérifier si vous avez vraiment trouvé le bon numéro d'article pour l'App Store.
  6. Changez la valeur de " dock-extra " de OUI à NON puis enregistrez et fermez la plist.
  7. Redémarrez votre Dock dans un terminal avec la commande "killall Dock" ou redémarrez votre système.

Je crée un petit shell script qui fait le même travail. Il utilise l'outil terminal "PlistBuddy" qui est livré avec Xcode.

#!/bin/bash
/usr/libexec/PlistBuddy -c "set persistent-apps:7:tile-data:dock-extra false" ~/Library/Preferences/com.apple.dock.plist
sync
killall Dock

Le "7" dans le script correspond à la position du tableau de l'app store dans le dock comme expliqué à l'étape 3 ci-dessus (et doit être ajusté à votre configuration).

Cette méthode présente encore des problèmes :

  1. Le badge de notification rouge de l'App Store ne disparaît qu'aussi longtemps que l'App Store est fermé . Tant que vous ouvrez l'App Store, vous voyez le badge de notification rouge de toute façon.

  2. Quand vous déplacer la position de l'App Store dans votre Dock (peut-être parce que vous y ajoutez une nouvelle application) la valeur "dock-extra" est automatiquement remis sur "OUI". et vous verrez à nouveau le badge de notification rouge. Ensuite, vous devez répéter le processus pour la nouvelle position de l'élément de l'App Store dans votre Dock.

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