Android Question How to automatically show messages from app on detecting internet connectivity


Well-Known Member
Licensed User
Iam currently using firebase to send notification to all users . but sometimes you find that some users phone may either be off or due to internet challenges my not receive notification at that time . When i send notification i save a copy into my database .so is their a way of automatically bring back the sent messages immediately when ever there is internet connectivity even when the user has not opened the app. as it is with Whatsapp. because as soon as you connect the internet the messages automatically comes thanks in advance.

The code i have here returns the messages only when some has opened the app . But i wanted these messages to automatically come as soon as there is internet connectivity. because what happens with firebase notification they only come when the phone is currently on at that time . if the phone is switch on the second day they don't come . So i wanted as soon as internet is detected then the person who didnt get a message can automatically be notified when he has not opened the app

Sub Service_Start (StartingIntent As Intent)
    cursor = SQL1.ExecQuery("SELECT phone AS Phone,Sex FROM Register")
    If cursor.RowCount > 0 Then
        cursor.Position =0
        Dim Phonet As String
        Phonet = cursor.Getstring("Phone")
        Dim sx As String
        sx = cursor.Getstring("Sex")
        '    sx = "Father"
    End If
    Dim CustID As String = Phonet' Customer ID
    Dim jtk As HttpJob
    jtk.Initialize("", Me)
    'j.Download("" & CustID)
    jtk.Download("" & CustID & "&bcode=" & sx)
    'jtk.Download("" & CustID & "&bcode=" & sx)
    'jtk.GetRequest.Timeout = 10000 ' 10 seconds
    Wait For (jtk) JobDone(jtk As HttpJob)

    If jtk.Success Then ' if job is success (http status code 200)
        Dim RetVal As String
        RetVal = jtk.GetString
        If jtk.GetString = "[]" Then
            'Msgbox("Please try Again ","SMIS")
            Dim jpt As JSONParser
            'Log(jpt) ' will pr
            Dim quotes As List = jpt.NextArray
            For Each quot As Map In quotes
                Log("Account: " & quot.Get("Account"))
                Log("sms: " & quot.Get("sms"))
                Log("Datesent: " & quot.Get("Datesent"))
                Service.StartForeground(nid, CreateNotification(quot.Get("sms")))
                StartServiceAt(Me, DateTime.Now + 60 * DateTime.TicksPerMinute, True)
        End If
    End If
End Sub
Last edited:


Licensed User
Longtime User
Off the top of my head, I don't know of any Intent that gets broadcast when the device "connects" to the internet. If there is one, then maybe you can setup a static intent (or maybe a dynamic intent if you run a continuous service) to handle it.

My only other suggestion is to create a service that you schedule to run every 5 or 10 minutes (try Erel's background location tracking sample for an example of how to do this) and have it keep trying to check your database and see if there were any new messages sent during the time the device was not connected to the internet. If the device still doesn't have an internet connection, then it will check again in 5-10 minutes, and so on until it gets a connection and if there are any new messages, notify the user.
Last edited:
Upvote 0