2850 Commits

Author SHA1 Message Date
Hung-ying Tyan
3d7606aa60 SIP: enhance timeout and registration status feedback.
http://b/issue?id=2984419
http://b/issue?id=2991065

Change-Id: I2d3b1dd3a70079ff347f7256f4684aea07847f4e
2010-09-13 17:45:39 +08:00
Kenny Root
07a9e8d39f Merge changes Ie3648509,I53db73c3 into gingerbread
* changes:
  Move native library removal function to helper
  Initialize native library path in PackageSetting
2010-09-12 17:59:41 -07:00
Jeff Brown
b88102f5b7 Input dispatcher ANR handling enhancements.
This change is essentially a rewrite of the main input dispatcher loop
with the target identification folded in.  Since the input dispatcher now
has all of the window state, it can make better decisions about
when to ANR.

Added a .5 second deadline for processing app switch keys.  This behavior
predates Gingerbread but had not previously been ported.

Fixed some timing inaccuracies in the ANR accounting that could cause
applications to ANR sooner than they should have.

Added a mechanism for tracking key and motion events that have been
dispatched to a window so that appropriate cancelation events can be
synthesized when recovering from ANR.  This change helps to keep
applications in sync so they don't end up with stuck buttons upon
recovery from ANRs.

Added more comments to describe the tricky parts of PollLoop.

Change-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1
2010-09-12 16:52:03 -07:00
Kenny Root
8f7cc02c7c Move native library removal function to helper
Moves the remoteNativeLibrariesLI call to NativeLibraryHelper to prepare
for being able to symlink the /data/data/<package>/lib dir to the ASEC
container.

Change-Id: Ie3648509c6b6293a8d9bdd815610ab408df5047f
2010-09-12 09:04:56 -07:00
Kenny Root
806cc13a08 Initialize native library path in PackageSetting
During boot-up we weren't paying attention to the nativeLibraryPath that
was read from the package settings XML file which reset the path to the
default /data/data/<package>/lib directory.

This adds nativeLibraryPath as an argument to the PackageSettings
constructor and related functions that will pull that value in from the
settings file.

It also removes the call to nativeLibraryDir.mkdir() which installd does
by itself.

Change-Id: I53db73c3b1bc90997a4a73f7f2fbaee125e6f67e
2010-09-12 09:04:48 -07:00
Brad Fitzpatrick
1e02d36b0f Enable strictmode logging in system_server & add a lock.
We weren't logging strictmode violation in the system_server process
in non-user builds (only system apps), even though the rest of the
strictmode logging supports it.

Also add a missing lock in ActivityManagerService.

Change-Id: If2af96a7e4fdde604a647b836097f0029ef1334b
2010-09-10 09:19:50 -07:00
Hung-ying Tyan
ca3c24db3a Merge "SIP: add SipErrorCode for error feedback." into gingerbread 2010-09-10 02:19:22 -07:00
Hung-ying Tyan
903e103160 SIP: add SipErrorCode for error feedback.
Change-Id: I8b071d4933479b780a403d0bfa30511f4c23ca8f
2010-09-10 17:15:06 +08:00
Dianne Hackborn
a7d868d4f9 Merge "Add toast when an app intercepts the launch of another app." into gingerbread 2010-09-09 21:31:34 -07:00
Dianne Hackborn
0dad364adb Add toast when an app intercepts the launch of another app.
The activity manager looks for cases where one app launches immediately
after another.  If this happens, a brief toast is shown telling the user
when app is actually running and what was originally starting.

Change-Id: If94cf5bd393dd0bc0f09789dae044fde1386c481
2010-09-09 21:25:35 -07:00
Rich Cannings
8d578836dc Remove the use of FileInputStream.available()
Bug: 2976294
Change-Id: I34b13cedbf1d2338163ef74454817c318a3a24f5
2010-09-09 16:28:48 -07:00
Mike Lockwood
76e4fa1926 Merge "Only pulse notification light if a new notification has been received since the screen was last turned off" into gingerbread 2010-09-09 14:02:19 -07:00
Robert Greenwalt
0727a865d8 Merge "Add network condition reporting." into gingerbread 2010-09-09 09:41:05 -07:00
Robert Greenwalt
d7085fcf65 Add network condition reporting.
Apps can report if they like their connection to the nets
and we display either not-really-connected or fully-connected
icons.  Final icons TBD.

bug:2978624
Change-Id: I28be52085edfe54571c0d4559aba0df883548654
2010-09-09 09:33:02 -07:00
Mike Lockwood
2117f6fa38 Only pulse notification light if a new notification has been received since the screen was last turned off
BUG: 2980248

Change-Id: I4dca527a191fae4ad87eeff8ad32594fd6aeb417
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-09-09 09:48:08 -04:00
Chung-yih Wang
4d1e012127 Change the keep-alive interval to 10 seconds.
Change-Id: I216cee622f57ee18533de3960d4da1a41e01f1ae
2010-09-09 13:27:10 +08:00
Brad Fitzpatrick
65634a7935 Merge "Don't block in the BackupManagerService.dataChanged() Binder call." into gingerbread 2010-09-08 15:20:20 -07:00
Dianne Hackborn
ee455f5a95 Merge "People holding partial wake locks now get blamed for CPU usage." into gingerbread 2010-09-08 14:15:35 -07:00
Dianne Hackborn
0d903a84d0 People holding partial wake locks now get blamed for CPU usage.
For the duration of the wake lock, 50% of all CPU usage is now
accounted against the app(s) holding partial wake locks, evenly
distributed between them.  This is only while the device is on
battery and screen off.

Change-Id: I3e5c978b792b6ef17bf8540705bfe8343dadd464
2010-09-08 12:41:24 -07:00
Jake Hamby
bb37163323 Allow incoming SMS until internal storage is almost full.
Fix for bug 2382830: new incoming SMS should not be rejected when
running low on internal phone storage.

Testing revealed that the /data partition should have at least 256 KiB
available in order to prevent random app crashes (including system apps)
due to SQLite transaction failures. With 256 KiB free, the device should
safely boot without storage full errors. This takes into account the
36-40 KiB that the YAFFS2 filesystem reports as available even after
the partition has been completely filled. I've set the default full
threshold to 1 MiB to provide a generous safety margin.

For this bug, I changed the DeviceStorageMonitorService demon to send
two new hidden notifications for device storage "full" and "not full",
when the free space falls below the full threshold (default 1 MiB,
but configurable as a system setting), in addition to the existing
storage low/okay notifications sent when the storage crosses the threshold
of 90% full (also configurable).

The SMS code was changed to use these new notifications so that it can
accept messages until the data partition has been filled to the maximum
safe capacity rather than stopping when it hits 90% full. There should
be no negative impact on battery life because the additional check in
the storage polling service should be offset by an optimization to cache
the free threshold values which were previously being computed every time
through the loop.

While testing this change, I discovered that SMSDispatcher was being
instantiated twice, the first time in GSMPhone/CDMAPhone, and the second
time in SimSmsInterfaceManager / RuimSmsInterfaceManager. Changed the code
to pass the original SMSDispatcher to the Sim/RuimSmsInterfaceManager
constructor.

Change-Id: Ie0c6d05294778ab6ee42e0fa01313af96d824c77
2010-09-08 12:37:18 -07:00
Jeff Brown
85a3176704 Add support for secure views.
Added the MotionEvent.FLAG_WINDOW_IS_OBSCURED flag which is set by the
input manager whenever another visible window is partly or wholly obscured
the target of a touch event so that applications can filter touches
accordingly.

Added a "filterTouchesWhenObscured" attribute to View which can be used to
enable filtering of touches when the view's window is obscured.

Change-Id: I936d9c85013fd2d77fb296a600528d30a29027d2
2010-09-08 11:50:55 -07:00
Brad Fitzpatrick
3dd42334ee Don't block in the BackupManagerService.dataChanged() Binder call.
This unnecessarily blocks callers.

Bug: 2977348
Change-Id: I5267e575cdd5eb2136379f9710126b62a1bd75ad
2010-09-07 23:40:30 -07:00
Chung-yih Wang
5de1d36dd0 Log outbound proxy address if exists for debugging.
Change-Id: I2d2dffe3536e674b6956164c400e397c2f00f212
2010-09-08 13:15:55 +08:00
Hung-ying Tyan
1b1601d740 SipService: unset session listener if listener is gone.
Change-Id: I0b85ee7bcb32c24cf64dfc3edc40c0cad9717562
2010-09-05 00:26:11 +08:00
Dianne Hackborn
e25b4bc76f Merge "These are not ready to be exposed. Also rename them to be better." into gingerbread 2010-09-03 13:24:33 -07:00
Dianne Hackborn
482566ed5c These are not ready to be exposed. Also rename them to be better.
Change-Id: I7c234144497084b7769f8c46761b7d74d1c583d5
2010-09-03 12:51:28 -07:00
Marco Nelissen
d85621c938 Don't crash when extra logging is enabled.
Change-Id: I76cf8db0f51ed33e91acee9636180e8d7c0b5ff9
2010-09-03 11:46:19 -07:00
Kenny Root
305bcbf0c9 Decrease PackageManagerService wait time for vold
Up the blocking queue maximum to twice the number of containers we
allow which should let "asec list" complete without blocking the thread
several times.

Change the threads for the NativeDaemonConnector to vold and netd to be
more descriptive instead of the same name.

Bug: 2501075
Change-Id: I7e7949845a6c70a3d619aec0fa79ceef3c17a4be
2010-09-03 09:33:34 -07:00
Kenny Root
12da9d7472 Fix buffer compacting in NativeDaemonConnector
The buffer was being compacted in the read loop, but the start offset on
the compacted buffer wasn't being considered after the next read.

Bug: 2501075
Change-Id: I163297d751cf800d0bbc66df66b1a0fa0785de49
2010-09-02 22:24:06 -07:00
Chia-chi Yeh
95b15c3560 SipService: reduce the usage of javax.sdp.*.
After this change, SipAudioCallImpl is the only place still using it.

Change-Id: I5693bffa54f9e19cbfa70b45dfcf40fba04dedbb
2010-09-02 22:15:26 +08:00
Dianne Hackborn
a1c69e084b Fix a small bug when granting permissions through activity results.
Change-Id: I2a5c4025fb5f566e29c219fde4d50ed2eba6e174
2010-09-01 22:55:02 -07:00
Hung-ying Tyan
3424c02e6b Add software features for SIP and VOIP
and block SipService creation and SIP API if the feature is not available.

Change-Id: Icf780af1ac20dda4d8180cea3e5b20e21a8350bc
2010-09-02 08:10:13 +08:00
Kenny Root
7c1bd7fdbf Fix logic error in downgrade of system apps
A logic error would allow not deleting data when uninstalling a system
app upgrade that's of a newer release than the on on the system
partition. If the system app had a database upgrade and this happened,
you might be in trouble.

Luckily it appears no one ever does this in code. You'd have to manually
get there doing:

adb uninstall -k updated.system.package

Change-Id: I3110fedf2d147975a0635c71898d985dd642a2c1
2010-09-01 14:10:36 -07:00
Kenny Root
9ee9274e5e Add null check for package settings
A few lines down "ps" is run through a null check, so apparently there
could be some screwy system conditions where this is encountered. And,
in fact, this was encountered through an updated system pacakge that
managed to delete the package from /system/app during testing. It left
the PackageSetting in mDisabledSysPackages which would cause a deference
of a null variable.

Change-Id: Ic7faca569abd16a87a8a69c20df08c11a274a001
2010-09-01 13:59:02 -07:00
Dianne Hackborn
361199b5e7 Add PackageManager API to get information about a provider component.
Kind-of useful when all you have is a ComponentName.

Change-Id: I9a99f12daabb29e97e882e09c43ca0df70c00651
2010-08-31 18:59:04 -07:00
Dianne Hackborn
6b1afebdac Improve debug output when an ANR happens.
- Collect data at better times.
- Collect per-thread CPU usage as soon as possible after the ANR, and print
  in log.
- Based on new per-thread CPU usage, limit the number of processes we
  collect stacks from to not include inactive not interesting procs.
- Improve the way ProcessStats compute and reports its data.

Change-Id: I12b17fb47d593d175be69bb792c1f57179bf4fdf
2010-08-31 18:51:27 -07:00
Jeff Brown
8d60866e21 Input device calibration and capabilities.
Finished the input device capability API.
Added a mechanism for calibrating touch devices to obtain more
accurate information about the touch contact area.
Improved pointer location to show new coordinates and capabilities.
Optimized pointer location display and formatting to avoid allocating large
numbers of temporary objects.  The GC churn was causing the application to
stutter very badly when more than a couple of fingers were down).
Added more diagnostics.

Change-Id: Ie25380278ed6f16c5b04cd9df848015850383498
2010-08-30 18:16:43 -07:00
Brad Fitzpatrick
66fce5068a Renaming SharedPreferences$Editor.startCommit to apply
Also removes the artifical restriction that only one apply() can be in
flight at once.  That was old from when I thought it'd end up being
required, but wasn't.

Change-Id: I3540ea8be6e0760d6a51d218186f71655c2f3f55
2010-08-30 18:10:49 -07:00
Kenny Root
0ac83f5a7c Native libraries on SD
* Add native library tests during package move

* Fix omission that let PackageSettings and ApplicationInfo get out of
  sync.

Change-Id: Ic4958f971cb2c9cfd270522fdc120b4031c1124a
2010-08-30 15:14:06 -07:00
Daniel Sandler
d02bdaab49 Remove experimental immersive mode support. DO NOT MERGE
Bug: 2949215

Change-Id: I7d998ef571ef7e149bb96261430e92150b80b77d
2010-08-27 22:57:39 -04:00
Kenny Root
85387d7ba3 Allow native shared libraries in ASEC containers
This change moves the native library handling earlier in the package
installation process so that it may be inserted into ASEC containers
before they are finalized in the DefaultContainerService.

Note that native libraries on SD card requires that vold mount ASEC
containers without the "noexec" flag on the mount point.

Change-Id: Ib34b1886bf6f94b99bb7b3781db6e9b5a58807ba
2010-08-27 16:40:06 -07:00
Brad Fitzpatrick
0c5a04014d Send broadcast intent when configured location providers change.
See e.g. http://code.google.com/p/android/issues/detail?id=10042

This is also needed by the power control widget, which has no reliable
way otherwise of staying in-sync.

Change-Id: I8f2b6b79b1843329bae952a25ea56f15e3cf92aa
2010-08-27 14:01:23 -07:00
Brad Fitzpatrick
333b8cba99 SharedPreferences$Editor.startCommit()
Adds a fire-and-forget save method (startCommit) to the
SharedPreferences.Editor, which is the way most people use it anyway.

This commit adds the implementation.  The previous commit added the
interface and docs:

   previous change: Idf9934b445da1fb72b79f0192218b47c0a7f5a34
        git commit: edf32d01316bd3432c023f17747461b08ae36375

In addition, this change:

-- adds a generic "runPendingWorkFinishers" mechanism to
   ActivityThread to wait on async operations that are still
   in flight and use it for this.

-- ties runPendingWorkFinishers into Activity.onPause,
   BroadcastReceiver, and Service.

-- makes sSharedPreferences keyed on name, not File, to avoid
   unnnecessary allocations

-- documents and guarantees what thread
   OnSharedPreferenceChangeListener callbacks run on

-- makes a few things in frameworks/base use startCommit(), notably
   Preference.java (which was ignoring the return value anyway)

Change-Id: I1c8db60ad45643226fe6d246d3e513eeb7bd0ebd
2010-08-27 09:10:11 -07:00
Dianne Hackborn
02486b1327 Hide heavy-weight API.
And give it a better name, for when it is later un-hidden.

Change-Id: Iae0d3054d44f873b9f953bc41d175a47802a185e
2010-08-26 14:41:58 -07:00
Joe Onorato
00d1772d8c am 797e688b: Continue trying to make the turn off quickly after call feature work.
Merge commit '797e688b3bebbf1f50a8ad08528740b064f79153' into gingerbread

* commit '797e688b3bebbf1f50a8ad08528740b064f79153':
  Continue trying to make the turn off quickly after call feature work.
2010-08-26 12:02:51 -07:00
Joe Onorato
274ad9824a Merge "Just disable widgets that come from apps on sd cards, because they don't work anyway." into gingerbread 2010-08-26 11:50:31 -07:00
Joe Onorato
cc45381e59 Merge "Fix typo that makes apps on sd work better with app widgets." into gingerbread 2010-08-26 11:50:28 -07:00
Joe Onorato
797e688b3b Continue trying to make the turn off quickly after call feature work.
The previous implementation worked if the set timeout is short enough, which mine was.  This one
carries the remaining amount of timeout override forward through all of the countdown steps.

Bug: 2844990
Change-Id: I040df22f9f9ddf98c355ac6845b7624e95f84f33
2010-08-26 14:48:56 -04:00
satok
913a8925c0 DO NOT MERGE. Backport master InputMethodManagerService.java to gingerbread
Change-Id: Ied15b4f2f447ee3e3b858d4ca65c21c30dfa4eba
2010-08-26 22:53:07 +09:00
Dianne Hackborn
3003a017d3 Merge "Don't retain global ref to last inflated context." into gingerbread 2010-08-25 22:00:28 -07:00