¿El OS X registra las notificaciones del Centro de notificaciones?

14

El útil compañero del centro de notificaciones OSX Growl por defecto registra todas las notificaciones recibidas . Puede definir qué tan grande puede ser el registro o deshabilitar el registro en la aplicación.

Desde la última actualización, Growl ofrece reenviar todas las notificaciones al Centro de notificaciones de OS X.

¿OS X también registra los mensajes del Centro de notificaciones? En caso afirmativo, ¿dónde puedo encontrarlos?

Por qué estoy preguntando esto:

OS X registra todas sus descargas en una base de datos SQLite 3.x. Quiero saber si sucede algo similar con las notificaciones también. Esto podría ser un problema de privacidad al pensar en mensajes privados o correos electrónicos si se almacena demasiada información.

Gentmatt
fuente

Respuestas:

14

Esta es una vieja pregunta, pero en caso de que alguien se tropiece y esté específicamente preocupado por las implicaciones de privacidad del Centro de notificaciones, la respuesta es SÍ, OS X mantiene un registro de notificaciones en el disco.

El formato es una base de datos sqlite, y se puede encontrar dentro de esta carpeta:

~/Library/Application Support/NotificationCenter

En el interior encontrará al menos un archivo .db para su cuenta, he visto algunos que OS X aparentemente consideró corruptos en un punto, por lo que se llaman .db.corrupt.

Ejecutar el comando de cadenas en este archivo le mostrará una carga de datos binarios, bastantes nombres de clase "NSSomething" y sí, sus iMessages, rutas de archivos, notificaciones de Twitter y Facebook y cualquier otra cosa que una aplicación haya enviado al Centro de notificaciones o el sistema.

Si desea deshacerse de ese archivo en un punto específico en el tiempo, puede matar al usuario anotado temporalmente (se reiniciará) y eliminar el archivo de una sola vez (ejecute esto como su cuenta de usuario, no con sudo):

killall usernoted && rm ~/Library/Application\ Support/NotificationCenter/*.db

Esto, el 99% del tiempo, capturará a los usuarios notados mientras no se está ejecutando temporalmente, eliminará con éxito la base de datos anterior, y los usuarios notificados crearán una nueva vacía cuando comience de nuevo.

Esta no es una buena solución si está realmente preocupado por la privacidad, pero aparte de encriptar su sistema o usar un ramdisk para esa carpeta, realmente no hay una solución.

steveatinfincia
fuente
55
A partir de OS 10.10 Mavericks, la base de datos de notificaciones parece estar en un directorio temporal en lugar de ~/Library. En mi máquina está adentro$TMPDIR/../0/com.apple.notificationcenter/db/db
un nerd pagado el
6

En Mac OSX (o macos) 10.10 y posterior, este archivo se ha movido. El nombre de archivo no es el mismo para todos, por lo que debe hacer un poco de investigación para encontrarlo:

  1. Inicie 'Monitor de actividad' (en / Aplicaciones / Utilidades)
  2. Busque el proceso usernoted, haga doble clic en él
  3. Vaya a la pestaña "Abrir archivos y puertos"

Está en una /com.apple.notificationcenter/db subcarpeta en / private / var / carpetas .

(¡gracias a /programming/26754189/new-location-of-the-notification-center-db-file-in-10-10 por la nueva ubicación!)

Éter
fuente
2

En High Sierra 10.4.3 puede ubicarse mediante los siguientes comandos

getconf DARWIN_USER_DIR
/var/folders/60/23gd59655q70qf_ckxjyhrzr0000gn/0/
ls /var/folders/60/23gd59655q70qf_ckxjyhrzr0000gn/0/com.apple.notificationcenter/

Hay una carpeta db y una carpeta db2: parece que la base de datos se migró a db2 en noviembre.

usuario667522
fuente
2

Sí, OSX registra las notificaciones. Están en el archivo sqlite3 db y db-wal.
Como en 10.14.6 - Mojave, la ruta del archivo se puede encontrar a través de:

lsof -p $(ps aux | grep -m1 usernoted | awk '{ print $2 }')| awk '{ print $NF }' | grep 'db2/db$' | xargs dirname
Oscar Zhang
fuente
1

Sí, las notificaciones se agregarán al Centro de notificaciones si no confirma / hace clic en ellas cuando aparece. Puede acceder a ellos haciendo clic en el icono del Centro de notificaciones en la esquina superior derecha de su barra de menú.

ingrese la descripción de la imagen aquí

Sin embargo, todos se enumeran en la aplicación Growl y no en la aplicación de origen, y hacer clic en ellos no parece llevar a ningún lado, por lo que la funcionalidad es un poco limitada en comparación con las notificaciones estándar de Growl y el Rolll Rollup.

Esta es probablemente una limitación en la forma en que los desarrolladores de Growl pueden dirigirse al Centro de notificaciones, y supongo que solo tendremos que esperar a que todas las aplicaciones incorporen el Centro de notificaciones directamente (junto a / en lugar de Growl) para recibir notificaciones un poco más funcionales.

Gerry
fuente
2
Gracias Gerry, estaba al tanto de esto. :) Estoy buscando un registro permanente en algún lugar de la Biblioteca donde se almacene información sobre todas las notificaciones publicadas. OS X, por ejemplo, registra todas sus descargas . Me pregunto si algo similar sucede con las notificaciones también. Eso podría ser un problema de privacidad al pensar en mensajes privados o correos electrónicos.
gentmatt