Italian Libreria chiamate

Releow

Member
Salve a tutti, per utilità mi serve creare un app che faccia ciò:
Quando si riceve una chiamata -> Legga numero -> Se è quello che dico io (Es. 1231231233) -> Leva volume -> Accetta chiamata -> Se è possibile attiva vivavoce.

Ho letto un pò nel forum ma i source code non sono spiegati e a me non piace fare copia e incolla, quindi se qualche buon'anima ha voglia di spiegarmene uno.

Grazie, Releow.
 

arenaluigi

Well-Known Member
Licensed User
Longtime User
Come prima cosa devi crearti un servizio.
Devi usare le librerie "AnswerCall","Phone","Reflection"

Ti dichiari le seguenti variabili:
B4X:
 Dim PE As PhoneEvents
    Dim AC As AnswerCall
    Dim PhoneId As PhoneId
    Dim Phone_ As Phone

Alla creazione del servizio fai questo, inizializzi gli eventi:
B4X:
Sub Service_Create

    PE.InitializeWithPhoneState("PE",PhoneId)
    AC.Initialize("AnswerCall")       
End Sub

Questo è l'evento più importante, che gestisce il cambio di stato del telefono:

B4X:
Sub PE_PhoneStateChanged (State As String, IncomingNumber As String, Intent As Intent)
    Dim x As Int
    AC.LetPhoneRing(3000)
   
'se il telefono sta squillando
    If AC.isRinging == True Then
        if IncomingNumber="12345666666" then
           'Silenziatore o quello che ti serve
           Phone_.SetRingerMode(Phone_.RINGER_SILENT)
        else
           'riporti tutto allo stato iniziale
           Phone_.SetRingerMode(Phone_.RINGER_NORMAL)
        end if
   end if       
End Sub
Questo è il macro funzionamento, se hai dubbi chiedi.
 
Top