Battery doctor uses different stages of charging:
speed; continuous and trickle (keep charging when the battery is full for some time)
does this really extend battery life?
and can an app change the way the device is being charged anyway?
Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. It only takes a minute to sign up.Sign up to join this community
Proper explanation is fairly technical, so am answering in broad terms (you can skip the links if you don't want to get into nitty gritty)
Charging rate is a measure that governs at what current a battery is charged and discharged. At 1C, a battery rated 1,000mAh charges at a current of 1,000mAh. In an ideal world the battery would be fully charged in 60 minutes. At 1C, the same battery discharges at 1,000mA. Ideal charging rate is accepted to be around 0.5 to ,0.8 C for maximum battery life (battery life is measured in charge/discharge cycles). When you charge a battery at this rate, it goes through three stages of charging (Constant Current Charge,Saturation Charge and Ready No Current). For more information, if you are inclined, battery university has a bunch of informative articles on this.
If you charge your battery with the OEM charger and measure charging rate using 3C Battery Monitor Widget or Ampere, and plot, you will find that the graph fairly resembles to that of the referenced link above of battery university. This would also fairly resemble , the "continuous" mode of your app
If you want maximum battery life, it is best to stick with OEM charger or equivalent charger that is equally rated. Device manufacturers have different algorithms built in to regulate current flow at different stages of battery charging mainly to:
a) quickly charge the battery , typically to charge the battery to 50% as you see advertised as a special feature (on a side note, cheap battery chargers do it the hardware way (and a destructive way). See this to get an idea https://electronics.stackexchange.com/). The disadvantage with this and quick or fast charge is that battery is not charged sufficiently in the saturation charge stage (it spend less time in that stage) and doesn't deliver the same capacity as with regular charge. It's like drinking a bottle of Coke, when you are hungry, you may feel full but your body hasn't got the nutrients and calories as from a regular meal :-)
b) to prevent battery damage due to excessive charging like in cases of leaving the charger plugged in overnight (by limiting charging current to near zero)
There is NO way for an app to over ride the device specific algorithms and it's implementation in the ROM. To change this implementation, app will have to change the system files after the system has booted, which is not possible AFAIK, and these apps cannot possibly ship that across the spectrum of devices and different Android Versions. On the other hand, custom kernels(and associated kernel tweaker apps) can permit a) fast charging or quick charging b) increasing or decreasing the charging current provided the ROM and hardware support. Agni kernel, is one such kernel I have used to charge faster when connected to USB. Note that charging at more than 1C can damage battery as shown in Fig.2 here
Charging in "trickle charge" of your app is similar to charging your battery for longer period in the last stage of battery charging, which is useful if you want to have the battery at 100% charge when you unplug the charger, but is a bad idea, since battery chemistry dictates battery deterioration at high temperatures due to internal stress.
A variation of this last stage charging is called "bump charging", wherein the charger is disconnected upon full charge, discharged for a few minutes and again charged. This cycle is repeated a few times. A bad idea for longevity of battery as can bee seen from Fig.2 and Table 2 here.
Both these methods are not recommended for normal usage but may be useful occasionally, when you have a long day ahead and may not be able to charge like travelling, hiking etc.
(Related aspect- you may have noticed that your battery drop is much faster from 100 to 90%, compared to say 80 to 70 %. Which is actually a good thing, because, it is protecting your battery staying at higher internal temperatures. To understand this, have a look at Your battery gauge is lying to you....not a bad thing. Based on this, IMO, it is better to charge the battery when it drops to 30% and stop charging when it reaches 90%. ( I can almost hear one ask, what about battery life which is measured in number of charge/ discharge cycles, won't that be reduced, if I try this? No, it shouldn't matter, because a cycle is not defined by how many times you charge but what is the capacity of charge you used up. To understand this concept better, read what constitutes a discharge cycle)
Charging in "speed charge (mode of your app)", is also not recommended as it does not go through fully, all the three stages of battery charging at recommended levels and is not good for battery life
Hence, bottom line is these kind of apps are better not used and stick to OEM rated chargers and OEM recommended charging methods.
PS: Edited your question to add relevant tags