1008 Commits

Author SHA1 Message Date
Adam Powell
27b7c1f526 Merge "Add ChooserTargetService API" 2015-03-05 00:07:53 +00:00
Mike Lockwood
c623ec973b Merge "MidiManager: Virtual MIDI devices are now implemented as Services" 2015-03-05 00:01:33 +00:00
Adam Powell
e30c9af356 Add ChooserTargetService API
A ChooserTargetService can be implemented by apps that wish to offer
additional deep-link targets for the system intent chooser to in turn
offer to the user. This allows apps to create contextually relevant
shortcuts for UI flows that would otherwise require several steps of
explicit disambiguation. For example, a chat app might offer one-touch
access to recent conversations when sharing a photo to it from
elsewhere.

The chooser implementation must limit the number of
ChooserTargetServices it elects to query in order to respect available
system resources. Only the system chooser is permitted to bind to a
ChooserTargetService.

Change-Id: Ia7e075ee649c51cf2035f20aee166c5a27d91aeb
2015-03-04 14:23:30 -08:00
Mike Lockwood
11fd96d6ff MidiManager: Virtual MIDI devices are now implemented as Services
To implement a virtual MIDI device, include a subclass of MidiDeviceService in
your application.  This service is identified by an intent filter and meta-data
in the application's manifest to allow the MIDI manager to register the virtual device
without actually running the application. Instead, the application's MidiDeviceService
subclass is started on demand when MIDI manager clients want to open the device.

Here is an example of how the MidiDeviceService might be described in the application manifest:

    <service android:name="VirtualDeviceService">
        <intent-filter>
            <action android:name="android.media.midi.MidiDeviceService" />
        </intent-filter>
        <meta-data android:name="android.media.midi.MidiDeviceService"
            android:resource="@xml/device_info" />
    </service>

and the device_info.xml meta-data:

<devices>
    <device manufacturer="Sample Manufacturer" model="Sample Model" private="false">
        <input-port name="my input port" />
        <output-port name="my output port" />
    </device>
</devices>

(note that the <input-port> and <output-port> names are not currently used, but support for these
will be added in a subsequent change)

Client's of the virtual device will bind directly to the hosting application's MidiDeviceService subclass.
To support this, MidiManager.openDevice() now returns the MidiDevice asynchronously via a callback.

This change also adds a utility class called MidiDispatcher, which is a MidiReceiver
that dispatches all data it receives to a list of other MidiReceivers.
We now use this internally in MidiInputPort and MidiDeviceServer, but developers
may use it for other purposes as well.

Change-Id: Ic3009f06d56f3d5edbd87de3f0c330b51a1c217d
2015-03-04 13:45:38 -08:00
Joe Fernandez
412e395147 am f76b6c98: am 66b4366e: am a2bbdb96: am 2ba57444: Merge "docs: update Android docs build to include API 22, Android 5.1" into lmp-mr1-dev
* commit 'f76b6c988af5a6024bcf20a2b51bf5b319b8ae50':
  docs: update Android docs build to include API 22, Android 5.1
2015-03-03 02:07:57 +00:00
Joe Fernandez
f76b6c988a am 66b4366e: am a2bbdb96: am 2ba57444: Merge "docs: update Android docs build to include API 22, Android 5.1" into lmp-mr1-dev
* commit '66b4366e99f561766303e539d3ee798a0b8a2a09':
  docs: update Android docs build to include API 22, Android 5.1
2015-03-03 02:00:51 +00:00
Joe Fernandez
3d44c0faca docs: update Android docs build to include API 22, Android 5.1
Change-Id: If41c1a142db0f2df439afaa9cf5d0fe0ca47d2c0
2015-03-02 15:53:38 -08:00
Mike Lockwood
b673770f71 Add MIDI Manager API tweaks:
- Change the package name from android.midi to android.media.midi

- Add option for specifying a Handler for DeviceCallback notifications

Change-Id: Ia9e9817a651c06299f4e02ee1da3c9666ff64cb9
2015-02-23 14:32:23 -08:00
Narayan Kamath
3bdd327f85 Move apache specific portions of android.net.http to external/apache-http.
We continue to compile external/apache-http into ext.jar. This contains
a few changes apart fom the classes moving around :

- Makefile changes to build docs and api-stubs for now. A future change
  will revert these changes and remove these classes from stubs and
  docs.
- Hardcode event IDs in legacyerrorstrings to avoid a dependency between
  the frameworks and apache. These strings are on their way out and will
  never change anyway.
- Remove imports due to {@link} tags and use {@code} instead.
- Remove an accidental(?) dependency on apache commons code that's a
  part of apache-http.

bug: 18027885

Change-Id: I51cd038d846ec7d02c283a4541b10a6a9cf62ecf
2015-02-12 11:15:49 +00:00
Ruben Brunk
a27eef432a Add ProcessInfoService to activity manager.
- Adds a new AIDL interface for querying process
  information from activity manager.

Bug: 19186859
Change-Id: Ic08858f346d6b66e7bfc9da6faa2c6e38d9b2e82
2015-01-30 16:58:14 -08:00
Ying Wang
1a3bc05a93 am 321e7246: am 301e1def: am 24328660: Merge "Check in "current" system API files." into lmp-mr1-dev
* commit '321e72461bb561ea81f8f7bfaaa0c29e0180bc75':
  Check in "current" system API files.
2015-01-22 20:58:16 +00:00
Ying Wang
321e72461b am 301e1def: am 24328660: Merge "Check in "current" system API files." into lmp-mr1-dev
* commit '301e1def7ab741830e1fbc02a291ff295a36c345':
  Check in "current" system API files.
2015-01-22 20:47:22 +00:00
Ying Wang
02937eba32 Check in "current" system API files.
The API files were generated by running "make showcommands update-system-api".

Bug: 18960664
Change-Id: Ibb4756d98be3cbf67f6103f5d5d8ff060b3c34c9
2015-01-20 16:30:47 -08:00
Chad Brubaker
f038345826 am b8794c76: Merge "resolved conflicts for merge of 3d64a850 to lmp-mr1-dev-plus-aosp" into lmp-mr1-dev-plus-aosp
* commit 'b8794c76d677ef04c96b9edc002fe6e1f53022c7':
  Generate IKeystoreService using aidl
2015-01-15 03:45:12 +00:00
Mike Lockwood
10024b3dc1 MidiManager updates:
MIDI ports are now implemented as file descriptors directly between the sender
and receiver, so the MidiService is no longer in the message path.

To facilitate the above, each port has its own file descriptor, rather than multiplexing
all ports on a device through a single socket.

Added a new class MidiDeviceServer, which is used by implementors of MIDI devices.
This replaces the MidiVirtualDevice class (which only was included in changes that were reviewed but never submitted).

The USB MIDI implementation has moved from the MIDI service to the USB service.
The USB MIDI implementation uses MidiDeviceServer as its interface, so we now have a common
interface for all MIDI device implementations.

Change-Id: I8effd1583f344beb6c940c3a24dbf20b477a6436
2015-01-14 16:51:54 -08:00
Chad Brubaker
29f4d9f9ea resolved conflicts for merge of 3d64a850 to lmp-mr1-dev-plus-aosp
Change-Id: Ieed2c2a3b9977c30bc5318317c91c29907aa1377
2015-01-14 13:51:45 -08:00
Chad Brubaker
7a2c973db7 Generate IKeystoreService using aidl
This replaces IKeystoreService.java with IKeystoreService.aidl and
changes the methods that passed down a byte[][] to instead pass down a
KeystoreArguments which is currently a thin parcelable wrapper around a byte[][].

Change-Id: I6367bcf57562f41a27aab14f1903b74995cb65c2
2015-01-13 18:29:15 -08:00
Narayan Kamath
84c2744108 am 4dcc8d28: am d7771768: Merge "Build against libphonenumber-platform."
automerge: 6d2d7f1

* commit '6d2d7f19a0b9c1172428ef4c79453b9d1e9ed5ca':
  Build against libphonenumber-platform.
2014-12-23 13:49:33 +00:00
Narayan Kamath
6d2d7f19a0 am 4dcc8d28: am d7771768: Merge "Build against libphonenumber-platform."
* commit '4dcc8d28d7933a4a08d2330f78f3b4486d2ef264':
  Build against libphonenumber-platform.
2014-12-23 13:47:50 +00:00
Narayan Kamath
ddd11793a2 Build against libphonenumber-platform.
Don't compile libphonenumber sources directly.

Change-Id: Ib2efd84535a2cffe773271fd1ddcb66a6a651cb8
2014-12-18 13:26:03 +00:00
Jean-Michel Trivi
b3f390fe86 am 83d0c86b: am d14f98fd: am 8638877f: Merge "Support collaborative audio focus handling" into lmp-mr1-dev
* commit '83d0c86b869fe84b3172028a5598ebd87ce7745b':
  Support collaborative audio focus handling
2014-12-09 11:06:11 +00:00
Benjamin Franz
9c0e993d4e am f4a76651: am 5f1ea2e6: am fb967585: Merge "Change the routing path of bluetooth headset connections." into lmp-mr1-dev
* commit 'f4a76651b0fec69242822e57441b1a937fb6daf3':
  Change the routing path of bluetooth headset connections.
2014-12-09 00:17:44 +00:00
Mike Lockwood
210d9d94cf Merge "MIDI Manager work in progress" 2014-12-08 18:46:38 +00:00
Mike Lockwood
67f8e8bd89 MIDI Manager work in progress
Still to do:

Add MidiInputPort and MidiOutputPort classes
Schedule sending MIDI events in the future
Security/permissions
Reconsider interface for virtual devices
Look into performance optimizations

Change-Id: I9b7d63b196996a04be0a830efa913043da1328a8
2014-12-08 10:45:37 -08:00
Jean-Michel Trivi
0212be5150 Support collaborative audio focus handling
Add new flag for an app to define it doesn't duck, but rather
  pauses when losing focus with AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK.
  This flag is to be used when requesting focus.
Add support for AudioPolicy to specify whether it will implement
  ducking itself, rather than it being handled by an app.
When ducking is handled by a policy, do not notify focus owners
  when they lose audio focus with LOSS_TRANSIENT_CAN_DUCK, unless
  they would have paused, as expressed with the
  AUDIOFOCUS_FLAG_PAUSES_ON_DUCKABLE_LOSS flag.
Add a focus listener for a policy to be notified of focus changes
  so it can properly implement its own ducking.

Bug 16010554

Change-Id: I11d7cdb85c52fd086128a44f4d938aaa44db5c25
2014-12-05 18:41:28 -08:00
Benjamin Franz
fb967585cc Merge "Change the routing path of bluetooth headset connections." into lmp-mr1-dev 2014-12-05 12:04:03 +00:00
Cheuksan Wang
412766a7d6 am 29ac679f: am dba26aa2: am 109ec376: Merge "new SMS/MMS carrier app API" into lmp-mr1-dev
* commit '29ac679f9f85a68eca03c262e740d62f8af66797':
  new SMS/MMS carrier app API
2014-12-04 21:55:19 +00:00
Benjamin Franz
e8b98925d0 Change the routing path of bluetooth headset connections.
The HeadsetService is now bound directly by the BluetoothManagerService.
The IBinder object related to the HeadsetService is then given back to
the BluetoothHeadset and to the client app. This change makes the
HeadsetService available for managed profile clients.

Bug: 16968338
Change-Id: I016d1837e4f987c0fab1fc2c64cb06eb91b24d87
2014-12-04 16:57:25 +00:00
Yohann Roussel
e1c00320b6 Merge "Allow compilation with Jack." 2014-12-04 09:26:54 +00:00
Cheuksan Wang
109ec376da Merge "new SMS/MMS carrier app API" into lmp-mr1-dev 2014-12-04 00:19:06 +00:00
Trevor Johns
ea28e5fd9d am 8e78f0a7: am 9aa9e46b: am 5244ab68: am b769fc0c: am 512103d6: am 19275484: Merge "Docs: Add "admin" to samples categories" into lmp-docs
* commit '8e78f0a7122432c4cfabe86ccf46c724297e11b0':
  Docs: Add "admin" to samples categories
2014-12-03 21:50:50 +00:00
Winson Chung
3b8887d540 am fee5e3d3: am 50511096: am de9848c6: Merge "Initial changes to add callback on task stack changes. (Bug 17672056, Bug 18291345)" into lmp-mr1-dev
* commit 'fee5e3d32a26c3ac2136e37cad15fd9cc41066db':
  Initial changes to add callback on task stack changes. (Bug 17672056, Bug 18291345)
2014-12-03 21:50:36 +00:00
Trevor Johns
5244ab68e4 am b769fc0c: am 512103d6: am 19275484: Merge "Docs: Add "admin" to samples categories" into lmp-docs
* commit 'b769fc0c576f485022330b40ae5180fb23cc53ee':
  Docs: Add "admin" to samples categories
2014-12-03 18:12:47 +00:00
Trevor Johns
0d78c52bfc Docs: Add "admin" to samples categories
Contains samples for device administration APIs.

Issue: 18544051
Change-Id: I8e157ba163848ac0356f2669a9cadd0f76b4ae9a
2014-12-02 18:17:22 -08:00
Winson Chung
740c3ac782 Initial changes to add callback on task stack changes. (Bug 17672056, Bug 18291345)
Add a listener to listen for changes in the Task stacks to preload thumbnails from the
system.  In addition, reduce the amount of synchronous work done in activity creation
and first measure/layout passes.

Change-Id: I8bd9155d7a05e89c190a20429acff69a17808208
2014-12-02 15:34:20 -08:00
Cheuksan Wang
b72eb97e4b new SMS/MMS carrier app API
Changes based on api council review

BUG: 18005911
Change-Id: I23bd207ce70f7fa201d6d964c1700cfc44cb009b
2014-12-01 18:11:07 -08:00
Jorim Jaggi
7d754e0ccb am f1e6d231: am c5c2e537: Merge "resolved conflicts for merge of 803a6dc0 to lmp-mr1-ub-dev" into lmp-mr1-ub-dev
* commit 'f1e6d2315eea6e9f289b8c1bafc04a4cbc6f05e1':
  Make IKeyguardService interface asynchronous
2014-11-26 19:42:19 +00:00
Jim Miller
ab954546dc Make IKeyguardService interface asynchronous
Add a state callback so lockscreen reports back whenever its state
relevant for PhoneWindowManager changed, instead of synchronously
calling into SysUI which can lead to deadlocks. Directly use
LockPatternUtils for isSecure, and optimize the number of calls to
this method to optimize layout performance.

Bug: 17677097
Change-Id: I5d491fc8884d4f84d9562626b9ea0d5eaa5166fc
2014-11-25 23:22:52 +01:00
Wink Saville
5c11e41b1a am b4c54109: am 4f1cce63: am 12c2136e: Merge "Additional changes to SubscriptionManager API as per API council." into lmp-mr1-dev
* commit 'b4c5410987a6657b71fb0b86e1ef8337628241dc':
  Additional changes to SubscriptionManager API as per API council.
2014-11-24 18:13:01 +00:00
Wink Saville
d09c4cad65 Additional changes to SubscriptionManager API as per API council.
bug: 17575308
Change-Id: Idd98aa46c15a9219ccf28091c62602ac8bf16c62
2014-11-22 10:08:16 -08:00
Jaewan Kim
e95b9dd57f am b5ba786c: am 18ab5c21: Merge "Add an API to check availability of Ethernet interface." into lmp-mr1-dev automerge: 52dcc7f
* commit 'b5ba786ccb9265ed076cda088ddbfded3ecc7f85':
  Add an API to check availability of Ethernet interface.
2014-11-21 03:11:35 +00:00
Wink Saville
b638b35757 am 49414b5b: am 816e19eb: Merge "Revert "Additional changes to SubscriptionManager API as per API council."" into lmp-mr1-dev automerge: 1caab41
* commit '49414b5b2129bf72a847c64a9f83e7b7db4511c0':
  Revert "Additional changes to SubscriptionManager API as per API council."
2014-11-21 02:57:27 +00:00
Wink Saville
771e952ebc am 07fb2457: am 4a57e908: Merge "Additional changes to SubscriptionManager API as per API council." into lmp-mr1-dev automerge: 68c21d6
* commit '07fb24576a5a425798a2aa004dd49682f414cbf7':
  Additional changes to SubscriptionManager API as per API council.
2014-11-21 02:56:45 +00:00
Jaewan Kim
18ab5c216c Merge "Add an API to check availability of Ethernet interface." into lmp-mr1-dev 2014-11-20 23:07:43 +00:00
Wink Saville
2d1ee98227 Revert "Additional changes to SubscriptionManager API as per API council."
This reverts commit baf21da1e17ef358632c078128d381b3be218a08.

Change-Id: I73cbdfadf07ca3cf20b042781b62aafcc72b17d6
2014-11-20 20:29:51 +00:00
Jaewan Kim
d109a7cf69 Add an API to check availability of Ethernet interface.
Bug: 18045481
Change-Id: I95358241b431cfe4435ce70c23c9a639b9dc4d58
2014-11-20 11:12:17 +09:00
Wink Saville
baf21da1e1 Additional changes to SubscriptionManager API as per API council.
bug: 17575308
Change-Id: I7773965094510999bfce8fc6b2b31ba6ce496653
2014-11-19 16:03:09 -08:00
Ying Wang
d0c45355b9 Move preloaded-classes out of framework.jar.
Instead we install preloaded-classes as a standalone configuration file
/system/etc/preloaded-classes, so we can configure different file per product.

Bug: 18305157
Change-Id: I22f1a1dd44f90268d02532bf18405768523c0b1b
2014-11-17 11:31:08 -08:00
Ying Wang
affbaee9c1 am c2045047: resolved conflicts for merge of 5c7bc931 to lmp-mr1-dev-plus-aosp
* commit 'c2045047735522f50bc1d2618280bd37306f18d2':
  Move preloaded-classes out of framework.jar.
2014-11-17 19:24:11 +00:00
Ying Wang
0de36e51c5 Move preloaded-classes out of framework.jar.
Instead we install preloaded-classes as a standalone configuration file
/system/etc/preloaded-classes, so we can configure different file per product.

Bug: 18305157
Change-Id: I22f1a1dd44f90268d02532bf18405768523c0b1b
2014-11-17 10:15:39 +00:00