Adds android.os.RecoverySystem (marked as pending) to replace the
(hidden) com.android.internal.os.RecoverySystem. RecoverySystem
contains methods for:
- verifying the signature of an update package
- rebooting to install a package
- rebooting to wipe user data
(The reboot functions require "android.permission.REBOOT" and
"android.permission.ACCESS_CACHE_FILESYSTEM".) Providing these
simplifies implementation of OTA update for device builders.
Change-Id: I63ce743b156e7a1a0327fd395b0e4a82c0eda79a
When ContactHeaderWidget.bindFromPhoneNumber is called with a number
that's not in contacts, onQueryComplete takes a path that doesn't hide
fields that don't apply to the current phone number. As a result, the
user sees the new number, but old data from the previous display (such
as the facebook status). With this change, those fields are hidden.
Fixes bug 2336977.
Change-Id: Ib6253c18dc58c3d28b463c87d5d195a84d613600
The crashes are also reported to the event log (and of course the
main logcat, like they always have been). Ordinary Log.e(t,m,e) isn't dropboxed
but there's a new Log.wtf() which always is. (Still @pending in this change.)
Add a hook to IPowerManager to crash the system server on demand
(only for apps with REBOOT permission, since it's basically a restart).
This is not exposed in PowerManager, must be invoked directly -- mostly
this is there so "Bad Behavior" in dev tools can do it.
By default, Android's System.out and System.err are implemented by
the AndroidPrintStream subclass of LoggingPrintStream. Until now,
that class has silently discarded the raw bytes it has received.
This causes two problems:
Applications may be accidentally wasting CPU+memory writing to
System.out. By making this output visible, the developers of such
applications can silence the problem at the source.
Application developers may be purposefully writing to these streams
and perplexed by the data's disappearance. For example, the core
library's own java.util.logging.ConsoleHandler sends its log data
into this black hole. By making the data visible, we save the data
and remove an unnecessary sharp edge from our API.
Add Hanzi to Pinyin converter and sort key for contacts
Sort key and Hanzi to Pinyin converter is used for Chinese
implementation of contacts search, indexing and sorting.
Hanzi to Pinyin converter should be implemented on top of ICU
transliterator in the future.
Change-Id: I620f67c85897ee4054eda2624e7bcc12a81740aa
(CrashData was a custom-marshalled crash-info class used for a server crash
reporting system I am deprecating). Use ApplicationErrorReport.CrashInfo
instead to report crash details (mostly the stack trace) from RuntimeInfo to
ActivityManagerService, since we're likely to need the crash information in
that form anyway.
Remove the (long-disabled) flags and support for the "Debug" button
in the crash dialog.
Further gut the ICheckinService interface by removing the crash-reporting
APIs (and everything that calls them), plus the synchronous checkin()
method (which has been stubbed out for a while now).
A new dropbox-based crash reporting system is in the works, but not part
of this change.
A hierarchical state machine is a state machine which processes messages
and can have states arranged hierarchically. Each state in the state
machine may have a single parent state and if a child state is unable to
handle a message it may have the message processed by its parent.
Change-Id: I0a56959ece8f89e4f9122dc8044120b82d517bbb
This is a very simply implementation: upon receiving an IPC, if the handling
thread is at a background priority (the driver will have taken care of
propagating this from the calling thread), then stick it in to the background
scheduling group. Plus an API to turn this off for the process, which is
used by the system process.
This also pulls some of the code for managing scheduling classes out of
the Process JNI wrappers and in to some convenience methods in thread.h.
This change applies the fix -- originally by phanna in
https://android-git.corp.google.com/g/#change,33669 -- to
the com.android.internal.widget version of DigitalClock,
which is used by the keyguard and pattern lock screens.
Change-Id: I43f72dd144423e55f73ba52903d52163c8f65591
Merge commit '5d81e8c82aa8d55eff2c2c78e4a553c479332187'
* commit '5d81e8c82aa8d55eff2c2c78e4a553c479332187':
Workaround for 2262578: Don't draw tabs if view is not in the correct orientation for the layout
Merge commit '41029cf413abbfdf004e04f192a440e457701c47'
* commit '41029cf413abbfdf004e04f192a440e457701c47':
Fix for 2267410 : Battery use doesn't show CPU usage on non-wiped devices
Merge commit '30142f7ef7bf3d4699526cb9ce02b220a8045c5d' into eclair-mr2
* commit '30142f7ef7bf3d4699526cb9ce02b220a8045c5d':
Workaround for 2262578: Don't draw tabs if view is not in the correct orientation for the layout
Merge commit '778f1e65a5ea37bc4adc4725e281a34b775bc72d' into eclair-mr2
* commit '778f1e65a5ea37bc4adc4725e281a34b775bc72d':
Fix for 2267410 : Battery use doesn't show CPU usage on non-wiped devices
Due to a change in cpu stepping values, the batterystats.bin file needs to
be wiped for Battery Use app to show CPU cost correctly.
Bumping up the version number of the file fixes this.
This is an uber hack. Since there is a race between resizing the view and getting
the orientation-changed notification, this just tries to avoid drawing the tabs in the
wrong orientation (based on what we *expect* to be the orientation specified in the layout
file for the SlidingTab). This masks the problem *most* of the time.