2017-04-25 2 views
1

Derzeit entwickle ich eine Android-App, die Nachricht von der Serverseite empfängt (als Push-Benachrichtigung) & diese Nachrichten in der Datenbank speichern.Wie erkennen Sie Telefonnummern in Nachricht (String), markieren Sie sie und erlauben dem Benutzer, diese Nummern in Android anrufen?

Diese Nachrichten werden in der Liste angezeigt, wie gezeigt & jede Nachricht muss Funktionalität haben, die es dem Benutzer ermöglicht, die in der Nachricht angezeigten Nummern aufzurufen.

, was ich versucht habe bisher:

  1. Linkify Gebrauchte Nummer markieren & es ermöglicht dem Benutzer mit der Nummer vorbelastet, um Wählhilfe-Fenster zu umleiten. Meine Anforderung besteht darin, direkt anzurufen, ohne zum Dialer zu navigieren. Ich weiß, es ist nicht empfehlenswert, direkt anzurufen, aber diese App muss diese Funktionalität haben.

2.Pattern Matching:

String regex = "^\\+(?:[0-9] ?){6,14}[0-9]$"; // Also tried [^-?0-9]+ 
    Pattern pattern = Pattern.compile(regex); 
    Matcher matcher = pattern.matcher(mText);` 

Wahrscheinlich machen I''m Fehler bei Pattern-Matching, da es nicht eine beliebige Anzahl von Meldung angezeigt wird.

Beispiel Nachricht 1: "Bitte rufen Sie Paul unter diesen Nummern an: 900-445-1549 Oder unter einer anderen Nummer: 797-2436-2455 zur Unterstützung".

Beispiel Nachricht 2: "Bitte rufen Sie Paul unter dieser Nummer: 900-445-1549 zu unterstützen".

Also im Grunde möchte ich über zwei Nummern/eine Nummer von Nachricht erkennen, markieren Sie diese & in der Lage, direkt auf tippen zu nennen.

Antwort

0

Finden Sie die Lösung

  1. Programatically

    Linkify.addLinks(yourTextView, Linkify.PHONE_NUMBERS); 
    
  2. In XML-Datei

    android:autoLink="phone" 
    
+0

ich Linkify schon versucht, aber es navigiert Benutzer Bildschirm Dialer. Bitte lies meine ganze Frage und was ich erreichen möchte. –

+0

willst du direkt anrufen auf klick der telefonnummer oder? – Rajasekhar

+0

Ja, sobald Telefonnummern in der Nachricht erkannt werden. –

Verwandte Themen