Use this in various places where it should serve no purpose to deliver
both broadcasts. This is intended to reduce somewhat the flurry of
broadcasts that we churn through during boot.
- removed the parcelling ability from Entity and EntityIterator and made them public
- added an EntityIterator abstract implementation that allow easy wrapping of a Cursor
- changed the VCard code to use the new APIs
This obsoletes the following:
- The need to run SearchDialog in the system process.
- The global search mode code in SearchDialog.
- The GlobalSearch package.
- The search widget built into Launcher.
I will remove these in future changes.
Change-Id: I154386b1d6be73cfeab8376b6959a1dc5483e5f0
Add a new flag for bindService that tells the system to not bring the
target service's process in to the foreground scheduling class. This is
used by the sync system to not cause the current sync adapter to come to
the foreground as it is running.
Also some small improvements to the debug output of the process list
of oom adj and scheduling info.
Merge commit 'd59fb6e7435b57d83662b196f5430e6f2bc5427b' into eclair-mr2
* commit 'd59fb6e7435b57d83662b196f5430e6f2bc5427b':
Updating list of standard Intents in android.content.Intent
Merge commit '1067c3cbab73a4bc75a2ebd2e3c51077db96fa24' into eclair-mr2
* commit '1067c3cbab73a4bc75a2ebd2e3c51077db96fa24':
remove an old STOPSHIP comment
Rename the old MockContentProvider to MockIContentProvider since it is
more appropriate name.
Detail:
Current developers inevitably depend on the backend used by ContentProvider,
which is useful but not ideal nor "testable" from the view of them.
Current MockContentResolver only accepts exact "ContentProvider" class, not
IContentProvider interface, since we want to hide "IContentProvider" while
the old MockContentProvider implements IContentProvider and as a result some
methods we want to hide may be exposed to the public SDK now and probably
for the future.
On the other hand, ContentProvider is not interface but an exact class
heavily depends on the internal logic and not suitable for external
developers to use for tests.
The new MockContentProvider introduces the mock implementation
for ContentProvider.
It extends ContentProvider, so "is" ContentProvider, but tries to avoid
depending on any backend System like IPC in Android, etc.
This should be useful from the view of application developers who do not
want to be confused with ContentProvider/ContentResolver backend
implementation "at all" and want to use MockContentResolver without
any other ContentProvider implementations tightly connected to the
external worlds.
Merge commit '0ce8431c15078e095a22a123dbabcd91049a9652' into eclair-mr2
* commit '0ce8431c15078e095a22a123dbabcd91049a9652':
don't reschedule syncs that failed with a tooManyRetries error
Merge commit 'c7a63eea8d3d346addaaf892b5bbe0aa80651640' into eclair-mr2
* commit 'c7a63eea8d3d346addaaf892b5bbe0aa80651640':
Add a new field to Intent that allows you to give a hint about what on screen caused the intent to
There was a lock in AssetManager that purported to be per-instance (mSync)
but was actually static. A lot of code used it like it was per-instance,
but this would actually block all instances. This is now changed to fix
the name and make everything except the actual static data lock on the
specific AssetManager instance.
Change-Id: Ie8e9ad60f962184e76b2301f7a2790d0c2487063
The headset state indicated by HeadsetObserver in the broadcast intent ACTION_HEADSET_PLUG was not 0 or 1 as specified in the java doc but contained a bit field indicating the type of headset connected.
Modified HeadsetObserver to broacast a state conforming to java doc.
Added an extra to intent ACTION_HEADSET_PLUG to indicate if headset has a microphone or not.
Removed handling of non standard headset indications from HeadsetObserver.
Removed platform specific devices from output devices defined in AudioSystem.
Modified AudioService to use new ACTION_HEADSET_PLUG intent extra instead of bitfield in state.
Also reworks this intent protocol a little bit to be much more efficient, only
requiring one broadcast per package.
Change-Id: I580de4843ebd3c7f2e6df7295a2f80d2937cef7c
Merge commit '2ade6421f2d6dd615b559c951deace7143958b90' into eclair-mr2
* commit '2ade6421f2d6dd615b559c951deace7143958b90':
Debugging for issue #2250075: Desk dock clock app sometimes doesn't
You can no longer receive CONFIGURATION_CHANGED in a manifest, which is really really
bad (launching apps every time the screen is rotated!). A new LOCALE_CHANGED broadcast
is sent that you can receive in a manifest.
Change-Id: I80022375f0716db2e672382a29db3cea1af74702
This adds a history of the last 100 broadcasts that is printed in the
debug log, to be able to see what recently happened at the time the
bug report was taken. Also does some optimization of the printing of
the broadcast records to make it feasible to print this number of
entries. (We kind-of need to do this because there are some broadcasts
like SIG_STR and SYNC_STATE_CHANGED that are being broadcast a LOT.)
Change-Id: I775e1ec0f63369c8bca8c83cee27b95ddc5ec450
Merge commit '4cb6fc7ed2e4371b7ea4d053064fbeb3f86cfc20' into eclair-mr2
* commit '4cb6fc7ed2e4371b7ea4d053064fbeb3f86cfc20':
don't request a sync when temp providers are created
type to change without first uninstalling the previous service for that
type, unless the newly installed service is in the system image.
Notify the listener when a service is added or removed.
Make the AccountManagerService remove the accounts for an authenticator
when the registered authenticator changes from one uid to another.
Make the AbstractSyncableContentProvider force a sync when the database is first created.
Merge commit 'b5c05516ba2c341655d54f17bdd17a5ab2d173df' into eclair-mr2
* commit 'b5c05516ba2c341655d54f17bdd17a5ab2d173df':
Copy the selection args when creating a CPO since callers often reuse the passed in array.
Merge commit '22dad5928d1d1f2c791616d9d6ab3a3172cec62e' into eclair-mr2
* commit '22dad5928d1d1f2c791616d9d6ab3a3172cec62e':
When upgrading packages with shared user ids make sure we are eliminating