As you probably know, I am a software engineer at heart. After a looooooog time I took to designing and coding. This time on Android. Last weekend I sat down and started to dabble with Java programming (which I have never done in my life, because I was a core Microsoft guy) and Android app development.
What started off as an Android learning session turned into a full-fledged app!
For a long time, I have had an idea of having an app to automate all my data connections such as WiFi, 2G/3G, Bluetooth and Sync based on my usage. I needed this app to manage my connections and my Sync so that its optimized based on my usage. I searched on Google play store and elsewhere for something which matched my requirement, I found quite a few and tried them. Many of them were good, some of them were crappy, some were too complex and some were way too expensive for what I needed.
So I thought about creating a simple app which would automate WiFi, 2G/3G, Bluetooth and Sync based on my need. That idea gave birth to this app called Schedule-ALL.
You can buy this app here at Google Play Store
UPDATE: After sharing this app with family and friends - I had one consistent question from most of them. WHY ON EARTH WOULD I NEED THIS APP IN THE FIRST PLACE??
I thought I had answered that in my FAQs section, but apparently that's not enough. So let me try it one more time
About Data Connections and Sync In Your Phone
Firstly - Depending on the model of your phone, it may have upto 4 types of data connections
Secondly - There is something called a Sync service which runs in the background. This service is used by your phone to sync things like Emails, Contacts updates, Newsfeeds, RSS feeds, Regular photo uploads, Google+ updates, Facebook Timeline updates and so on. So Sync takes up a lot of data. Since Sync requires either WiFI or 2g/3g it also takes up your battery.
NOTE - Sync is not used to send/receive Whatsapps, hangouts, Facebook or other notifications . So putting Sync off doesn't affect these messengers.
Most manufacturers, by default, keep WiFi, 2/3G, NFC and Sync to be always on. There are 2 adverse effects of this.
What this app does is the following
App is based on the following Design Philosophy
I will now let you enjoy some of the screen shots and the App FAQs
2. Once I have set the schedules, how long will these schedules run?
3. Will the app drain my battery?
5. Why does manual toggle of NFC take me to settings? and why cant I schedule NFC?
6. Will Schedule-ALL help me save my battery?
Stop Wifi only if Wifi is Disconnected - If you have scheduled your wifi to be stopped at a certain time say at 1:00PM everyday if you check this box then the app will check if you are still connected to any WiFi network. If you are connected to any Wifi Network then it will not disable the WiFi and rechedule itself to check back to see if the Wifi can be disconnected in 30 minutes.
Start Data Only if Wifi is NOT Connected - This will prevent your scheduled data from starting if you are connected to WiFi.
Stop Data Only if Wifi is Connected - This will start the data only if you are disconnected from WiFi.
There 2 Purpose these settings server
1. They ensure that Data (2G/3G) is not enabled unnecessarily if you are already connected to WiFi.
2. They ensure that you always connected to one network or the other.
These settings only affect your scheduled connection controls. As usual, you can always override these with manual settings.
What started off as an Android learning session turned into a full-fledged app!
For a long time, I have had an idea of having an app to automate all my data connections such as WiFi, 2G/3G, Bluetooth and Sync based on my usage. I needed this app to manage my connections and my Sync so that its optimized based on my usage. I searched on Google play store and elsewhere for something which matched my requirement, I found quite a few and tried them. Many of them were good, some of them were crappy, some were too complex and some were way too expensive for what I needed.
So I thought about creating a simple app which would automate WiFi, 2G/3G, Bluetooth and Sync based on my need. That idea gave birth to this app called Schedule-ALL.
You can buy this app here at Google Play Store
UPDATE: After sharing this app with family and friends - I had one consistent question from most of them. WHY ON EARTH WOULD I NEED THIS APP IN THE FIRST PLACE??
I thought I had answered that in my FAQs section, but apparently that's not enough. So let me try it one more time
About Data Connections and Sync In Your Phone
Firstly - Depending on the model of your phone, it may have upto 4 types of data connections
- WiFi
- 2G/3G
- Bluetooth
- NFC (Near Field Communication)
Secondly - There is something called a Sync service which runs in the background. This service is used by your phone to sync things like Emails, Contacts updates, Newsfeeds, RSS feeds, Regular photo uploads, Google+ updates, Facebook Timeline updates and so on. So Sync takes up a lot of data. Since Sync requires either WiFI or 2g/3g it also takes up your battery.
NOTE - Sync is not used to send/receive Whatsapps, hangouts, Facebook or other notifications . So putting Sync off doesn't affect these messengers.
Most manufacturers, by default, keep WiFi, 2/3G, NFC and Sync to be always on. There are 2 adverse effects of this.
- Your battery drains unnecessarily
- Your phone consumes a lot of data in the background without your knowledge
What this app does is the following
- Lets you schedule which connections (WiFi, 2g/3g and Bluetooth) is ON at what time of the day. Let's say, if you are in office from 9 AM to 6 PM, then you dont need the WiFi to be ON at that time. But you would need your 2g/3g Data and Bluetooth (for phone call) to be ON
- Lets you schedule at what intervals your sync service runs. Lets say you are OK to check your mails every 2 hours, then can schedule Sync to run every 2 hours
- Apart from this it lets you choose WIFi as a priority data connection over 2G/3G (by using those check boxes). This ensures you are not unnecessarily on 2g/3g data connection when you can as well be on WiFi. This reduces your 2g/3g data consumption.
Benefits of this kind of scheduling is 2 folds
- Only the RIGHT data connection (2g/3g or WiFI) is kept ON - There by reducing battery drain
- Sync is not always ON - Reducing battery drain and reducing 2g/3g data usage when on 2G/3G network
App is based on the following Design Philosophy
- It should be simple and intuitive to use
- It should not take you through too many screens
- It should let you schedule connections toggles and sync toggles in less that 10 seconds
You try it and see for yourself I met my own design philosophy
I will now let you enjoy some of the screen shots and the App FAQs
1. What does the app do?
App allows you to perform following actions
a. Manually Toggle WiFi, Bluetooth, Data and NFC connections.
b. Manually start Sycn and set the duration for the sync to run.
c. Schedule Sync to start every X minutes and run for Y minutes once it has started.
d. Schedule Wifi, Bluetooth, Data and Sync to start and stop at specific time of the day everyday.
e. Cancel All the previous schedules (so you can start a fresh).
a. Manually Toggle WiFi, Bluetooth, Data and NFC connections.
b. Manually start Sycn and set the duration for the sync to run.
c. Schedule Sync to start every X minutes and run for Y minutes once it has started.
d. Schedule Wifi, Bluetooth, Data and Sync to start and stop at specific time of the day everyday.
e. Cancel All the previous schedules (so you can start a fresh).
2. Once I have set the schedules, how long will these schedules run?
All schedules will run as long as you don’t cancel
your schedules (Using 'Cancel All Schedules' button) or un-install the app. The
app will re-schedule all your previously set schedules on reboot. So you dont
need to worry about setting them again. Schedules will also be intact even if
you update the app (without un-installing) from the play store.
3. Will the app drain my battery?
No, app itself is not in the memory after you have
set your schedules. App uses Android's AlarmManager APIs to delegate the
schedules to Android OS. It behaves in exactly the same way your android alarm
clock does, except everything is in the background, so you wont even notice it.
4. Why would I need this app?
If, like me, you have set times when you want
Data/Bluetooth/WiFi/Sync to be enabled or disabled everyday and you dont want
to manually go into settings to do all this, this app will do it for you.
Ensuring right connections are enabled at the right time. Controlling sync will
help you to not only ease your life but it will also save your device's battery
life.
My Settings are:
Sync: Run every 2 hours for 5 mins (this is more than enough for downloading emails over 3G or Wifi. On 2G you may increase the duration to run to maybe 10 mins)
Wifi: Start time-17:00 AND Stop time-10:00 (this is the time I am at home, I start wifi an hour earlier than I reach home)
Data: Start time-8:00 AND Stop time-18:00 (this is the time when I am out)
Bluetooth: Start time-8:00 AND Stop time-18:00 (this is the time when I am out)
My Settings are:
Sync: Run every 2 hours for 5 mins (this is more than enough for downloading emails over 3G or Wifi. On 2G you may increase the duration to run to maybe 10 mins)
Wifi: Start time-17:00 AND Stop time-10:00 (this is the time I am at home, I start wifi an hour earlier than I reach home)
Data: Start time-8:00 AND Stop time-18:00 (this is the time when I am out)
Bluetooth: Start time-8:00 AND Stop time-18:00 (this is the time when I am out)
5. Why does manual toggle of NFC take me to settings? and why cant I schedule NFC?
Answer to first question: Google Android APIs
doesnt provide any direct control over NFC connections to programatically stop
or start it. Apps can only use the NFC connection, if it has alreayd been
started. I have given the next best option to let the user go to the system
settings screen and toggle it manually.
Answer to second question: Since Android APIs do not allow to manually start/stop NFC, its pointless to provide a scheduling mechnism, unfortunately! :-(
Answer to second question: Since Android APIs do not allow to manually start/stop NFC, its pointless to provide a scheduling mechnism, unfortunately! :-(
6. Will Schedule-ALL help me save my battery?
Although I dont explicitly claim that Schedule-ALL
will save battery juice, it has been proven that using connections that you
only need and stopping all other connections does improve battery life. Most
battery saver apps use controlling connections as one of the foremost weapon to
protect battery juice from draining. Also Sycn is huge drainer of battery and
it uses a lot of data if its on continuously. So yes, it will definitely help
your device battery perform better also saving you data usage.
7. How to use settings 'Stop Wifi only if Wifi is Disconnected', 'Start
Data Only if Wifi is NOT Connected' and 'Stop Data Only if Wifi Is Connected' ?
Stop Wifi only if Wifi is Disconnected - If you have scheduled your wifi to be stopped at a certain time say at 1:00PM everyday if you check this box then the app will check if you are still connected to any WiFi network. If you are connected to any Wifi Network then it will not disable the WiFi and rechedule itself to check back to see if the Wifi can be disconnected in 30 minutes.
Start Data Only if Wifi is NOT Connected - This will prevent your scheduled data from starting if you are connected to WiFi.
Stop Data Only if Wifi is Connected - This will start the data only if you are disconnected from WiFi.
There 2 Purpose these settings server
1. They ensure that Data (2G/3G) is not enabled unnecessarily if you are already connected to WiFi.
2. They ensure that you always connected to one network or the other.
These settings only affect your scheduled connection controls. As usual, you can always override these with manual settings.
8. What is 'Sync ONLY when connected to WiFi?
If you have scheduled your sync
to start at specific times, then checking this setting will start the sync only
if the device is connected to WiFi network. If you are n 2G or 3G then the Sync
will not start. This doesn’t affect the
manual Sync.
No comments:
Post a Comment
I would be really interested to know your comments. Please leave one: