Utknąłem w tej samej łodzi.
Chociaż nie wierzę, czyszczenie aplikacji z centrum powiadomień, które zostały wpisane do rejestru jest udokumentowany krok, jest wyraźnie niektóre setup rzeczy do zrobienia, że. Oto co odkryłem. Te dane nie są przechowywane w bazie plist, ale raczej sqlite.
Jeśli spojrzysz na ~/Library/Application Support/NotificationCenter/<id>
(w moim przypadku miałem tylko jeden katalog pod NotificationCenter), zobaczysz plik <id>.db
w katalogu.
Redaktora uwaga: Hofi wskazuje, że od MacOS 10.10 powiedział SQLite bazy danych można znaleźć w katalogu zwracanych przez polecenie powłoki
$(getconf DARWIN_USER_DIR)com.apple.notificationcenter/db
, nazwany po prostu db
.
Poking wewnątrz, widzę jak app_info
tabele, app_source
, presented_notifications
itp Ponadto schemat zawiera oczyszczenia spust, który wygląda tak:
CREATE TRIGGER app_deleted AFTER DELETE ON app_info
BEGIN
DELETE FROM scheduled_notifications WHERE app_id=old.app_id;
DELETE FROM presented_notifications WHERE app_id=old.app_id;
DELETE FROM presented_alerts WHERE app_id=old.app_id;
DELETE FROM notifications WHERE app_id=old.app_id;
DELETE FROM app_push WHERE app_id=old.app_id;
DELETE FROM app_loc WHERE app_id=old.app_id;
DELETE FROM app_source WHERE app_id=old.app_id;
END;
Korzystanie z sqlite3 klienta, jeśli nie
select * from app_info;
pierwsza kolumna jest app_id
od aplikacji, druga kolumna jest z aplikacji bundleid. Znajdź swoją aplikację na podstawie pakietu. Następnie wykonaj ustawienie, gdzie znajduje się poprawny identyfikator aplikacji znaleziony za pomocą powyższego polecenia select.
Co było frustrujące było to, że po zrobieniu tego, wszystko wokół mieszkaliśmy w NotificationCenter (zarówno w centrum i Preferencje systemowe). Musiałem się wylogować i zalogować ponownie, aby zmiany zaczęły obowiązywać, ale na szczęście moje aplikacje testowe już się nie pojawiły ;-)
Jeśli ktoś wie o mniej skomplikowanym sposobie, to ja mam tylko uszy.
Możesz 'sudo killall usernoted', aby uniknąć konieczności wylogowywania. –
w dniu 10.10 baza danych została przeniesiona, aby uzyskać lokalizację z terminalu 'cd $ (getconf DARWIN_USER_DIR)/com.apple.notificationcenter/db' – Hofi
Po usunięciu wpis zostaje ponownie zainstalowany po restarcie. – powder366