Bedarf an sekundärem Kontaktspeicherplatz, auf den nur für CallerId zugegriffen werden kann

Der Kontaktspeicher in Android ist ziemlich standardisiert und unter allen Apps vereinheitlicht und je nach Berechtigungsstufe zugänglich.

Ich brauche jedoch eine Möglichkeit, einige Kontakte zu speichern, die sich nicht im Standard-Speicherplatz für Kontakte befinden sollten, da alle Messaging-Apps darauf zugreifen können und es keine Möglichkeit gibt, Kontakte vor dem selektiven Erscheinen in ihnen zu verbergen, außer den Kontakt zu löschen.

Wenn Sie sie jedoch vollständig löschen, ist es schwierig, sie bei einem eingehenden Anruf zu identifizieren.

Ich möchte also eine Möglichkeit haben, Kontakte zu speichern, auf die von allen Apps nicht zugegriffen werden kann, aber ich sollte in der Lage sein, sie bei einem eingehenden Anruf zu identifizieren.

Wie kann dies geschehen? Jede App oder Speichern in einer CSV-Datei ... Irgendwelche Vorschläge bitte?

Bitte beachten Sie, dass Cloud-basierte Anrufer-Identifikations-Apps nicht die Option sind, nach der ich suche. Ich möchte dies nur für Kontakte erreichen, die ich kenne und die ich gespeichert habe.

Befürchte, es gibt keine Möglichkeit für selektiven Kontaktzugriff. Selbst wenn Sie sie in separaten "Partitionen" speichern würden, ist es immer der "Kontaktanbieter", der sie verwaltet. So können Sie einer App den Zugriff auf alle Kontakte entweder verbieten oder erlauben. Obwohl es möglicherweise eine Telefon-App mit einem eigenen Kontaktspeicher gibt, auf den nur sie selbst zugreifen kann (technisch sicher machbar), kann ich mich nicht erinnern, eine solche gesehen zu haben. Aber Sie können gerne meine Liste überprüfen .
@Izzy, wie schwierig wird es sein, eine App für einen absoluten Anfänger mit nur C-Kenntnissen zu schreiben? Oder gibt es eine andere Möglichkeit, dies selbst zu tun? Ich habe sie in einer Excel-Datei gespeichert. Ich stecke nur mit dem Suchen und Finden Teil fest. Das Abrufen der Telefonnummer aus eingehenden und späteren Anzeigen als Popup kann alles von Automate erfolgen .
Yaksha, ich bin kein Android-Programmierer, also kann ich es nicht sagen. Wenn es nur für CallerID ist (was bisher nicht klar war), sollte es nicht zu kompliziert sein – aber Entwicklungsfragen sind hier off-topic. Bei der Erwähnung von Automate könnte jemand anderes sogar schon ein entsprechendes Rezept geschrieben haben.
@Izzy, ich konnte es in Automate selbst zum Laufen bringen. Danke :)
Danke für die Selbstantwort (Upvoted)! Hoffe, meine Bearbeitung ist für dich in Ordnung :) Ich werde die Kommentare hier dann ein wenig aufräumen.

Antworten (2)

Ich habe selbst eine Lösung dafür gefunden. Anstatt eine komplette Android-App zu schreiben, fand ich heraus, dass Automate selbst SQLite-Funktionsblöcke hat. Also habe ich einfach einen Flow geschrieben, um dies zu erreichen, und er kann unter gefunden werden

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

Vorschau dieses Ablaufs:

Flow-Vorschau
Vorschau dieses Flows (zum Vergrößern klicken)

Sie können die Kontakte in .csv speichern, es gibt kein Problem, indem Sie die standardmäßige Kontaktsicherungs-.vcf-Datei konvertieren oder Anwendungen wie Contacts to Excel verwenden. Aber Sie wissen, dass Kontakte Entitäten sind, die eine schnelle Verarbeitung benötigen, sie werden von der /cache-Partition gepuffert. Einfach weil das ein schneller Speicher ist als EMMC, FAT, exFAT etc. Alle Apps lesen sie von dort aus. Es gibt keinen Algorithmus, der jemals die Kontakte von Ihrer /sdcard-Partition lesen wird, wo ich sicher bin, dass Ihre .csv-Datei vorhanden sein wird. Die Kontakte-App zeigt nur die Kontakte an. Ebenso wie andere Apps ihnen zur Verfügung gestellt werden. Eine App namens Contacts Provider ist für die Bereitstellung des Kontaktstroms aus /cache verantwortlich. Da es sich um eine System-App handelt, verfügt sie systemweit über App-Links und Berechtigungen. Es sei denn, Sie machen es zu einer Benutzer-App, indem Sie es extrahieren. seine Bibliotheken und Klassen und kompilieren Sie sie neu in die Benutzer-App und setzen Sie die App-Links auf Apps, die Sie autorisieren, aber es wird immer noch so sein, als würden Sie den Kontaktzugriff auf andere Apps verweigern. Das ist also unmöglich.

Ich sehe, du denkst. Das wird funktionieren. Eine Datenbank mit abzurufenden Kontakten benötigt eine Automatisierungsanwendung, die auch eine Abfragesprache integriert. Ja, Macrodroid ist eine Anwendung, die sich automatisieren lässt und die ich professionell nutzen kann. Aber es hat nicht die Abfragesprache. Wenn Sie eine Anwendung erhalten, die in der CSV-Datei suchen und den Namen der Person anzeigen kann, kann Macrodroid Ihnen möglicherweise dabei helfen, diesen sofort in einem Popup-Fenster abzurufen. Aber wenn Sie die App Tasker verstehen, handelt es sich um eine moderne App zur schweren Automatisierung, die Ihnen helfen kann, denke ich. Aber ich verstehe nicht viel
Definitiv. Denn wenn Sie keine Abfragesprache verwenden, versuchen Sie definitiv, die Kontaktnamen als Variablen und ihre Nummern als Werte zu erstellen. Beim Abrufen des Werts wird der Variablenname angezeigt. Dies ist zu teuer, um die Automatisierungsanwendung zu verwenden. Aber die Entwicklung einer Anwendung ist nicht schlecht. Wenn du das Ding so ernsthaft willst. Da wünschte ich mir, Android wäre Windows Computer, das Excel-Ding und BASIC könnte Spaß machen