Quería eliminar aplicaciones de los servicios de ubicación en la configuración de seguridad y privacidad en MaC OS X 10.8 Mountain Lion. (Las aplicaciones todavía estaban en la lista a pesar de que se desinstalaron). Encontré la publicación Eliminar la aplicación de los Servicios de ubicación en Seguridad y privacidad en Mac OS X 10.7 , y eso me llevó en la dirección correcta. Aquí está el equivalente de OS X 10.8.2 Mountain Lion que funcionó para mí. La principal diferencia es la ubicación del archivo clients.plist. También quería proporcionar un proceso paso a paso.
DESCARGO DE RESPONSABILIDAD: Esto funcionó para mí. Asegúrese de tener una buena copia de seguridad de su sistema. Este proceso incluye hacer una copia de seguridad del archivo clients.plist, pero uno nunca puede ser demasiado seguro.
1. Inicie la terminal y luego sudo a un shell raíz
sudo -s
2. Vaya a / var / db / locationd
cd /var/db/locationd
3. Realice una copia de seguridad del archivo clients.plist
cp -p clients.plist clients.plist.save
4. Convierta clients.plist a xml (formato editable)
plutil -convert xml1 clients.plist
5. Use vi (vim) para editar el archivo clients.plist y eliminar la aplicación.
vi clients.plist
El archivo probablemente contendrá muchas entradas de aplicación. Aquí está el formato de una sola entrada de aplicación (Safari en este caso). La entrada completa necesita ser eliminada.
<key>com.apple.Safari</key>
<dict>
<key>Authorized</key>
<true/>
<key>BundleId</key>
<string>com.apple.Safari</string>
<key>Executable</key>
<string>/Applications/Safari.app/Contents/MacOS/Safari</string>
<key>LocationTimeStopped</key>
<real>376348187.80421197</real>
<key>Registered</key>
<string>/Applications/Safari.app/Contents/MacOS/Safari</string>
<key>RequirementString</key>
<string>identifier "com.apple.Safari" and anchor apple</string>
<key>Whitelisted</key>
<false/>
</dict>
6. Convierta el archivo clients.plist a binario
plutil -convert binary1 clients.plist
7. Reiniciar locationd
killall locationd
Si las aplicaciones aún están allí, vuelva a realizar el proceso, excepto reiniciar ubicado usando kill -9 después de determinar el PID de la siguiente manera. El PID es el segundo campo en la salida ps.
ps -ef | grep locationd | grep -v grep
Salida: 205 427 1 0 6:31PM ?? 0:00.07 /usr/libexec/locationd
kill -9 427
Ejecuté el proceso dos veces para eliminar una aplicación a la vez. La primera vez, Killall fue suficiente. La segunda vez, no fue así. No se por que. Actuó como locationd estaba manteniendo un caché y reconstruyendo clients.plist. Digo esto porque las entradas se agregaron nuevamente a clients.plist después de ejecutar killall, e incluso en un reinicio. Cualquiera sea la causa raíz, usar kill -9 resolvió el problema para mí.
Si las cosas salen mal, vuelva a copiar el archivo original y reinicie la ubicación.
cp -p clients.plist.save clients.plist
killall locationd
(o el método kill -9)
Espero que esto ayude. ¡Aclamaciones!
Respuestas:
El editor de la lista de propiedades de Xcode también se puede usar para eliminar las entradas de aplicaciones antiguas, pero dado que es difícil acceder al archivo, los permisos deben abrirse temporalmente:
para que todos los usuarios puedan leer y escribir el directorio y el archivo. Luego, por conveniencia, ingrese su ID de inicio de sesión:
Esto supone que Xcode es la aplicación predeterminada para abrir archivos * .plist y está familiarizado con el Editor de listas de propiedades. Debajo de la propiedad Root, hay 3 entradas de diccionario predeterminadas:
Esos no deben ser eliminados. Para las entradas que pertenecen a aplicaciones antiguas, puede pasar el mouse justo a la izquierda de la columna Diccionario de la fila de la aplicación correspondiente, donde aparecerá un '-' gris inverso. Al hacer clic en él, se eliminará el elemento y todos sus elementos secundarios. Si prefiere inspeccionar primero la entrada, al hacer clic en el triángulo gris (familiar para los usuarios de la vista de lista del Finder) a la izquierda de la cadena de teclas se expandirá el Diccionario y mostrará sus elementos.
Una vez que elimine o deshabilite las claves a su gusto, guarde el archivo y salga de Xcode. Luego, de vuelta en la Terminal, haz:
presione la flecha hacia arriba dos veces para recuperar el comando chmod, ctrl-Apara ir al principio de la línea, cursor-rightaproximadamente ocho veces, cambie el '+' a '-' o ingrese lo siguiente como se muestra para restaurar los permisos a lo que eran:
luego HUP el demonio de ubicación:
una verificación rápida de la pestaña Security.PrefPane Privacy debería confirmar sus cambios.
Descargos de responsabilidad estándar, cuentos de advertencia sobre la aflicción, regaños, abucheos y "¿Es realmente necesario este viaje?" Las reflexiones son especialmente aplicables.
fuente
Uso de tccutil (utilidad de línea de comandos de OS X)
Creo que la forma más rápida y segura de hacerlo es mediante la utilidad de línea de comandos OS X tccutil
Restablecer los servicios de ubicación
Restablecer acceso a contactos / libreta de direcciones:
Restablecer acceso a recordatorios
Restablecer acceso a calendarios
Y eso es todo. No se necesita Sudo, por cierto.
fuente
tccutil reset CoreLocationAgent
ya no parece funcionar. Ver este número .Esta es la antigua y la solución que propongo no es técnicamente diferente de la solución en la publicación y la aceptada, pero es mucho menos complicada y mucho más fácil de automatizar (útil para la depuración). Solo haz
como raíz
fuente
Además de las respuestas anteriores, este problema solo desapareció después de corregir la propiedad del archivo:
Luego reinicie la computadora.
fuente