Commit Graph

63294 Commits

Author SHA1 Message Date
Treehugger Robot
abb732fc40 Merge "Discover primary service by UUID for PTS tests (4/4)" 2017-05-16 20:20:19 +00:00
Jakub Pawlowski
fe2bf16a2b Discover primary service by UUID for PTS tests (4/4)
Bug: 38123054
Test: manual
Change-Id: I89e088e60f4325f1ece59d22efda0c907a3b716a
2017-05-16 11:37:00 -07:00
Hugo Benichi
d5ad3e8a0c Remove unused import in ConnectivityManager
This makes the pre-upload verification pass.

Test: no functional change.
Change-Id: I6beccea10ccfcb39d975cb8f6f34fc9d79f1e170
2017-05-16 11:39:08 +09:00
Svetoslav Ganov
d6eaa80590 Merge "Init MemoryIntArray#mFd with -1" 2017-05-11 23:34:24 +00:00
Hugo Benichi
21a57f263f Merge changes Ie762ce75,I611fd791
* changes:
  ConnectivityManager: unit test for argument validation
  ConnectivityManager: uses service error codes and exceptions
2017-05-11 12:31:41 +00:00
Hugo Benichi
cb88323dd2 ConnectivityManager: uses service error codes and exceptions
This patch introduces between ConnectivityManager and
ConnectivityService a mechanism for propagating back to clients
informative errors in the form of error codes and associated custom
runtime exceptions.

Without error code, the service can only throw a limited number of
different exceptions over Binder. Furthermore the throw site stack
traces are always loss. Although for individual instances of a throw,
the error message can be inspected, aggregations of stack traces from
app crashes sanitize error messages and only leaves the stack traces.

This makes debugging dificult for some service calls such as
requestNetwork that can have a variety of failure modes.

In this patch only one failure mode is codified. More can be added later
at a light cost by: 1) defining an error code, 2) defining an
associated exception, 3) mapping the code to the exception. This patch
can serves as a template for doing so.

Test: $ runtest frameworks-net,
      #testNetworkRequestMaximum() detects the new exception type.
Bug:  36556809, 36701874
Change-Id: I611fd7915575c9e418f7149fcdc8a879d2a3716d
2017-05-11 14:15:15 +09:00
Andre Eisenbach
51876abe82 Merge "Bluetooth: HID: Add support for Set Idle and Get Idle Commands (3/4)" 2017-05-11 00:37:44 +00:00
Stanley Tng
767f05feea Add Save and Restore of BluetoothOn setting
This change will automatically save the Bluetooth On setting when
the user chooses to backup the phone settings into the cloud. This
setting is restored by the Setup Wizard (SUW) when configuring the
phone and this change will enable or disable the Bluetooth based
on this restored setting.

Bug: 35657817
Test: Manual test with Sailfish
Change-Id: Ie4518593af63f96f8c363f98941ca5260a3ec4bb
2017-05-10 16:28:47 +00:00
Hemant Gupta
cef9ce368c Bluetooth: HID: Add support for Set Idle and Get Idle Commands (3/4)
Provides an interface for application to send Set Idle
and Get Idle commands to remote HID Device. Support for these
two commands was missing from existing code, so existing code
design is reused to add support for these two commands.

Without this support following mandatory PTS test cases for HID 1.0
cannot be passed, TC_HOS_HID_BV_05/06.

Test: Executed PTS tests TC_HOS_HID_BV_05/06 and confirmed if they can
pass

Bug: 34344715
Change-Id: I548362cc328498920b2dae740f1a76b2cc2d6a67
2017-05-10 16:23:17 +00:00
Sunny Kapdi
037d3513e0 Bluetooth: Fix Periodic Adv interval check
The MIN and MAX values need to be swapped else
the parameter check in setInterval would always
fail

Bug: 37579882
Change-Id: I48538c2a61be88caaf04abd94074b3d9eb6dde96
2017-05-10 07:23:06 +00:00
Jakub Pawlowski
6b1f39502c Bluetooth: Fix interval low/min values
Bug: 38175945
Test: none
Change-Id: Idf487c7aafc518f2c57be78a1fa979b2c4a383d6
2017-05-09 22:59:18 +00:00
Ajay Panicker
a43bd01bd1 Bluetooth: Move Bluetooth battery stats tracking (1/2)
Move Bluetooth battery stats tracking to AppScanStats for a more
unified tracking system.

Bug: 37720787
Test: cts-tradefed run cts-dev -m CtsIncidentHostTestCases -t com.android.server.cts.BatteryStatsValidationTest#testBleScans
      Perform BLE scan and check battery stats
Change-Id: Ie6c682374e6e258c291d3a11eede649c7747ef40
2017-05-09 17:52:36 +00:00
Hugo Benichi
ab5bdbf84e NsdService: test coverage for client requests.
Adding coverage for:
  - NsdManager client disconnection
  - in-flight request GC

Test: new test passes
Bug: 37013369, 33298084
Change-Id: I92039f297cf99352bbf4196797933d89c0b819ff
2017-05-09 10:49:33 +09:00
Hugo Benichi
ff3e6ccca1 NsdManager: remove duplicated argument validation
This patch simplifies argument validation in NsdManager public api and
regroup duplicated validation into common methods.

This makes stack traces more actionable as now specific errors will
cause the api to throw exception from specific methods, whereas before
IllegalArgumentException would be thrown from inside the same api method
for different reasons.

This patch also includes a couple of other small cleanups.

Test: $ runtest -x frameworks/base/tests/net/../NsdManagerTest.java
Bug: 37013369
Change-Id: Iaad13e13976e9bf8f508d7188f823f8184ac414b
2017-05-09 10:49:33 +09:00
Treehugger Robot
9bd4c20764 Merge changes from topic 'libvintf_cp'
* changes:
  android.os.VintfObject: add API for EDI.
  Add compatibility matrices to VintfObject.report()
2017-05-06 00:11:33 +00:00
Ruben Brunk
c131051e28 Fix Bluetooth GATT API default handler assignment
Restores previous behaviour where GATT callbacks are invoked on the
binder thread and not the calling process main looper thread.

This fixes performance regressions as well as some
NetworkOnMainThreadException's for some applications.

Bug: 37544152
Bug: 37871717
Test: Covered by prior API tests.
Change-Id: Id8ab705dd4d7f00030e6ac29e056dde5180670e9
(cherry picked from commit 6bdc550e27)
2017-05-05 22:22:50 +00:00
Kenny Root
c497348c74 Merge changes from topic 'update-conscrypt'
* changes:
  Delete obsolete and unused KeyStoreTests
  Track updates to Conscrypt
2017-05-05 21:00:40 +00:00
Yifan Hong
bf49821c39 android.os.VintfObject: add API for EDI.
Add APIs for EDI (extensive device information).

Test: CtsDeviceInfo
Bug: 28656227
Change-Id: I609d4f1f07e20717827ef024ff8cbe124d7e54a6
Merged-In: I609d4f1f07e20717827ef024ff8cbe124d7e54a6
2017-05-04 20:01:32 -07:00
Yifan Hong
4463d991be Add compatibility matrices to VintfObject.report()
Test: FrameworksCoreTests
Bug: 36814503
Change-Id: I27eaea136437afb2102581d410b657e810612a0a
Merged-In: I27eaea136437afb2102581d410b657e810612a0a
2017-05-04 20:00:30 -07:00
Neil Fuller
68f666693a Add (disabled) time zone update system server impl
This commit builds on top of prior API commits. It
adds code to the system server, but in a disabled way.

The system server is responsible for monitoring two
(configured) package names: one for the "updater app"
(provided by the platform) and one for the "data app"
(provided by the OEM). When either package changes
the updater app is triggered via a privileged
intent.

The updater is then required to communicate with the
data app and report back to the system server.

Unit tests are included for the major components.

To run:
make -j30 FrameworksServicesTests
adb install -r -g "out/target/product/angler/data/app/FrameworksServicesTests/FrameworksServicesTests.apk"
adb shell am instrument -e package com.android.server.timezone -w com.android.frameworks.servicestests \
    "com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner"

Test: See above.
Bug: 31008728
Merged-In: I8f82cdcc2b574778a7e0d0184270f305b69ee17b
Change-Id: I8f82cdcc2b574778a7e0d0184270f305b69ee17b
2017-05-04 19:46:47 +01:00
Treehugger Robot
c301339498 Merge "More time zone update API classes" 2017-05-04 14:41:10 +00:00
Neil Fuller
cfe0c2f1ec Merge "Time zone update API classes" 2017-05-04 13:51:39 +00:00
Neil Fuller
a8889fa7fa More time zone update API classes
This class forms the contract between the updater app
(the app provided by and triggered by the system)
and the data app (the app provided by the OEM to
provide time zone data).

Bug: 31008728
Test: make only, just constants
Change-Id: I687b75954e132884aec962fcf8955f3f38a00b2f
2017-05-04 14:11:09 +01:00
Neil Fuller
bede17c216 Time zone update API classes
Time zone update API classes. Currently hidden but they
will go on to be unhidden in future.

This forms the basis of client and system server code to
support time zone updates.

Tests can be run with:

make -j30 FrameworksCoreTests
adb install out/target/product/angler/data/app/FrameworksCoreTests/FrameworksCoreTests.apk
adb shell am instrument -e package android.app.timezone \
    -w com.android.frameworks.coretests \
    "com.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner"

Bug: 31008728
Test: See above.
Merged-In: I668bc8ac0cb78f3d4d9a4b7ad6ac1534b88af833
Change-Id: Icde574f8974152617a1f7ac9fa225bd5011dcce1
2017-05-04 12:32:53 +01:00
Treehugger Robot
36247646e3 Merge "fix KeyEvent can't correctly finish when inputmethod time out happend" 2017-05-04 03:37:37 +00:00
gaoshang
d66a86bf50 fix KeyEvent can't correctly finish when inputmethod time out happend
Symptom: If inputmethod handle an KeyEvent time out ,
Did not finish this event correctly , eventually lead to app ANR
Root Cause: without seq number when obtainMessage MSG_TIMEOUT_INPUT_EVENT
Solution: add seq parameter

Test: Input
Test: InputMethod

Fixes: 37648930
Change-Id: I3a2b964b34aa57267bd777305200a2bfdc66f65c
Merged-In: I3a2b964b34aa57267bd777305200a2bfdc66f65c
Signed-off-by: gaoshang <gaoshang@xiaomi.com>
2017-05-04 02:19:42 +00:00
Tianjie Xu
2db2f6d265 Merge "Add error/cause code reporting for Non A/B OTA failures" 2017-05-03 17:34:29 +00:00
Tianjie Xu
223edeb272 Add error/cause code reporting for Non A/B OTA failures
Read and report the error_code & cause_code from last_install.

Bug: 36866437
Test: mma & observe the sysui event in logcat -b events
Change-Id: I5357861fc758e14ed3235bfc8cc76d7561ccea58
2017-05-02 23:02:11 -07:00
Treehugger Robot
3e21b1745c Merge "NsdManager: add test coverage for discoverServices()" 2017-05-02 08:44:29 +00:00
Treehugger Robot
b0e408450c Merge "NsdManager: unit test coverage for servive registration" 2017-05-02 06:27:10 +00:00
Hugo Benichi
93f4591684 NsdManager: add test coverage for discoverServices()
Test: added new tests
Bug: 37013369, 33298084
Change-Id: If6c1113ee1bd4690db90abd5a61c3e229c827aec
2017-05-02 15:26:33 +09:00
Hugo Benichi
8c5eeb0afc NsdManager: unit test coverage for servive registration
This patch adds test coverage for NsdManager#registerService() and
NsdManager#unregisterService(). This test shows a potential defect in
the api: if unregisterService() fails, the associated listener is always
unregistered from NsdManager. If the service initially registered is
still registered, this potentially make it impossible to unregister.

Test: added new unit test
Bug: 37013369, 33298084
Change-Id: Ia089b6d2f2a349907a8b29d9a3acd7f59e177887
2017-05-02 13:31:24 +09:00
Kenny Root
7fdce769c3 Track updates to Conscrypt
Test: cts-tradefed run cts -m CtsLibcoreOkHttpTestCases -a arm64-v8a
Test: cts-tradefed run cts -m CtsLibcoreTestCases -a arm64-v8a
Change-Id: I1487d694c5abe7cf2b938d9f1869d9aeb5285ac5
2017-05-01 14:11:03 -07:00
Treehugger Robot
4f8a375958 Merge "Add android.os.VintfRuntimeInfo" 2017-04-29 03:00:08 +00:00
Yifan Hong
1bda67369c Add android.os.VintfRuntimeInfo
This is the Java API for ::android::vintf::RuntimeInfo.
This will be used by CTS for device info report purposes.

Bug: 28656227
Test: cts-tradefed run cts -m CtsEdiHostTestCases --skip-preconditions
Change-Id: Id87c95a17e77d7ec1794a6f850de97edf9ae892d
2017-04-28 17:10:28 -07:00
Jakub Pawlowski
9d4abb5631 Bluetooth: bluetooth.le API fixes
Fix minor spelling problems.
Throw IllegalStateException instead of IllegalArgumentException in
build().

Bug: 37532634
Test: none
Change-Id: I73b6f04aec98f5baffb06a363e2a3f71e8cec3c4
2017-04-28 21:35:53 +00:00
Tomasz Wasilczyk
30a34ec0e2 Merge "Fix equality method implementation in BandConfig class." 2017-04-28 20:09:04 +00:00
Tomasz Wasilczyk
dd767065fe Fix equality method implementation in BandConfig class.
Test: instrumentation (in master branch)
Bug: b/36863239
Change-Id: I2f3b68ba3fac75b849ee99dc06d0a13478168b7e
2017-04-28 08:19:34 -07:00
Martijn Coenen
7c00639a68 Validate incoming data properly.
Make sure calls to readBuffer() and readEmbeddedBuffer()
get the correct size, parent and offset passed in, so
these can be validated by libhwbinder.

Modified HwBlob to take a length argument as well,
so it can be validated.

Bug: 30498700
Test: hidl_test, hidl_test_java, Youtube, Maps, Netflix, Camera
Change-Id: I28712db97ae29b46acfe952d3d92d1ce5f666a4d
Merged-In: I28712db97ae29b46acfe952d3d92d1ce5f666a4d
2017-04-27 16:24:26 -07:00
Jakub Pawlowski
c7c01a2877 Bluetooth: Add constants to ScanResult
Add TX_POWER_NOT_PRESENT and PERIODIC_INTERVAL_NOT_PRESENT

Test: none
Bug: 37536707
Change-Id: Ia48a30f44a961c6e0babd17ecaed0eb93c98ecad
2017-04-27 21:03:46 +00:00
Jakub Pawlowski
0e4ac75f2e Fix NPE when accessing mCallback in BluetoothGatt
This issue was introduced in commit
4eab49652e.

Bug: 37710354
Test: none
Change-Id: I2d985ce97c44d4e096713e156e57437f44ea3ddb
2017-04-27 19:37:35 +00:00
Chen Xu
998eb212bd Merge "Add getVisualVoicemailPackageName()" 2017-04-27 17:46:04 +00:00
Ajay Panicker
37cad12cb1 Merge "Limit btsnoop file size (3/8)" 2017-04-27 17:29:37 +00:00
Mukesh Agrawal
5e253647ad Merge "Log: increase visibility of Log.TerribleFailure" 2017-04-27 16:40:48 +00:00
Ajay Panicker
731a26666d Limit btsnoop file size (3/8)
Limit btsnoop file size by rotating between snoop files. The rotation occurrs
when a fixed number of packets have been logged and will start overwriting
the older file.

Bug: 35998031
Test: Enable snoop logs from developer options and let logs get large
Merged-In: I40d5da4c1b1c9b45908e5790d130f1c5e804c773
Change-Id: I40d5da4c1b1c9b45908e5790d130f1c5e804c773
2017-04-27 00:05:31 +00:00
Ta-wei Yen
5259d8c9ff Add getVisualVoicemailPackageName()
Make NMR2 voicemail columns public

getVisualVoicemailPackageName() and the IS_OMTP_VOICEMAIL is used by
the voicemail UI to filter out voicemails not from the current visual
voicemail app, for example legacy telephony voicemails or previous
default dialer. These voicmails all represent the same source and are
likely duplicates.

BACKED_UP and RESTORED are used by the system dialer voicemail back
up and restore feature in NMR2. Since there are no API bump, it was
hidden and made public in this CL instead. See ag/1803794

ARCHIVED is used to prevent locally saved voicemails from being
deleted during a sync because it does not exist on the server.

Bug: 34463609
Fixes: 34463609
Bug: 32414216
Test: cts test android.provider.cts.VoicemailContractTest
    android.telephony.cts.VisualVoicemailServiceTest

Change-Id: Iec1e499e763ad92f4a822715b6022e9cbe557c11
Merged-in: Iec1e499e763ad92f4a822715b6022e9cbe557c11
2017-04-26 14:03:30 -07:00
Nathan Harold
ac11ccb1f6 Hide IpSecManager, IpSecTransform, and IpSecAlgorithm
These classes, originally planned to be part of the
public API, are not ready for public consumption.
They are planned to be un-hidden in a future release.

Bug: 37681043
Test: make update-api and make
Change-Id: I8caccd3f8455341cb56a2256354eacbadedff047
2017-04-26 06:50:54 +00:00
mukesh agrawal
c2a56b279e Log: increase visibility of Log.TerribleFailure
The Log.setWtfHandler() provides a way to override
the default TerribleFailureHandler, so that we can
test that a piece of code reports as terrible
failure as expected.

Unfortunately, we can't actual use setWtfHandler()
at the moment. The problem is as follows:
1. The Log.setWtfHandler() method requires a
   Log.TerribleFailureHandler instance.
2. The Log.TerribleFailureHandler interface requires
   subclasses to implement a onTerribleFailure()
   method. The method requires a Log.TerribleFailure
   argument.
3. Log.TerribleFailure is a private inner class.

Given the above, classes outside of Log can't create
an appropriate argument to pass to Log.setWtfHandler().

To resolve this, we update the visibility of
Log.TerribleFailure to be the same as that of
Log.setWtfHandler(), and Log.TerribleFailureHandler.

Test: m -j32
Bug: 37425059
Change-Id: Ie646b931869582398d61495e367e0d36e767a3e3
2017-04-26 00:49:34 +00:00
Chen Xu
8c6925a88f Merge "Add VisualVoicemailService" 2017-04-25 21:54:53 +00:00
Treehugger Robot
bdeb8539e8 Merge "Bluetooth: expand comments on new PHY constants" 2017-04-25 19:36:37 +00:00