Merge commit 'b409cf9ca1251df1145139580f6809364fb3881f' into gingerbread-plus-aosp
* commit 'b409cf9ca1251df1145139580f6809364fb3881f':
Add the monkey event which allows the scripted monkey to execute the shell command.
Merge commit 'b5c4c9e266c13bbd32a36f553ad0089ccedd6dc1' into gingerbread-plus-aosp
* commit 'b5c4c9e266c13bbd32a36f553ad0089ccedd6dc1':
don't strip resources so it work on all devices
Merge commit '4b06026cb901d4a032ecc731a835767ff1bf27fe' into gingerbread-plus-aosp
* commit '4b06026cb901d4a032ecc731a835767ff1bf27fe':
Adding a sample accessibility service
Merge commit '9f93186beae13ea057a4b2e867928b357cd650a4' into gingerbread
* commit '9f93186beae13ea057a4b2e867928b357cd650a4':
Adding a sample accessibility service
Merge commit 'a7c85d92351070605b93176c1f691f4f80321ad5' into gingerbread-plus-aosp
* commit 'a7c85d92351070605b93176c1f691f4f80321ad5':
Take screen rotation into account
Merge commit '4388d2c333c164ce67db6d4a59cded8dfea9fc9a' into gingerbread-plus-aosp
* commit '4388d2c333c164ce67db6d4a59cded8dfea9fc9a':
Monkey: Set the name of the process to distinguish from generic name (app_process)
Merge commit '898004c4b2322c8fece08944731eed9fc08a14a5' into gingerbread-plus-aosp
* commit '898004c4b2322c8fece08944731eed9fc08a14a5':
Activity/provider used is restricted to the application's Package, but can be spread across other packages as well.
Update to include newest headers and library, tweak glue code to
work better with state saving and add support for config changes.
Change-Id: I4d27bd4a0f542f217efaec86cf4f219aca020426
Merge commit 'ff779c0f2a19985a9a6733d4864b4b56b20729bd' into gingerbread-plus-aosp
* commit 'ff779c0f2a19985a9a6733d4864b4b56b20729bd':
Update win_sdk to put binaries in SDK/platform-tools.
This is requires as a follow up to Change I4526310a
with moved platform tools from $SDK/platform/*/tools
to $SDK/platform-tools/
SDK Bug: 2897406
Change-Id: I1563c88fc824db3d9c86fb65479820989d46895c
Merge commit 'b86b7f72db1549cb526a141ca8b6158908483f1a' into gingerbread-plus-aosp
* commit 'b86b7f72db1549cb526a141ca8b6158908483f1a':
Re-organize the SDK, moving the build tools out of the platforms.
Merge commit 'f4790e6f9e47347996e62ecd27ff55b6499cf97a' into gingerbread-plus-aosp
* commit 'f4790e6f9e47347996e62ecd27ff55b6499cf97a':
Separate platform files and samples by API level.
Remove all duplicate platform files, i.e development/ndk/platforms/android-N now
only contains files that are introduced in API level 'N' and not found in level 'N-1'
(This makes it easier to manage independent platform release branches, and makes
platform additions trivial to examine and maintain).
Move samples that depends on features of API level 'N' into platforms/android-N/samples
+ update tests/run-all.sh accordingly
Change-Id: I04c4c67c6c674c1714d5812d461d0524a4f4cfd9
The command 'runtest --path <path to parent folder>'
is intended to find and build all tests contained within that parent folder.
However, the runtest logic was flawed in that it assumed building a parent
folder's Android.mk file would build all sub-directories.
This commit changes runtest to explictly look for the rule to build
sub-dir makefiles when creating the set of dirs to build.
Change-Id: Ia7f2172c1be79be8589be5f435fc4fb32569c994
Merge commit '8ddb2873df96c7181c9358f5c9286e273648bf89' into gingerbread-plus-aosp
* commit '8ddb2873df96c7181c9358f5c9286e273648bf89':
Change hosttestlib to use ddm-prebuilt.
Merge commit '32553f5291b1e0c5363db8bd7f280037f4f600e2' into gingerbread-plus-aosp
* commit '32553f5291b1e0c5363db8bd7f280037f4f600e2':
Remove monkeyrunner so it can move to the SDK project.
Merge commit 'cc7fc9e839cee6c33d099a94c5bdb655bd83ccd9' into gingerbread-plus-aosp
* commit 'cc7fc9e839cee6c33d099a94c5bdb655bd83ccd9':
Update time zone data to the new version 2010k.
Merge commit '235a95ae49e9dd40003e99c35bd79fe007347fb3' into gingerbread-plus-aosp
* commit '235a95ae49e9dd40003e99c35bd79fe007347fb3':
Update the monkeyrunner to use the new DDMlib API.
Merge commit '688e62cd116d0bc17ad162915908764c67dd6045' into gingerbread-plus-aosp
* commit '688e62cd116d0bc17ad162915908764c67dd6045':
Monkey: Changes to release lock before reporting ANR and meminfo
Report ANR, dumpsys after releasing lock on Monkey.this.
This ensures the availability of the lock to Activity controller's
appNotResponding.
Reporting dumpsys while holding the lock on this causes a cyclic
deadlock, when twoANRs are reported (one after the other).
Monkey's ActivityController is registered to ActivityManagerService
for handling ANR.The first ANR caused by either service timeout or
broadcast timeout is reported byActivityManagerService to Monkey's
ActivityController via Binder. Meanwhile, the lock on
ActivityManagerService is held by serviceTimeout or broadcastTimeout.
appNotResponding corresponding to first ANR reports procrank and
acquires a lock onMonkey.this and sets few bool variables like
mRequestAnrTraces and mRequestDumpsysMemInfoand returns the control
to ActivityManagerService's service/broadcast timeout.
VM executing monkey process switches the control to main monkey
thread and it acquires thelock on Monkey.this and proceeds to report
ANR traces.
Meanwhile, a second ANR occurs and Activity Manager Service invokes
ActivityController's appNotResponding (via binder). appNotResponding
reports the procrank and waits to acquire the lock on Monkey.this
which is being held by Monkey's main thread(busy reporting first ANR).
This results in a blocking wait for ActivityManagerService's
appNotRespondingLocked() (corresponding to second ANR).
Meanwhile, the monkey's main thread (holding lock on Monkey.this)
tries to report the meminfo for first ANR, invokes
reportDumpsysMemInfo(), which in turn causes the android runtime to
launch dumpsys process. The dumpsys process queries service manager
to get a reference to meminfo service and invoke dump() on the same.
The meminfo service is created by ActivityManagerService's
setSystemProcess(). The dump() method tries to acquire a lock on
ActivityManagerService which is held by ActivityManagerService's
service/broadcasttimeout (awaiting the response from
ActivityController for the second ANR).
This cyclic deadlock continues for a minute after which WatchDog
thread of system_server kills system_server as it hasn't got the
response from ActivityManagerService's monitor(). The monitor()
of ActivityManagerService too tries to acquire lock on this and is
invoked once in every minute.
DEADLOCK:
--------
ActivityManager --> ActivityController --> Monkey Main --> MemInfo
--> ActivityManager
Change-Id: I7718eff332e5551b1950ab1c45395bf1ff4b1bda
Removed Alarmclock app, due it's not needed any more and causes Errors with DeskClock
Removed not existing google Folders in out dir
Corrected path for frameworks/ex
Change-Id: I9d947f1e257cacc2142b141c2f2fe77076330705