Android: Using service, check if connection get broken - android

Iam connection to services trougth my app, I woul like to check if the connections gets broken, alert a message than.
Or is this taken carre of in android?
If not, How should I take care of it? is there a timer?

If you are connecting to built-in services of Android, for example Connection with GPRS, WIFI or MOBILE 3G connection, then you can register a Broadcast Receiver that will tell the user when the connection is lost.
But if you are connecting to your custom-made services, for example ABC Application, then you would have to make your own service, that will periodically (example every 15mins) will check the connectivity with ABC Application. Hope this helps.

Related

Android service for listening for network connections

As the title says, I'm wondering if the there is some way in Android for listen to network connections. Something like using a service that is registered to handle the SMS messages that, for example, we can consume the SMS and broadcast or not that SMS.
The idea is that my app will sit on the background and be notified when some app makes a network connection. Based on some rules, my app can decide if this network connection will be denied or allowed.
As an example, suppose an app tries to connect to the Wireless network with SSID "netA". My app would be notified and if the rule is to deny this app on "netA" the calling app would not be able to connect to the network.
Any idea if this is possible?
Why don't you use a Broadcast recevier that listen for some events?.
It seems to me from your description that you don't need a Service, that is a android component that runs long time task, but something that listens to events.
Give a look here

Remote Device Internet Connectivity Status - Android

I am working on a Server-client mechanism in which my client is a mobile device running any version of android. I want to check through my server if the remote android client is connected to the internet and the internet is working on it. I know there is no straight forward approach in this kind of scenario.
Would making the android client ping my server after every 5 minutes would be the best solution ? Or there is any other more efficient way that I am not aware of.
Any help regarding this would be appreciated.
You can use Connectivity Manager as a broadcast that can give you the status of the connectivity.
So whenever you want to check from server about the connectivity of the internet, you can use that status value to know the internet connection status.
As mentioned in docs (connectivity-monitoring) -
The ConnectivityManager broadcasts the CONNECTIVITY_ACTION ("android.net.conn.CONNECTIVITY_CHANGE") action whenever the connectivity details have changed. You can register a broadcast receiver in your manifest to listen for these changes and resume (or suspend) your background updates accordingly.
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>

Bluetooth and internet connection in background (android)

I want to develop an application that use the internet connection and the bluetooth connection in background. Each 5min my application get information from my bluetooth device and send the data on a server via the internet connection. It's possible to have internet and bluetooth connection in background on android?
Yes this would be possible, You would want to use some form of service or ASyncTask to handle this which could sleep for five minutes to avoid any excess battery drain. You will also need to ensure that the app does not close when the user leaves the app so that you can continue sending and receiving data.
Here's some help on the internet side of things:
http://developer.android.com/training/basics/network-ops/connecting.html
and bluetooth:
http://developer.android.com/reference/android/bluetooth/package-summary.html
That should be enough for you to get started, best of luck! :)

Android - automatically start a service when joining a specific wifi network

I am trying to build an application/service that will execute some coding everytime I connect to a specific wifi network (to log into that network and then keep the connection active ). I do already have the code for the login part and it is working fine, but I don't really know how I can automatically run this code when I connect to a network.
Ideally, I would like to build a service that starts when I join a specific wifi network, keeps the connection active (like makes a request every 10 min to keep the connection active) and finally stops when I leave that network.
I know how to build the service and keep it active, but don't know how to start and stop it automatically when joining / leaving a wifi network. Any suggestions on how to do this is appreciated. If my approach is not correct and there is a better/simpler way to do that, please let me know
Regards,
Marcel
you need a broadcast receiver.
this broadcast receiver will receives broadcasts of Wifi connected and wifi disconnected actions and from there you can start and stop your service.
Implement a BroadcastReceiver listening for the scan results from WifiManager.startScan()
Have a look at Android Scan for Wifi networks

How to monitor internet connection loss in android service

I want to write an android service at is activated when the internet connection goes down, and displays another activity to user when that happens. I don't know how to start to write this service. Can any one give me an idea or better tutorial how to catch the connection down within Android service.
Thanks
When Internet connectivity changes, the system sends out a broadcast with an android.net.conn.CONNECTIVITY_CHANGE intent. You should be able to create a broadcast receiver that will be called whenever the device is connected or loses its connection.
You've to write a receiver for the connection changes.
You can look right here : Android, How to handle change in network (from GPRS to Wi-fi and vice-versa) while polling for data

Categories

Resources