Reduce observers in SystemUI: StatusBarIconView

Currently, for each status bar icon view there is a observer that
listens for changes of STATUS_BAR_NOTIF_COUNT. With one
notification usually having one or more status bar icons
you may end up easily with 10+ more observers for ~5 notifications.

With this commit the internal observer class becomes a singleton.
This means there is now only one observer for all status bar icons
and additional binder calls on new notification are avoided.

See "dumpsys content"

Change-Id: I8c11b165b34b87e7363a8e96524ea70fe6b28342

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
Reduce observers in SystemUI: KeyButtonView

This is based on the work by Jens Doll for the StatusBarIconView

The ContentObserver class will be a singleton, so there is only
one observer for all buttons.

On my Nexus 10 it reduced the observer count from 48 to 4.

Change-Id: I3223a18fcb5d2c9c2e7de655c514ff751dcd345d
Signed-off-by: Dirk Rettschlag <dirk.rettschlag@gmail.com>

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java
Reduce observers in SystemUI: BatteryBarController

This is based on the work by Jens Doll for the StatusBarIconView

The ContentObserver class will be a singleton, so there is only
one observer for all instances.

On my Nexus 10 it reduced the observer count from 15 to 3

Change-Id: Ibdd6fca75e5f0245b2897c9d5aebb5a0961cc351
Signed-off-by: Dirk Rettschlag <dirk.rettschlag@gmail.com>
GC triggering performance optimizations

Copy the correct starting heap size at process init.
Interfaces to set GC/managed heap parameters.

Change-Id: I0154d1523c3cfdb1214ed0315193cbb24704351f
Fixing crash in PhoneNumberUtils getNumberFromIntent

Handling intent with no data when trying to retrieve number from
intent.

Change-Id: If7c5930e7048aec732fb7a3fbeb3391e1408b071