304 Commits

Author SHA1 Message Date
Android (Google) Code Review
43463bfb69 Merge change 7572 into donut
* changes:
  Fix issue #1985606 (Boot crash when battery level of < 15% is reported) in Donut
2009-07-16 15:18:38 -07:00
Dianne Hackborn
fae76f5bde Fix issue #1985502: Sapphire (and any other device) reports that it has a hard keyboard 2009-07-16 15:15:30 -07:00
Dianne Hackborn
0816e0ee6e Fix issue #1985606 (Boot crash when battery level of < 15% is reported) in Donut
Actually I don't think it is really an issue here, because the status bar doesn't
start itself up like this until after we have booted, but let's be safe.

And DO NOT MERGE since this code has changed in master.
2009-07-16 13:50:01 -07:00
Dianne Hackborn
2d91af0608 Issue #1969025: need api for launching intent as if it were coming from another component
And now there is.
2009-07-16 13:34:33 -07:00
Android (Google) Code Review
b9bae58ecb Merge change 7402 into donut
* changes:
  Added fade-in out animation for compatible apps  (This CL only add this when the app on the top is in compatibility mode for now. I need some help to do the same   when the closing app is in compatibility mode) Refactored DimAnimator
2009-07-15 13:32:07 -07:00
Joe Onorato
be96b3a2aa Clamp app widget updates from updatePeriodMillis to a minimum of 30 minutes. 2009-07-15 11:43:06 -07:00
Mitsuru Oshima
0a5d2c4691 Added fade-in out animation for compatible apps
(This CL only add this when the app on the top is in compatibility mode for now. I need some help to do the same
  when the closing app is in compatibility mode)
Refactored DimAnimator
2009-07-15 10:48:06 -07:00
Mike Lockwood
f32be166d5 wifi: Disable RSSI polling when the screen is off.
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-07-14 18:28:35 -04:00
Dianne Hackborn
b06ea70653 Add reporting of activity movement for search manager.
This adds a new API with the activity manager to find out about movement between
activities.  For my sanity, the old IActivityWatcher is now renamed to
IActivityController, and the new activity movement interface is named
IActivityWatcher.

This changes the search manager itself to use the new API to manage its state.
Note that there are still problems when going back to the search dialog after
it was hidden -- the suggestions window no longer appears until you explicitly
dismiss and re-show it.
2009-07-14 11:37:11 -07:00
Suchi Amalapurapu
ea5c044412 When apps switch between system and data partition the code and
resource paths should also be updated based on which version
is being picked up. update the code and resource paths when a path change
is detected
2009-07-13 10:57:50 -07:00
Android (Google) Code Review
889c2d37f7 Merge change 6718 into donut
* changes:
  Fix bug #1873249i: Apps can DoS/brick device
2009-07-10 13:42:51 -07:00
Dianne Hackborn
854060af30 Fix bug #1873249i: Apps can DoS/brick device
This is the problem where various things are listening for broadcasts
(such as battery status, PIN/PUK/Network) that an application can send
to cause harm to the system.

Solving this is tricky because many of these broadcasts are sticky,
and I have never figured out how to do permissions with sticky
broadcasts in a sane way.  So instead, I am going to punt on the
general problem and just brute force it:

There is new a way for system components to declare specific
broadcast actions to be protected, which means that only the system
and the phone can send them.  This is good enough for now.  None
of it is exposed in the public API so we can make something a little
less stupid in the future if we ever need to.
2009-07-09 18:14:31 -07:00
Mike Lockwood
a5ec95cdb1 wifi: WifiManager.startScan() will now do passive scans by default.
Active scans will only happen if a hidden AP is in use, or if the new method
WifiManager.startScanActive() is called.
This fixes some audio playback problems with bluetooth A2DP.

Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-07-09 16:54:39 -04:00
Mike Lockwood
ed76037792 Add a persistent system property to disable the adb notification.
Setting to persist.adb.notify to 0 will disable the ad notification.
You need to be root to set this, so this allows disabling the notification
only on eng and userdebug builds.

Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-07-09 14:24:42 -04:00
Dianne Hackborn
2af632f87d Add new <path-permission tag for use by global search.
This adds a new <path-permission> tag you can use inside of a <provide>
to define additional path-based permissions that broaden the global
read and write permissions.  The initial use for this will be global
search, so that a content provider that is protected by permissions
can make a part of itself available to global search under another
permission.  This addresses the issue with global search not being able
to request permissions it would need of providers it doesn't know
about at build time.
2009-07-08 18:08:13 -07:00
Android (Google) Code Review
4af0a709ee Merge change 6555 into donut
* changes:
  Make it so the notification manager doesn't mysteriously beep during boot.
2009-07-08 17:09:54 -07:00
Joe Onorato
302754801c Make it so the notification manager doesn't mysteriously
beep during boot.
2009-07-08 17:09:14 -07:00
Mitsuru Oshima
1ecf5d2881 Re-implementation of large screen support using window manager.
* added background filler surface to fill the outer rim. Using the same layer as dim surface because
   they never co-exists (in the same window)
 * clean up the obsolete code in CompatibiltyMode/ViewRoot for support large screen support.
2009-07-08 15:21:30 -07:00
Christopher Tate
b407f22c9d Don't invoke the transport if doBackup supplied no data
If there's no data to be backed up, we no longer invoke the transport.  We *DO*
still require that the agent have emitted a valid new state file, however.

This change also finally uncomments the code that removes the backup data file
after it has been sent to the transport, so there will be no more
packagename.data files lying around in the staging area.
2009-07-08 13:52:50 -07:00
Christopher Tate
22b60d8fd0 Remove a lot of debug-log verbosity
We now log in dataChanged() only when an app is added to the backup set (and
*not* if it redundantly asks to be added after it's already there) and on error.
2009-07-07 16:36:02 -07:00
Christopher Tate
a7de384550 Only write to the pending-backup journal when necessary
We now only commit to the pending-backup journal on disk the first time that a
given package is added to the backup set.  This avoids a lot of write thrashing
of the disk, particularly since Settings tends to call dataChanged() a great
many times during boot, while the Settings UI is in use, etc.
2009-07-07 14:50:26 -07:00
Christopher Tate
3d7cd13e77 Fix the metadata-available test during restore 2009-07-07 14:23:07 -07:00
Android (Google) Code Review
c1c44a5614 Merge change 6363 into donut
* changes:
  LocationManagerService: Use Context.checkCallingOrSelfPermission for permission checks
2009-07-07 11:02:04 -07:00
San Mehat
0310f9aa21 WifiService: Fix build (missing import)
Signed-off-by: San Mehat <san@google.com>
2009-07-07 10:50:39 -07:00
Mike Lockwood
b7e9922722 LocationManagerService: Use Context.checkCallingOrSelfPermission for permission checks
so other services running in the system process can use the location manager.

Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-07-07 13:18:21 -04:00
San Mehat
fa6c7111fe WifiService: use wifi association state to determine if we should suspend wifi instead of
the existance of an IP address.

Signed-off-by: San Mehat <san@google.com>
2009-07-07 09:41:39 -07:00
Christopher Tate
8031a3df2f Make enable/provisioning of the backup service a two-step process
This CL adds the concept of 'provisioned' to the backup manager.  No backups
will be scheduled until the user has indicated that backups are to be enabled
*and* has clicked all the way through the setup wizard.

When the user first turns on the backup system, the delay before the initial
backup pass is different from the periodic backup interval.  Currently that
initial delay is 12 hours.  The intent here is to guess at a less-active time
for performing that first backup pass.

NOTE: currently the backup service defaults to 'provisioned'.  Once the real
code goes live in Setup Wizard, this will be changed to default to
not-provisioned until the user has confirmed all the relevant UI.
2009-07-06 17:43:03 -07:00
Christopher Tate
34ebd0e1bb Fix up permissions for 'dumpsys backup' 2009-07-06 15:44:54 -07:00
Android (Google) Code Review
0d725f7d5a Merge change 6162 into donut
* changes:
  Hold a wakelock during backup/restore/clear operations
2009-07-06 11:54:34 -07:00
Christopher Tate
b6787f2ee5 Hold a wakelock during backup/restore/clear operations
We need to make sure we stay alive for the duration of a backup or (especially)
restore operation.  The existing Handler-based timing system was simply not
properly functional, so it's been retooled to use a repeating alarm delivering a
broastcast PendingIntent to our registered receiver.

We acquire a partial wake lock in the broadcast receiver [i.e. while the Alarm
Manager is holding one for the duration of broadcast delivery] and pass the
wakelock object to the backup thread, which eventually releases it when it's
finsihed operations.  A similar pattern is used for the threads handling restore
and clear.
2009-07-06 11:49:49 -07:00
Chung-yih Wang
699ca3f251 Add password field for WiFi configuration.
1. the certtool.h is modified for avoiding the side effect,
   for saving the configuration with wpa_supplicant.
2. put the loadLibrary back in CertTool.java
3. Fix incorrect JNI declarations.
2009-07-05 11:06:01 +08:00
Android (Google) Code Review
7e8cbfc2bc Merge change 6143 into donut
* changes:
  Fix the simulator.
2009-07-02 15:24:43 -07:00
Marco Nelissen
d595c79cdd Fix the simulator. 2009-07-02 15:23:26 -07:00
Android (Google) Code Review
e15df4017c Merge change 6132 into donut
* changes:
  If we can't get the restore set's metadata, don't continue
2009-07-02 14:30:56 -07:00
Christopher Tate
8c0324752a If we can't get the restore set's metadata, don't continue
Without the metadata we can't verify the version number or the signatures of the
apps whose data we'd be trying to restore against the apps present on device.
This is not acceptable; we need to refuse to give data to an unauthenticated
app.
2009-07-02 14:28:47 -07:00
Android (Google) Code Review
0d81f63687 Merge change 6102 into donut
* changes:
  Backup Wifi supplicant data.
2009-07-02 13:19:55 -07:00
Android (Google) Code Review
9701b3d594 Merge change 5979 into donut
* changes:
  Remove the constraint to assign new uid when code path changes for system packages
2009-07-02 12:20:29 -07:00
Christopher Tate
4e3e50cfa7 Clean up the last two literal permission string usages 2009-07-02 12:14:05 -07:00
Amith Yamasani
16d79e56ca Backup Wifi supplicant data.
WifiService requests a backup when it writes wifi configuration to disk.
Backup the wifi supplicant file when settings provider runs backup.
2009-07-02 12:05:32 -07:00
Christopher Tate
ee0e78af5a Add a "clear backed-up data" method to the backup mechanism
It's now possible to ask that the backup manager wipe the saved data for a given
application from the backing store.  LocalTransport implements this now but the
Google backend does not yet.  When the data is wiped, the on-device backup state
is also wiped to ensure that the next backup pushes all necessary data.

Bmgr has not yet been modified to actually call into this method, but it will
be soon.
2009-07-02 11:30:29 -07:00
Dianne Hackborn
d7cd29da91 Add facility to run setup wizard after an update.
The system now keeps a tag of the last version (just an arbitrary string)
that the setup wizard was run for.  If this is different than the current
one in the setup wizard, then setup is launched at boot.

This introduces a new intent action for the part of the setup wizard that
gets run for an ungrade, which the system uses to find its current version
tag for comparing against what was last stored.  It is up to the launched
setup activity update the stored setting to reflect its current value,
once it is happy.
2009-07-01 20:20:47 -07:00
Dianne Hackborn
cf098294da Move backup state to settings, change permission checks to use symbol.
This changes the backup service to use the settings provider instead
of system properties, correspondingly making it off by default and
allowing specific devices to define the transport.  Also tweaks
the permission checks to use the permission symbol instead of raw
strings.

This requires some corresponding changes in the vendor projects.
2009-07-01 20:12:36 -07:00
Android (Google) Code Review
2bbb80e183 Merge change 5994 into donut
* changes:
  Less logging in some places.  More in others.
2009-07-01 18:04:40 -07:00
Joe Onorato
9a5e3e115f Less logging in some places. More in others. 2009-07-01 21:04:03 -04:00
Romain Guy
a54755962c Cleanup a bunch of warnings in app widgets code. 2009-07-01 17:21:12 -07:00
Suchi Amalapurapu
b24a96701a Remove the constraint to assign new uid when code path changes for system packages 2009-07-01 16:16:56 -07:00
Android (Google) Code Review
d18dc8c641 Merge change 5906 into donut
* changes:
  resolve complex value in application context instead of system context.
2009-07-01 12:53:04 -07:00
Android (Google) Code Review
54af78a3f7 Merge change 5950 into donut
* changes:
  Fix memory leaks in system_server unlink DeathRecipients in a whole bunch of places to avoid memory leaks
2009-07-01 12:52:39 -07:00
Suchi Amalapurapu
fff2fda019 Fix memory leaks in system_server
unlink DeathRecipients in a whole bunch of places to avoid memory leaks
2009-07-01 12:55:30 -07:00
Christopher Tate
49401ddb9a Revamp backup scheduling policy
We now schedule a periodic check of pending backups; if any apps have requested
a backup since the last check, we perform all of the pending backups.  The
periodic backup scheduling matches the enable/disable state of the backup
manager; while backups are disabled entirely there are no periodic wakeups.

The period is set here to one hour.  If an external caller (transport, the
'bmgr' command line tool, etc) requests an immediate backup pass, that is
performed and then the periodic backup check is rescheduled using that pass as
the starting point of a new interval.
2009-07-01 12:38:06 -07:00