diff options
author | Chong Zhang <chz@google.com> | 2014-07-25 00:51:51 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-07-24 15:36:51 +0000 |
commit | 435e040267c4dd08b4e32b0e7b579902709aa9d6 (patch) | |
tree | f53a34138a12390a94bcd34e63d5fc671dae042a /media | |
parent | f591b865552dce57c5b4347974a1ac93c676459e (diff) | |
parent | 0b30fd4ccf5218b15f770e778703d69cd3432446 (diff) | |
download | frameworks_av-435e040267c4dd08b4e32b0e7b579902709aa9d6.zip frameworks_av-435e040267c4dd08b4e32b0e7b579902709aa9d6.tar.gz frameworks_av-435e040267c4dd08b4e32b0e7b579902709aa9d6.tar.bz2 |
Merge "reset battery stats when media player service is started" into lmp-dev
Diffstat (limited to 'media')
-rw-r--r-- | media/libmediaplayerservice/MediaPlayerService.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/MediaPlayerService.cpp b/media/libmediaplayerservice/MediaPlayerService.cpp index 7218467..735344c 100644 --- a/media/libmediaplayerservice/MediaPlayerService.cpp +++ b/media/libmediaplayerservice/MediaPlayerService.cpp @@ -34,6 +34,7 @@ #include <utils/misc.h> +#include <binder/IBatteryStats.h> #include <binder/IPCThreadState.h> #include <binder/IServiceManager.h> #include <binder/MemoryHeapBase.h> @@ -275,6 +276,20 @@ MediaPlayerService::MediaPlayerService() // speaker is on by default mBatteryAudio.deviceOn[SPEAKER] = 1; + // reset battery stats + // if the mediaserver has crashed, battery stats could be left + // in bad state, reset the state upon service start. + const sp<IServiceManager> sm(defaultServiceManager()); + if (sm != NULL) { + const String16 name("batterystats"); + sp<IBatteryStats> batteryStats = + interface_cast<IBatteryStats>(sm->getService(name)); + if (batteryStats != NULL) { + batteryStats->noteResetVideo(); + batteryStats->noteResetAudio(); + } + } + MediaPlayerFactory::registerBuiltinFactories(); } |