Application causing phone to heat up
I have been getting complaints from a few users that once they installed my application there phone has been heating up (sometimes even when the application is not running).
- What are the reasons this could be happening?
- What can I do to overcome this issue?
- Is there any way my application could heat up the phone even when it is not running?
Edit : How does a white application background compare to a black or darker application background in terms of battery usage? (assuming that excessive battery usage could heat up the phone)
Edit : Say I have a service that runs indefinitely, but does cpu specific work very rarely, how costly, in terms of cpu / battery / memory, is maintaining the service? (I know a better way would be to implement it using alarm manager, but before I change the implementation I need to know how big a difference it would make.)
First thing first there is no way your application can heat up the phone when your app is not running (at least in background). Now when your app is running, there are many reasons for your app to heat up the phone,
- Calculations- especially floating point calculations.This cause lot of heat
- heavy or unending loops
- downloading large files (in background or foreground). When you download there are lot of network activities happening.
- Animation and graphics, simply because it uses a lot of calculations in background
As a programmer, I don't thing you can do anything if someone say your app is causing phone heat up even when it is not running. So forget about it. Heat is not a thing which vanish quickly, and will remain for sometime even if the app that emitted it gets killed. I think your users misunderstood that your app emitting heat even if it is not running. You only need to make sure your app is light weight and less taxing on the processor when it is running.
The only thing that can cause a device to warm up is when you have a Service running in background and have it working on some real heavy loops or calculations...
And as I saw in your post, is not your case..