Commit Graph

14659 Commits

Author SHA1 Message Date
Tyler Gunn
7519e16698 Merge "Add CAPABILITY_SUPPORTS_VIDEO_CALLING to PhoneAccount." 2016-11-11 18:01:25 +00:00
Romain Guy
972fad90d4 Merge "Improve support for half floats and expose as public API" 2016-11-10 23:55:18 +00:00
Tyler Gunn
5d682ce725 Merge "Perform camera permission and app ops check when setting camera for VT." 2016-11-10 23:32:32 +00:00
Winson Chung
7075d79cab Merge "Adding API for apps to specify their aspect ratio when entering PIP." 2016-11-10 23:08:54 +00:00
Ta-wei Yen
fc0f68ca51 Merge "Add createForPhoneAccountHandle() and getServicetate() Respect TelephonyManager's subId when listening to phone state" am: 0a3b6b70dd am: 969a6eb2b8 am: c9698a5cff
am: e1ae654041

Change-Id: Ic28680327d916e3650b3c11fb253353955373922
2016-11-10 22:28:13 +00:00
Ta-wei Yen
969a6eb2b8 Merge "Add createForPhoneAccountHandle() and getServicetate() Respect TelephonyManager's subId when listening to phone state"
am: 0a3b6b70dd

Change-Id: I512e68bccda115ad7c58ec1f1fbfbb2c69c86578
2016-11-10 22:02:17 +00:00
Julia Reynolds
05675c80c1 Merge "Expose dismiss reasons to notification listeners." 2016-11-10 20:46:07 +00:00
Ta-wei Yen
05f9112d15 Add createForPhoneAccountHandle() and getServicetate()
Respect TelephonyManager's subId when listening to phone state

TelecomManager perfers to use a PhoneAccountHandle to represent a
account but TelephonyManager prefers subscription IDs.

This CL added createForPhoneAccountHandle() in TelephonyManager so
telephony values can be queried from it.

Currently the ServiceState can be retrieved through registering a
PhoneStatelistener, but it is a callback which the handler cannot be
specified.

getServiceState() is added to allow the ServiceState to be polled.

While TelphonyManager has createForSubscriptionId(), listen() does not
respect the subId on the manager created from it, and will always use
the hidden subId on the listener, which is always the default subId
through public API.

After this CL, the default subId on the listener will null.
TelephonyManager use its' own subId if the listener does not set the
subId to something else.

Bug: 32637799
Bug: 32414216
Test: cts-tradefed run cts-dev --module CtsTelephonyTestCases
Change-Id: I9995e4da1573cf1f6b6e4acf2daf7a538fb60d5f
2016-11-10 12:11:56 -08:00
Winson Chung
84a3834a0c Adding API for apps to specify their aspect ratio when entering PIP.
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testEnterPipAspectRatio
Test: #testEnterPipExtremeAspectRatios

Change-Id: I9efba942b9a6451dec07428fe1e428ef4a896867
2016-11-10 09:19:52 -08:00
Julia Reynolds
3aa5f1eec0 Expose dismiss reasons to notification listeners.
Test: see cts tests on same topic
Change-Id: Ibae45e125ebc2aa394fbdb41c00341bf0ac101e5
2016-11-09 15:43:49 -05:00
Julia Reynolds
3775a39e39 Merge "Move notification channel from record to sbn." 2016-11-09 20:40:41 +00:00
Julia Reynolds
67c8e1e61f Merge "Ranker --> Assistant." 2016-11-09 20:38:47 +00:00
TreeHugger Robot
00f42c3b28 Merge "Initial implementation of the Auto-Fill Framework classes." 2016-11-09 19:19:32 +00:00
Tyler Gunn
b88b311463 Perform camera permission and app ops check when setting camera for VT.
When a calling InCallService attempts to use the setCamera API on the
VideoCall, Telecom will perform a permission check to ensure that the
caller has the correct camera permission and passes the app-ops camera
check.  A failure to set the camera will result in a callback via the
call session event API.

This got a little messy as the app ops package name needs to come from the
InCallService, and handler usage in the VideoProvider API means we had to
pass around the uid/pid of the caller, obtained before we trampoline onto
the handler.

Test: Unit tests added, manual testing performed.
Bug: 32747443
Change-Id: I555a04f9c3fb45e60bb811f64ba855ccf2e3b0e2
2016-11-09 10:19:23 -08:00
Julia Reynolds
423b9fc83d Move notification channel from record to sbn.
So notificationlisteners know about it.

Test: runtest systemui-notification
Change-Id: I28fc86730d3f7ad246a0164f44157594f57430c0
2016-11-09 09:51:08 -05:00
Julia Reynolds
77b2cc920f Ranker --> Assistant.
Rename ranker to assistant and make some of the methods public.
Delete the ext services ranker and restore the listener-type
lifecycle to the assistant.

Test: manual. add a notification assistant and verify it gets
assistant and listener callbacks.

Change-Id: Ia3406c8c14d923426c1b8a6d8b5187efe64c31c3
2016-11-09 09:04:16 -05:00
Romain Guy
12ae9a0736 Improve support for half floats and expose as public API
Half floats (often called fp16) are commonly used to store floating
point data efficiently without having to use lossy compression schemes.

Half floats are commonly used in the following cases:
- Wide gamut colors
- Meshes (OpenGL and Vulkan)
- HDR images/textures
- Lookup tables as textures (OpenGL and Vulkan), particularly
  in physically-based renderers
- Maching learning/compute

OpenGL and Renderscript both provide Java language APIs that accept
half floats but the platform offers no support to create fp16 values
from fp32 data. The Half class is an IEEE 754 compliant implementation
of half floats that can be used to feed OpenGL and Renderscript properly
encoded values. A comprehensive series of test is also added to CTS.

Test: cts-tradefed run singleCommand cts-dev --module CtsUtilTestCases --test android.util.cts.HalfTest
Bug: 29940137

Change-Id: I908bde7b3c6f65f7a24e0ab5652be4d16cc0358d
2016-11-08 17:58:54 -08:00
TreeHugger Robot
1183883b2e Merge "Implement new API" 2016-11-09 00:30:44 +00:00
Adam Lesinski
f96789d37c Merge "Add font type to AAPT2" 2016-11-08 23:03:58 +00:00
Dianne Hackborn
80361c9ea7 Merge "Move code for handling uid obs "cutoff" to activity manager" 2016-11-08 23:03:21 +00:00
Felipe Leme
5381aa4b58 Initial implementation of the Auto-Fill Framework classes.
This CL provides the initial, skeleton implementation of the Auto-Fill
Framework classes:

- Defines the system service and app-based
  AIDL (IAutoFillManagerService.aidl and IAutoFillService.aidl respectively).
- Defines the 'adb shell cmd' interface.
- Defines the permission required to access the service.
- Registers the service on SystemServer.
- Adds the code to bind the app-specified service to system_server.
- Defines the service class (AutoFillService) required by providers.
- Implements the initial startSession() method.

This is still a very early, "work-in-progress" change:
- It has many TODOs.
- It does not have unit or CTS tests yet.
- It does not provide a callback method to auto-fill the fields.
- In fact, it has a lot of TODOs.

Despite these adversities, it can be tested by following the steps
below:

1.Create an app with a service extending AutoFillService

2.Implement the onNewSession() method

3.In the manifest:
 - Listen to android.service.autofill.AutoFillService intents.
 - Require the android.permission.BIND_AUTO_FILL permission.

4.Explicitly set the app as an autofill-service by running:
  adb shell settings put secure auto_fill_service MY_APP/.MY_SERVICE

5.Start a session against the top activity:
  adb shell cmd autofill start session

BUG: 31001899
Test: manually built and ran it

Change-Id: I00f4822159b31ddddba8f513e57c4474bc74eb89
2016-11-08 14:40:56 -08:00
Todd Kennedy
e5195dd17c Implement new API
This is the first swack at the new, 2-phase API. Adds the new methods
to the resolver service and makes the split name explicit on the
installer intent.

The 2nd phase will not yet be invoked; that's coming in a follow-on
change.

Bug: 25119046
Test: build & install the sample resolver and run 'adb shell am start -a android.intent.action.VIEW -c android.intent.category.BROWSABLE -d "https://www.tripadvisor.com/Tourism-g33020-San_Jose_California-Vacations.html"'
Change-Id: I2df6fa64d46f17a86a2e32b19417632c594fb10f
2016-11-08 13:47:28 -08:00
TreeHugger Robot
00c2ed26f6 Merge "Add an extra to pass initial location URI for file choosers." 2016-11-08 21:24:55 +00:00
Dianne Hackborn
5614bf5a1a Move code for handling uid obs "cutoff" to activity manager
To do this, I had to fix the PROCESS_STATE_NONEXISTENT constant
to be the last value (instead of the special magical -1 value)
so it semantically matches the public importance constants.  I
think this is better anyway.

Also this fixes a big problem in the implementation, where we
weren't keeping track of the last proc state per uid...!  Duh.

Test: manually ran testUidImportanceListener
Change-Id: Ie3008f824446089840f896885e6033472abb065e
2016-11-08 11:38:04 -08:00
Pankaj Kanwar
f57b084f3b Merge "Provide an API to make USSD calls and read the responses." 2016-11-08 16:30:37 +00:00
Garfield Tan
b44ae61e01 Add an extra to pass initial location URI for file choosers.
Test: It builds.

Bug: 30031881
Change-Id: I64e9392b0aec75baee13039642316f7e50494567
2016-11-07 17:22:57 -08:00
pkanwar
d570f63b72 Provide an API to make USSD calls and read the responses.
Test: will be added in a subsequent CL.
Bug: 30973910
Change-Id: Ibf622e154f3f987be547f4f85e15891d4e382118
2016-11-07 13:59:48 -08:00
Dianne Hackborn
058f1e4468 Implement system API for monitoring uid importance changes.
Changed the permission for registerUidObserver to be
PACKAGE_USAGE_STATS, which better matches the semantics of this
API and is accessible to system apps.

Test: Added testUidImportanceListener()

Change-Id: Ib47d02bd654fbe399a9c92550c89ecbd38f928dc
2016-11-04 17:05:27 -07:00
Garfield Tan
0b3cf666d0 Unhide findPath() API. Add JavaDoc to related features.
Also remove comments that disallow folders in search results.

Test: It builds.

Bug: 30948740
Bug: 32512923
Change-Id: I72706b69163aa98ee9568939e09e5048b6e8f9f8
2016-11-03 15:42:18 -07:00
Tyler Gunn
ee669d2774 Add CAPABILITY_SUPPORTS_VIDEO_CALLING to PhoneAccount.
Adding companion PhoneAccount capability which is used to indicate when a
PhoneAccount supports video calling.  That is, whether it can potentially
make video calls, but not necessarily at the current time.

This is an often requested OEM enhancement which is used to drive UX (e.g.
imagine a video calling icon showing up if the device supports video, but
only being enabled when the device is in range of a VT capable tower).

See bug for reference to design doc.

Bug: 27328615
Change-Id: I08fc18950e6d35a8a7df47ce37aa2326624b9fd3
2016-11-03 18:02:41 +00:00
TreeHugger Robot
9c1202be95 Merge "Add VERSION_CODES.O" 2016-11-02 20:27:15 +00:00
Makoto Onuki
864f4bd9ed Add VERSION_CODES.O
So that the framework can do "targetSdk >= O".

Test: Additional hidden constant only. "m"
Change-Id: I6cde68869c3b8bdc8e8b06b7d63f164714fbd2b0
2016-11-02 11:30:14 -07:00
Julia Reynolds
73481c8837 Merge "Some channel model updates" 2016-11-02 01:20:20 +00:00
Julia Reynolds
85769915e7 Some channel model updates
- Apps cannot update their channel settings after creation.
- Importance is required when creating a channel.
- Some method name changes.
- Ranker can't modify fields a user has changed.
- High and Max importance mean the same thing.
- The default channel adopts app wide settings on creation.
- The default channel is limited to importance low once target api is post n mr1
  unless the user changed it.

Test: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/notification

Change-Id: I73c449a6abe6d709046de79c5c54339cb2edf0b8
2016-11-01 19:31:34 +00:00
Pankaj Kanwar
44b2ac9d3d Merge "Provide an API to make USSD calls and read the responses." 2016-11-01 17:42:32 +00:00
pkanwar
19ba736c22 Provide an API to make USSD calls and read the responses.
Test: will be added in a subsequent CL.
Bug: 30973910
Change-Id: Ic1214330ddf6846973d8bd28ee6ff1d28ae8c852
2016-10-31 17:13:18 -07:00
Chad Brubaker
006b53a681 Merge "Add ephemeral protection level" 2016-10-31 20:02:53 +00:00
Rob Carr
293a00c98b Merge "Allow specifying rotation animation in manifest." 2016-10-31 19:39:44 +00:00
Chad Brubaker
c19706a937 Add ephemeral protection level
Ephemeral applications will only be able to be granted permissions that
have the ephemeral proteciton level, this allows us to tighly define
what behavior is OK for ephemeral applications.

This includes an initial small whitelist of permissions for ephemeral
apps, it may be expanded later.

Test: adb install --ephemeral, verified against both runtime and install
time permissions
Test: cts-tradefed run cts -m CtsPermission2TestCases
Change-Id: I854c44cf7a293d484b674cdd4fb5141e362a2f1a
2016-10-31 18:27:28 +00:00
Stephen Chen
26b0c6ae69 Merge "Define API for metering network stats buckets." 2016-10-31 17:22:12 +00:00
TreeHugger Robot
27e9c97803 Merge "Add FragmentLifecycleCallbacks" 2016-10-28 23:53:21 +00:00
Adam Powell
38c67ff93b Add FragmentLifecycleCallbacks
Add a new callback object that can be attached to a FragmentManager to
observe all fragment lifecycle events within that
FragmentManager. Useful for dependency injection and other
shenanigans.

FragmentLifecycleCallbacks can be registered as recursive, in which
case they will be activated for any lifecycle events that happen in
descendant FragmentManagers as well.

Test: cts-tradefed run singleCommand cts --skip-preconditions --skip-device-info --module CtsFragmentTestCases
Change-Id: I816b1fbef6c29616ccc3fd729ee847c5f1a6f72f
2016-10-28 14:59:54 -07:00
John Reck
1952e2dc9b Merge "Add SurfaceHolder#lockHardwareCanvas()" 2016-10-28 19:38:45 +00:00
Przemyslaw Szczepaniak
27649153cf Merge "Track libcore change 16fa17012b56e990ced91cd023dee33f96deedf9" am: ec3e884e88 am: 29d6af7fe7 am: 0cf19a9a27
am: 4ffbf4e72f

Change-Id: Ifa2373f5f98283cf616c9a64be0346f3d7b917e9
2016-10-28 12:26:14 +00:00
Przemyslaw Szczepaniak
29d6af7fe7 Merge "Track libcore change 16fa17012b56e990ced91cd023dee33f96deedf9"
am: ec3e884e88

Change-Id: Ibf708f685bf8cb8e5f88423b48ed05986c223651
2016-10-28 12:05:56 +00:00
Adam Lesinski
c0c366394c Add font type to AAPT2
Test: make libaapt2_tests AaptTestAppOne
Change-Id: I8fbf01675a218cc3c0b59598b6b1ec173851e946
2016-10-27 18:09:00 -07:00
Robert Carr
0f5d753972 Allow specifying rotation animation in manifest.
In the case where activity launching may trigger orientation
changes we may wish to run the rotation animation with a starting
window, in which case the app won't have had time to set the
rotation animation on the window yet, so we desire a way to
specify it for the whole activity.

Test: Run RotationAnimation activity from API Demos and verify default animation is crossfade
Bug: 29940147
Change-Id: I5deae6c6a32ee51a0a5409d38f0e5d15ca464a1b
2016-10-27 22:08:11 +00:00
John Reck
6bc7014210 Add SurfaceHolder#lockHardwareCanvas()
Bug: 26988043
Test: SurfaceViewTests#testSurfaceHolderHardwareCanvas CTS test
Change-Id: I3e5352d498dbe2fc56a18ca27360d129a14c7784
2016-10-27 14:13:44 -07:00
Philip P. Moltmann
08b678c029 Correctly use ByteBuffer in UsbRequest
Meaning: Read/Write to correct area in buffer, set position correectly.

- Create a new method UsbRequest#enqueue that has correct behavior, deprecate
  UsbRequest#queue.
- Move all description of the weird (legacy) UsbRequest#queue behavior to
  this method.

Change-Id: Ibeed400b4ad2aa9d005ace345c7895a3dc4ba1ad
Fixes: 31050148
Test: Submitted alongside
2016-10-27 10:25:40 -07:00
Philip P. Moltmann
411f8215fc Merge "Add UsbDeviceConnection.requestWait with a timeout" 2016-10-27 16:15:15 +00:00