Penso di aver capito.
Grazie Luca
#Region Service Attributes
#StartAtBoot: False
#ExcludeFromLibrary: True
#End Region
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
Dim str As String
End Sub
Sub Service_Create
'This is the program entry point.
'This is a good place to load resources that are not specific to a single activity.
End Sub
Sub Service_Start (StartingIntent As Intent)
' Log(StartingIntent)
' Log(StartingIntent.ExtrasToString)
If StartingIntent.Action = "android.intent.action.PHONE_STATE" Then
Select StartingIntent.GetExtra("state")
str = StartingIntent.ExtrasToString
Log("FINISCE LA TELEFONATA: " & str)
'onhook - call ended or phone idle
Case "ILDE"
Log("ILDE")
'outgoing call processing
Case "OFFHOOK"
Log("OFF")
'incoming call processing
Case "RINGING"
Log("CallerID="&StartingIntent.GetExtra("incoming_number"))
End Select
End If
If StartingIntent.Action = "android.intent.action.NEW_OUTGOING_CALL" Then
str = StartingIntent.ExtrasToString
Log("PARTE LA TELEFONATA: " & str)
If StartingIntent.HasExtra("android.intent.extra.PHONE_NUMBER") Then
Dim myphone As String
myphone = StartingIntent.GetExtra("android.intent.extra.PHONE_NUMBER")
Log(myphone)
End If
End If
End Sub
Sub Service_TaskRemoved
'This event will be raised when the user removes the app from the recent apps list.
End Sub
'Return true to allow the OS default exceptions handler to handle the uncaught exception.
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
Return True
End Sub
Sub Service_Destroy
End Sub
AddPermission(android.permission.READ_PHONE_STATE)
AddReceiverText(Starter,
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>)
' FOR OUTGOING CALLS
AddPermission(android.permission.PROCESS_OUTGOING_CALLS)
AddReceiverText(Starter, <intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>)
Guarda bene nella finestra log....e questa parte di codice:Grazie Marco Funzionaaaa
ti chiedo una cortesia, non riesco ad intercettare quando termina la Telefonata.
E dovrei poter chiudere la telefonata dopo 20 secondi che il telefono suona e l'utente non risponde.
Grazie mille per i tuoi consigli
.....
Log("FINISCE LA TELEFONATA: " & str)
'onhook - call ended or phone idle
.......
In questo esempio si può sia rispondere a che concludere una telefonata:se non chiedo troppo mi puoi dire il comando che chiude la telefonata ?
Luca questo era un esempio per window mobile...sono dll ( dinamyc link library sconosciute ad android ) dubito ( sono certo ) che lavorinoIn questo esempio si può sia rispondere a che concludere una telefonata:
https://www.b4x.com/android/forum/threads/answering-and-dropping-a-call-from-code.1736/
Troppa fretta, ho guardato solo il titolo e parte del primo post... del 2008 !Luca questo era un esempio per window mobile...sono dll ( dinamyc link library sconosciute ad android ) dubito ( sono certo ) che lavorino
ciao LucaNon penso sia perfetta ma prova questa.
Grazie LucaThere is no direct api for detecting that when the outgoing call answered, but yes Its possible only in Rooted phones Since Android 5.0 this is possible for system apps. But you need to use the hidden Android API.
Traduzione:
Non esistono API dirette per rilevare se viene risposto ad una telefonata in uscita, ma è possibile con telefoni "rootati", dalla versione Android 5.0. Ma si deve utilizzare l'API Android nascosta.
Se ti va bene anche solo da Android 5.0 in su e, soprattutto, solo su telefoni rootati, si dovrà adattare per B4A questo codice Java:
http://stackoverflow.com/questions/13134331/cannot-detect-when-outgoing-call-is-answered-in-android