OSDN Git Service

Fix system service crash when booting while on battery power
authorChristopher Lais <chris+android@zenthought.org>
Wed, 8 Apr 2009 23:28:15 +0000 (18:28 -0500)
committerChristopher Lais <chris+android@zenthought.org>
Thu, 9 Apr 2009 00:00:20 +0000 (19:00 -0500)
services/java/com/android/server/BatteryService.java

index 4188005..e9f9fe2 100644 (file)
@@ -241,10 +241,14 @@ class BatteryService extends Binder {
             // since the standard intent will not wake any applications and some
             // applications may want to have smart behavior based on this.
             if (mPlugType != 0 && mLastPlugType == 0) {
-                mContext.sendBroadcast(new Intent(Intent.ACTION_POWER_CONNECTED));
+                Intent intent = new Intent(Intent.ACTION_POWER_CONNECTED);
+                intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT);
+                mContext.sendBroadcast(intent);
             }
             else if (mPlugType == 0 && mLastPlugType != 0) {
-                mContext.sendBroadcast(new Intent(Intent.ACTION_POWER_DISCONNECTED));
+                Intent intent = new Intent(Intent.ACTION_POWER_DISCONNECTED);
+                intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT);
+                mContext.sendBroadcast(intent);
             }
             
             mLastBatteryStatus = mBatteryStatus;