¿OS X registra notificaciones del Centro de notificaciones?

El útil compañero del centro de notificaciones de OSX Growl registra por defecto 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? Si es así, ¿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.

Respuestas (5)

Esta es una vieja pregunta, pero en caso de que alguien se tropiece con ella 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

Dentro encontrará al menos un archivo .db para su cuenta, he visto algunos que OS X aparentemente consideró corruptos en algún momento, por lo que se llaman .db.corrupt.

Ejecutar el comando de cadenas en este archivo le mostrará una gran cantidad de datos binarios, bastantes nombres de clases "NSAlgo", y sí, sus iMessages, rutas de archivos, notificaciones de Twitter y Facebook y cualquier otra cosa que haya sido enviada al Centro de notificaciones por una aplicación o el sistema.

Si desea deshacerse de ese archivo en un momento específico, puede eliminar la nota de usuario temporalmente (se reiniciará solo) 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% de las veces, atrapará a usernoted mientras no se está ejecutando temporalmente, eliminará con éxito la base de datos anterior y usernoted creará una nueva vacía cuando se inicie de nuevo.

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

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á en$TMPDIR/../0/com.apple.notificationcenter/db/db
Manera rápida de encontrar el directorio para el usuario actual:find /private/var/folders -user $USER -name com.apple.notificationcenter 2>/dev/null
¿Cómo leo db-wal? stringsparece decodificar todo como ASCII.

En Mac OSX (o macos) 10.10 y posteriores, este archivo se ha movido. El nombre del archivo no es el mismo para todos, por lo que debe investigar un poco 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 subcarpeta /com.apple.notificationcenter/db en /private/var/folders .

(¡gracias a https://stackoverflow.com/questions/26754189/new-location-of-the-notification-center-db-file-in-10-10 por la nueva ubicación!)

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
¡Gracias! Esto encuentra el db-walarchivo. Sin embargo, cuando intento leerlo, me pide una contraseña. ¿Alguna idea de cómo conseguir eso?

En High Sierra 10.4.3 puede ubicar 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 db2; parece que la base de datos se migró a db2 en noviembre.

Sí, las notificaciones se agregarán al Centro de notificaciones si no las confirma o hace clic en ellas cuando aparecen. Puede acceder a ellos haciendo clic en el icono del Centro de notificaciones en la esquina superior derecha de la 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 Growl Rollup.

Esta es probablemente una limitación en la forma en que los desarrolladores de Growl pueden abordar el 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 obtener notificaciones un poco más funcionales.

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