History log of /frameworks/base/core/java/android/app/LoadedApk.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5a6ef737edbf57577443ac056613afe6cb121519 11-Nov-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5595933: GREF leak due to race condition in...

...LoadedApk.ServiceDispatcher.connected , LoadedApk.forgetServiceDispatcher

Don't be stupid if we receive a new binding to a ServiceConnection after it
has already been unbound.

Change-Id: I85a49de97372bf9af55542a89031f0b7a2ac8fbb
/frameworks/base/core/java/android/app/LoadedApk.java
9ecebbfbf768fd63e9a6c9a09c86d81c7737ee2d 29-Sep-2011 Dianne Hackborn <hackbod@google.com> Add mechanism for Parcel to not allow FDs to be written to it.

This is to help implement issue #5224703.

Change-Id: I026a5890495537d15b57fe61227a640aac806d46
/frameworks/base/core/java/android/app/LoadedApk.java
5fd2169eabd77e6bfafaf456e58051a3bafb2bca 07-Jun-2011 Dianne Hackborn <hackbod@google.com> Work on issue #4518815: Compatibility mode introduces compatibility regression...

...for Market App iRunner

There were a lot of serious issues with how we updated (or often didn't update)
the display and resource state when switching compatibility mode in conjunction
with restarting and updating application components. This addresses everything
I could find.

Unfortunately it does *not* fix this particular app. I am starting to think this
is just an issue in the app. This change does fix a number of other problems
I could repro, such as switching the compatibility mode of an IME.

Also a few changes here and there to get rid of $#*&^!! debug logs.

Change-Id: Ib15572eac9ec93b4b9966ddcbbc830ce9dec1317
/frameworks/base/core/java/android/app/LoadedApk.java
2f0b17573d4324832f7a20402a3d2b5920bc4866 01-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4502672: Wrong xml resources used for homescreen widgets.

There was a race in the system process between applying the initial
configuration and executing code in higher-level system services
like the app widget service that relies on the config. For some
reason it starting showing up more after my code changes; it should
now be completely fixed.

Also fix the activity starting window to run in compatibility mode
if its application is going to be in compatibility mode.

And some various cleanup and small fixes.

Change-Id: I0566933bf1bbb4259c1d99a60c0a3c19af1542e5
/frameworks/base/core/java/android/app/LoadedApk.java
e2515eebf42c763c0a2d9f873a153711778cfc17 28-Apr-2011 Dianne Hackborn <hackbod@google.com> Better compat mode part one: start scaling windows.

First step of improving app screen size compatibility mode. When
running in compat mode, an application's windows are scaled up on
the screen rather than being small with 1:1 pixels.

Currently we scale the application to fill the entire screen, so
don't use an even pixel scaling. Though this may have some
negative impact on the appearance (it looks okay to me), it has a
big benefit of allowing us to now treat these apps as normal
full-screens apps and do the normal transition animations as you
move in and out and around in them.

This introduces fun stuff in the input system to take care of
modifying pointer coordinates to account for the app window
surface scaling. The input dispatcher is told about the scale
that is being applied to each window and, when there is one,
adjusts pointer events appropriately as they are being sent
to the transport.

Also modified is CompatibilityInfo, which has been greatly
simplified to not be so insane and incomprehendible. It is
now simple -- when constructed it determines if the given app
is compatible with the current screen size and density, and
that is that.

There are new APIs on ActivityManagerService to put applications
that we would traditionally consider compatible with larger screens
in compatibility mode. This is the start of a facility to have
a UI affordance for a user to switch apps in and out of
compatibility.

To test switching of modes, there is a new variation of the "am"
command to do this: am screen-compat [on|off] [package]

This mode switching has the fundamentals of restarting activities
when it is changed, though the state still needs to be persisted
and the overall mode switch cleaned up.

For the few small apps I have tested, things mostly seem to be
working well. I know of one problem with the text selection
handles being drawn at the wrong position because at some point
the window offset is being scaled incorrectly. There are
probably other similar issues around the interaction between
two windows because the different window coordinate spaces are
done in a hacky way instead of being formally integrated into
the window manager layout process.

Change-Id: Ie038e3746b448135117bd860859d74e360938557
/frameworks/base/core/java/android/app/LoadedApk.java
c2d9c8e20bea92bd8c1bd0954b0a393c1bb8fec0 25-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3385054: HRI24 never enters suspend (LP0) - IKXEVEREST-3439

Um. My fix for calling onReceive() even after a receiver is
unregistered actually made it so onReceive() is never called for
the result receiver of a broadcast.

Change-Id: I30efe05d8fdec6fee4222b7d797f2b303073dbcc
/frameworks/base/core/java/android/app/LoadedApk.java
89ba6750e5310c4da51786bd7eb559a43cab3982 24-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3215261: NPE in WiFi Settings

And also fix #3343369: EGL_BAD_DISPLAY and/or broadcast intent
TIME_SET before boot completion

And a few more tweaks to animations to keep the wallpaper displayed
when needed.

And make more use of the drag and drop "rotation disabled" thing to
also use it while animating the screen rotation, since if we try to
start a new rotation while doing the animation we end up with a mess.

Change-Id: I373af305a6e23a92835abed96229a83e173f67ce
/frameworks/base/core/java/android/app/LoadedApk.java
624d50f00dc3d672d676a2fbb405c61dfc875b28 09-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Don't warn on reading from disk during initial class loading.

I'm going through the stacks that I filter out from the StrictMode
reports and making sure the devices don't upload them to begin with
when they're obviously legit and unavoidable.

Change-Id: If87b3182b12140f5ddbe52fed059b592b2cc178c
/frameworks/base/core/java/android/app/LoadedApk.java
e829fef63957a23b61cdb01bb692a17a041ff2dc 27-Oct-2010 Dianne Hackborn <hackbod@google.com> Add facility for broadcasts receives to do work asynchronously.

You can now call goAsync() and move your work to a background thread.
If you are that kind of receiver. You weirdo.

Also allows SharedPreferences.apply() to be committed off the main
thread after returning from onReceive().

Change-Id: I27f975910e28f230ababcaeb551eb9a78ec4fc76
/frameworks/base/core/java/android/app/LoadedApk.java
85387d7ba36e56b291cbde87acb5a5b2200fe01c 26-Aug-2010 Kenny Root <kroot@google.com> 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
/frameworks/base/core/java/android/app/LoadedApk.java
01e4cfc47d0a2c7e7ab383d2fb23224ec52c0301 25-Jun-2010 Dianne Hackborn <hackbod@google.com> Some ActivityThread/ActivityManager cleanup.

- Move PackageInfo out of ActivityThread, renaming to LoadedApk.
- Rename some of the other PacakgeInfo inner classes to better
represent what they are.
- Rename HistoryRecord to ActivityRecord.
- Introduce AppGlobals, to eventually let ActivityThread become
package scoped.

Change-Id: Ib714c54ceb3cdbb525dce3db9505f31042e88cf0
/frameworks/base/core/java/android/app/LoadedApk.java