The functionality is similar with fetchUuidsWithSdp which uses TRANSPORT_AUTO. Bt stack depends on the devie type and address type to do sdp or gatt service discovery. Add an api to specific the transport. It would be fexible to handle the dual mode device.
Tag: #feature
Bug: 197195548
Test: atest BluetoothInstrumentationTests
Test: Take two headphone to test the dual mode behavior
Change-Id: I32c8dde68969e0bdc42e4e898c43a4f2c1d3379a
Merged-In: I32c8dde68969e0bdc42e4e898c43a4f2c1d3379a
Problem: Framework Reboot i.e., NPE in android.ui Thread
E AndroidRuntime: FATAL EXCEPTION IN SYSTEM PROCESS: android.ui
E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'com.android.server.wm.ActivityStack com.android.server.wm.TaskDisplayArea.getRootHomeTask()' on a null object reference
E AndroidRuntime: **at com.android.server.wm.ActivityStarter.postStartActivityProcessing(ActivityStarter.java:1486)
E AndroidRuntime: **at com.android.server.wm.ActivityStarter.startActivityUnchecked(ActivityStarter.java:1533)
E AndroidRuntime: **at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1190)
E AndroidRuntime: **at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:673)
E AndroidRuntime: **at com.android.server.wm.ActivityStartController.startHomeActivity(ActivityStartController.java:206)
Analysis:
getDisplayArea in Task and its Super Class is annotated with Nullable and can be return Null.
Bug: 196568035
Test: StabilityTest
Change-Id: I4f3c8fdca0202591e7ac07aa7b8e3de3b08b2475
Merged-In: I4f3c8fdca0202591e7ac07aa7b8e3de3b08b2475
Running errorprone on platformtestprotos took more than 45 minutes.
Disable it.
Bug: 197157393
Test: m RUN_ERROR_PRONE=1 javac-check
Change-Id: I4e62adfddb93489d83c7e41e4ecba75fdf654004
stdout and stderr are macros in musl, which causes build failures
when they are used as field names. Rename the fields to stdout_str
and stderr_str.
Test: builds
Merged-In: I04770d2d6e82ca8393308ab12a304838a80f0ae5
Change-Id: I04770d2d6e82ca8393308ab12a304838a80f0ae5
Also note, if a StagedApexObserver is observing through binder, they
might not be able to send the original observing object for
unregistration. As such, for binder observer we clean them up when they
die.
(Note: Unit tests have been removed to resolve merge conflict)
Bug: 187444679
Test: atest StagedInstallInternalTest
Change-Id: Ie2e01b01690a5882574282f3158e454a9b6056e7
Merged-In: Ie2e01b01690a5882574282f3158e454a9b6056e7
(cherry picked from commit 5ac0ee8278ea33a6f0bf14b96821d31576e81df4)
The set of staged APEX is changed whenever:
- a session containing APEX succesfully passes pre-reboot verification
and gets marked ready
- a staged session gets abandoned
(Note: Unit tests have been removed to resolve cherry-pick conflict)
Bug: 187444679
Test: atest StagedInstallInternalTests
Change-Id: I5c5bb4523cdab46e22fe3c8e2373289d8619c10e
Merged-In: I5c5bb4523cdab46e22fe3c8e2373289d8619c10e
These APIs will be later used by PackageManagerNative service to open up
the information to native clients.
The current implementation is a bit wasteful since everytime the client
makes a request, we ask the ApexManager to fetch us information about
the staged sessions N times, where N is the number of staged sessions
that are marked ready.
We can optimize it by caching the result of getStagedApexInfos(session)
method. This will be done in a separate CL.
(Note: Unit tests have been removed to resolve cherry-pick conflict)
Bug: 187444679
Test: atest StagedInstallInternalTests
Change-Id: I76803382db26a029f6d9cabb0d9ce9a2bf9c8ea1
Merged-In: I76803382db26a029f6d9cabb0d9ce9a2bf9c8ea1
(cherry picked from commit c8132a943723f56fb4850b96779ac39d41fec336)
Callbacks on ServiceConnection happen on the main UI thread for an
application. Since the thread that calls bindService then immediately
blocks to wait for the service to be connected, this will cause a
deadlock if key operations are happening on the main UI thread.
This bug has likely not been detected yet since key operations are not
supposed to be performed on the main UI thread, however it was uncovered
in a similar application during other testing. This fix ensures the
ServiceConnection object's callbacks will be triggered from a separate
thread from the calling thread.
Bug: 196571032
Test: Apps that run key operations on the UI thread don't hang.
Change-Id: I630a0ef2560a8ebd962de54c65e3d6277133a1cb
Merged-In: I630a0ef2560a8ebd962de54c65e3d6277133a1cb
There are three reference type members in UsageStats's constructor, when using "new UsageStats(stats)" to copy, it will be a Shallow Copy, which may cause concurrent modify problem.
For example, in UserUsageStatsService.java, the sUsageStatsCombiner is using "new UsageStats(stats.packageStats.valueAt(i)" to copy, and the value is passing to the computeCacheQuotaHints in
CacheQuotaStrategy.java. If we change the UsageStats.mForegroundServices at the same time, IndexOutOfBounds Exception will happen.
Therefore, it is necessary to modify the way of copying of the UsageStats.
Signed-off-by: zhuyunyi <zhuyunyi@xiaomi.com>
Change-Id: I58a54d17aad6ef5213e52658ee3387f3069339af
Warnings from using untyped List/Map. For now these List/Map can't be
migrated to typed ones because AIDL List/Map doesn't support Integer as
key/value types.
Bug: 192615532
Test: m
Change-Id: If55364b4ad4dc5660871f7eef051e12ec0399a70
This fixes the contract between equals and hashCode in
AndroidKeystoreKey and AndroidKeystorePublicKey.
Bug: 196118021
Test: N/A
Change-Id: I3f7e6d72d53c7051c13daeb5aa6ce1abf4eb0cc5
For now AIDL doesn't support Map<String,Integer>, there's no way to fix
it with typed map.
Bug: 192615532
Test: m
Change-Id: Id0011372a0997b4ab9aa700a7c4f8746bff29189
Problem: Framework Reboot i.e., NullPointer Exception in android.ui Thread
E AndroidRuntime: FATAL EXCEPTION IN SYSTEM PROCESS: android.ui
E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method
'java.lang.Object android.content.Context.getSystemService(java.lang.String)' on a null object reference
E AndroidRuntime: **at android.app.Dialog.<init>(Dialog.java:199)
E AndroidRuntime: **at android.app.AlertDialog.<init>(AlertDialog.java:204)
E AndroidRuntime: **at android.app.AlertDialog.<init>(AlertDialog.java:200)
E AndroidRuntime: **at com.android.server.am.BaseErrorDialog.<init>(BaseErrorDialog.java:39)
E AndroidRuntime: **at com.android.server.am.AppNotRespondingDialog.<init>(AppNotRespondingDialog.java:53)
E AndroidRuntime: **at com.android.server.am.ErrorDialogController.showAnrDialogs(ErrorDialogController.java:183)
E AndroidRuntime: **at com.android.server.am.AppErrors.handleShowAnrUi(AppErrors.java:1077)
Analysis:
As Context Object is passed from showAnrDialogs method and will be retrieved from getDisplayContextWithErrorDialogs
And list of context objects will be filled by querying from RootWindowContainer.getDisplayUiContext and this method is
Annotated with Nullable. So, the possibility could be null value filled in the context object List.
Bug: 196189977
Test: Stability Test
Change-Id: Ib944fc5ffc8bcca999c75f99d462d441e555fcda
For experiment flag testing, adding lmkd flag in DeviceConfig.
Bug: 194316048
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I1f13d6bbb4a9a7fd8825d7e5acde416750271df4
Merged-In: I1f13d6bbb4a9a7fd8825d7e5acde416750271df4
Remove modules-utils-build_system from static lib of service-wifi.jar,
becasue it is already in static lib of framework-wifi.jar
Bug: 195965491
Test: build module
Change-Id: Ica496e67dd8b7c83aa93a512d06ad1a05d1c9c8d
There are two threads can modify "mLastChanged" and "mScreenState" variables:
1. onFinishedWakingUp()/onFinishedGoingToSleep() are called from main thread in system_server;
2. setDeviceFolded() is called from android.display thread in
system_server.
Otherwise, NullPointerException might be throw when invoke method 'long java.lang.Long.longValue()'.
Test: press power key to wake up the device and fold the device at the
same time.
Change-Id: I3a0f1862548f2e567baa8a4a615906dbf87a8243
Signed-off-by: jiayongqiang <jiayongqiang@xiaomi.com>
Currently, CallRedirectionService is unable to know if a call failed due
to timeout. Add new API to notify them and call it when Telecom wait too
long to complete a call redirection request.
Bug: 187346611
Test: CTS test
Change-Id: I65aa0a893b3e35a412851ec969f6cdec74af8fab