Ich möchte Anrufe von wenigen Nummern blockieren, dafür möchte ich eine eigene App schreiben. Welche APIs sollte ich verwenden?
Grundsätzlich möchte ich benachrichtigt werden, wenn ein Anruf kommt. Ich möchte Nummern vergleichen, wenn es das ist, was ich blockieren möchte. Ich möchte den Anruf abbrechen oder stummschalten oder wenn möglich stumm schalten und aufzeichnen.
android
phone-call
incoming-call
callblocking
Anurag Uniyal
quelle
quelle
Antworten:
OH MEIN GOTT!!! JA DAS KÖNNEN WIR TUN!!! Ich wollte mich nach 24 Stunden Nachforschungen und Entdeckungen umbringen ... Aber ich habe eine "frische" Lösung gefunden!
// "cheat" with Java reflection to gain access to TelephonyManager's // ITelephony getter Class c = Class.forName(tm.getClass().getName()); Method m = c.getDeclaredMethod("getITelephony"); m.setAccessible(true); telephonyService = (ITelephony)m.invoke(tm);
Hunderte von Menschen, die ihre Anrufsteuerungssoftware entwickeln möchten, besuchen diesen Startpunkt
Es gibt ein Projekt. und es gibt wichtige Kommentare (und Credits)
kurz: Hilfedatei kopieren, Berechtigungen zum Manifest hinzufügen, Quelle kopieren und einfügen für die Telefonieverwaltung)))
Noch ein paar Infos für dich. AT-Befehle können Sie nur senden, wenn Sie gerootet sind. Dann können Sie den Systemprozess beenden und Befehle senden, aber Sie müssen neu starten, damit Ihr Telefon Anrufe empfangen und senden kann =)))
Ich bin sehr glücklich =) Jetzt wird mein Shake2MuteCall ein Update bekommen!
quelle
Es ist möglich und Sie müssen es nicht selbst codieren.
Stellen Sie einfach die Ruftonlautstärke auf Null und die Vibration auf Null, wenn incomingNumber einer leeren Zeichenfolge entspricht. Das ist es ...
Es ist nur für Sie mit der Anwendung Nostalk von Android Market erledigt. Probieren Sie es einfach aus ...
quelle
In Android-N ist diese Funktion enthalten. Überprüfen Sie das Update zum Blockieren von Nummern für Android N.
Vorteil sind:
Weitere Informationen finden Sie unter
android.provider.BlockedNumberContract
Aktualisieren Sie ein vorhandenes Projekt.
Um Ihre App für die Android N-Plattform zu kompilieren , müssen Sie das Java 8 Developer Kit (JDK 8) verwenden . Um einige Tools mit Android Studio 2.1 verwenden zu können , müssen Sie die Java 8 Runtime Environment (JRE 8) installieren .
Öffnen Sie die Datei build.gradle für Ihr Modul und aktualisieren Sie die Werte wie folgt:
android { compileSdkVersion 'android-N' buildToolsVersion 24.0.0 rc1 ... defaultConfig { minSdkVersion 'N' targetSdkVersion 'N' ... } ... }
quelle
Sie können einfach bestimmte Nummern in Ihren Kontakten an Ihre Voicemail weiterleiten. Das wird schon unterstützt.
Ansonsten wäre die Dokumentation für 'Kontakte' ein guter Ort, um mit der Suche zu beginnen.
quelle
Sie können dies tun, indem Sie Telefonanrufereignisse abhören. Sie tun dies, indem Sie einen BroadcastReceiver für PHONE_STATE und NEW_OUTGOING_CALL haben. Dort finden Sie die Telefonnummer.
Wenn Sie sich dann entscheiden, den Anruf zu beenden, ist dies etwas schwierig, da es nur mit Android P garantiert funktioniert. Überprüfen Sie hier .
quelle