4 votos

Necesidad de un espacio de almacenamiento de contactos secundario accesible sólo para CallerId

El almacenamiento de contactos en Android está bastante estandarizado y unificado entre todas las aplicaciones, y accesible dependiendo del nivel de permiso.

Sin embargo, necesito una manera de almacenar algunos contactos que no deberían estar en el espacio de almacenamiento de contactos estándar, ya que es accesible por todas las aplicaciones de mensajería y no hay manera de ocultar los contactos de aparecer selectivamente en ellos, aparte de eliminar el contacto.

Sin embargo, si se borran por completo, será difícil identificarlos durante una llamada entrante.

Por lo tanto, quiero tener una manera de guardar los contactos que se puede evitar que se accede por todas las aplicaciones, pero yo debería ser capaz de identificarlos en una llamada entrante.

¿Cómo hacerlo? Cualquier aplicación o almacenar en archivo csv... ¿Alguna sugerencia por favor?

Tenga en cuenta que cualquier aplicación de identificación de llamadas que se basa en la nube, no es la opción que estoy buscando. Quiero lograr esto para los contactos que conozco y he guardado solamente.

0 votos

Me temo que no hay forma de acceder a los contactos selectivos. Aunque los almacenes en "particiones" separadas, siempre los mantiene el "proveedor de contactos". Así que puedes prohibir o permitir a una aplicación el acceso a todos contactos. Aunque existen puede ser una aplicación de teléfono que viene con su propio almacenamiento de contactos sólo accesible a sí mismo (técnicamente factible seguro), no recuerdo haber visto tal. Pero bienvenido sea cotejar mi lista .

0 votos

@Izzy, ¿qué tan difícil será escribir una aplicación para un completo principiante con sólo conocimientos de C? ¿O hay alguna otra forma de hacerlo por mi mismo? Los tengo almacenados en un archivo excel. Sólo estoy atascado con la búsqueda y encontrar parte. Agarrar el número de teléfono de entrada y más tarde mostrarlo como una ventana emergente se puede hacer todo por Automatice .

1 votos

Yaksha, no soy programador de Android así que no te lo puedo decir. Si es sólo para CallerID (que no estaba claro hasta ahora), no debería ser demasiado complicado - pero las preguntas de desarrollo están fuera de tema aquí. Mencionando Automate, puede que alguien ya haya escrito una receta correspondiente incluso.

5voto

Yaksha Puntos 1

Yo mismo he encontrado una solución. En lugar de escribir una aplicación completa para Android, descubrí que Automatice tiene bloques de función SQLite. Así que acabo de escribir un flujo para lograr esto y se puede encontrar en

http://llamalab.com/automate/community/flows/17889

Vista previa de ese flujo:

flow preview
Vista previa de ese flujo (haga clic para ampliar)

1voto

Thally Ace Puntos 193

Puedes almacenar los contactos en .csv no hay problema convirtiendo el archivo .vcf de copia de seguridad de contactos por defecto o utilizando aplicaciones como contactos a excel. Pero ya sabes que los contactos son entidades que necesitan un procesamiento rápido, se almacenan en la partición /cache. Simplemente porque es una memoria más rápida que EMMC, FAT, exFAT etc. Todas las aplicaciones los leen desde allí. No hay ningún algoritmo que pueda leer los contactos de tu partición /sdcard donde estoy seguro que existe tu archivo .csv. La aplicación Contactos sólo ve los contactos. Del mismo modo se les proporciona a otras apps. Una app llamada Contacts Provider es la responsable de servir el flujo de contactos desde /cache. Como se trata de una aplicación del sistema, tiene enlaces a aplicaciones y permisos en todo el sistema. A menos que la conviertas en una aplicación de usuario extrayendo sus librerías y clases y recompilándola como aplicación de usuario y estableciendo los enlaces a las aplicaciones que autorices, será como negar el acceso a los contactos a otras aplicaciones. Así que esto es imposible.

0 votos

Veo que estás pensando. Eso funcionará. Una base de datos de contactos a recuperar necesitará una aplicación de automatización que también integre lenguaje de consulta. Sí Macrodroid es una aplicación que puede automatizar y que puedo utilizar profesionalmente. Pero no tiene lo del lenguaje de consulta. Quizás si consigues una aplicación que pueda buscar dentro del csv y mostrar el nombre de la persona, Macrodroid te puede ayudar a recuperar eso en un pop-up en la llamada inmediatamente. Pero si entiendes la aplicación Tasker, es una aplicación moderna de automatización pesada uno a uno que te puede ayudar supongo. Pero no lo entiendo mucho

0 votos

Por supuesto. Porque si no vas a usar lenguaje de consulta, definitivamente estás tratando de crear los nombres de los contactos como variables y sus números como valores. En la llamada reportando el valor, muestra el nombre de la variable. Esto será demasiado caro para utilizar la aplicación de automatización. Pero el desarrollo de una aplicación no es tan malo que hacer. Si quieres esta cosa tan en serio. Ahí es donde me gustaría que Android era Windows Computer, la cosa de Excel y BASIC podría ser divertido

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X