12105 Commits

Author SHA1 Message Date
Felipe Leme
3e71e80e36 Merge "Created new public API so applications can customize its metered network usage while running in background." 2016-01-22 19:26:06 +00:00
Felipe Leme
21f255dea9 Merge "Created a new API to grant scoped directory access to applications." 2016-01-22 19:13:10 +00:00
Felipe Leme
c7b1f89e9e Created a new API to grant scoped directory access to applications.
The Storage Access Framework currently provides an
API (OPEN_DOCUMENT_TREE) that lets the user pick a directory to be used
by the application. Although this APIs is very powerful (for example, it
allows the user to create sub-directories, delete and share files,
etc...), it's too complex for simpler use cases like a camera
application trying to have access to the standard Pictures directory.

The new API (OPEN_EXTERNAL_DIRECTORY) simplifies this scenario by
letting the application select a standard, pre-defined directory (as
defined by android.os.Environment). The user still needs to grant access
to the requested directory, but the resulting UI will be simpler and
more straightforward.

Usage example:

  // ...
  int requestCode = 42;
  Intent intent = new Intent(Intent.ACTION_OPEN_EXTERNAL_DIRECTORY);
  intent.setData(Uri.fromFile(
    new File(Environment.getExternalStorageDirectory(),
             Environment.DIRECTORY_PICTURES)));
  startActivityForResult(intent, requestCode);
  // ...

  @Override
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode != Activity.RESULT_OK) {
      return;
    }
    Uri uri = data.getData();
    int modeFlags = data.getFlags()
        & (Intent.FLAG_GRANT_READ_URI_PERMISSION
        | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
    getContentResolver().takePersistableUriPermission(uri, modeFlags);
  }

BUG: 23011462
Change-Id: Ie832026532f74e681ef220b761667eb66ff3c8b0
2016-01-22 10:59:29 -08:00
Tim Volodine
28c8356441 Add Service Worker settings and callback support in WebView.
Service Workers are not tied to WebView instances so currently
there is no mechanism to capture callbacks originating from
within Service Workers.

This patch adds the necessary classes to capture callbacks
and allows to set settings specifically for Service Workers.

The main idea is that to control service workers the embedding
app would obtain an instance of ServiceWorkerController using
ServiceWorkerController.getInstance() first. After that it would
be able to set a custom ServiceWorkerClient and change
ServiceWorkerWebSettings via the controller object.

BUG: 22709088
Change-Id: I0eb17be46b767851676b77a94757771611fa3a1b
2016-01-22 18:55:39 +00:00
Felipe Leme
1b103238b9 Created new public API so applications can customize its metered network
usage while running in background.

The new API is 'int getRestrictBackgroundStatus()' and returns the
following values:

 - RESTRICT_BACKGROUND_STATUS_DISABLED: no restrictions
 - RESTRICT_BACKGROUND_STATUS_WHITELISTED: restriction but app is
   whitelisted
 - RESTRICT_BACKGROUND_STATUS_ENABLED: full restriction

The proper way to interprete these values for using metered networks
while running on background is:

 - When disabled, there is no restriction and the application could use the
   metered networks freely.

 - When whitelisted, the application can use the metered network, but should try
   to minimize the usage.

 - When enabled, the application should not try to use metered networks at
   all, since the usage will be denied.

BUG: 26451391
Change-Id: If07d42bb88e4c02802df0234861f38aef2cfead7
2016-01-22 10:50:11 -08:00
Benjamin Franz
947f3557a5 Merge "Add profile policy to set work challenge background color" 2016-01-22 12:59:24 +00:00
Benjamin Franz
59720bb2a6 Add profile policy to set work challenge background color
Adding a policy for profile owners to set the background color of the
confirm credential screen for the managed profile.

Bug: 26638631

Change-Id: Iea36b94c5a42b6ae12cc36921ec5f840306e81a1
2016-01-22 12:32:10 +00:00
Przemyslaw Szczepaniak
eb6c023710 Merge "Fix incorrect @hide usage in libcore" 2016-01-22 12:22:39 +00:00
Sergey Poromov
507e2c94a3 Merge "Add BackupManager#isAppEligibleForBackup() method to Backup API." 2016-01-22 12:01:16 +00:00
Przemyslaw Szczepaniak
a0dda9ca9d Fix incorrect @hide usage in libcore
@hide annotation is only effective in Javadoc.

Bug: 26689841
Change-Id: Ifc0a1358b64518a40b4334061ef8ca0dd23ea28e
2016-01-22 11:40:06 +00:00
Yohei Yukawa
094e64b7cf Merge "Clarify the purpose of EditorInfo#hintLocales." 2016-01-22 09:54:19 +00:00
Jean-Michel Trivi
b919f6fd71 Unhide audio recording notification API
Introduce new methods and classes for the audio recording
  configuration update and query API.
Callback registration supports a Handler.

Bug 22876530

Change-Id: I819ad464f095d970b5d1d8a3781fcf8dbb310424
2016-01-21 15:09:38 -08:00
Sergey Poromov
9448196076 Add BackupManager#isAppEligibleForBackup() method to Backup API.
Check is done only in framework.
Transport still can deny backup for the package.

Bug: 26443192
Change-Id: Ifcde67a4d11725aa4b15ab4f57d740f55ab2b265
2016-01-21 22:41:39 +01:00
Makoto Onuki
e5fea6fad1 Merge "SUW shouldn't use hidden APIs." 2016-01-21 21:36:45 +00:00
Yohei Yukawa
d469f2122e Clarify the purpose of EditorInfo#hintLocales.
During the initial attempt to support automatic language switching in
LatinIME, it turns out that the current EditorInfo#locales is difficult
to use and even confusing in some situations.  Based on that
experience, this CL changes as follows:

* Rename EditorInfo#locales to EditorInfo#hintLocales:
  This is mainly to avoid possible confusion when to set this.  We want
  to make it clear that having non-empty LocaleList there is a clear
  signal that the user would switch to certain languages regardless of
  the currently selected input method subtype.

* Make EditorInfo#hintLocales nullable:
  Previously marshaling EditorInfor causes NPE when
  EditorInfo#hintLocales is null.  This CL relaxes such a restriction.

* Introduce TextView#{set, get}ImeHintLocales():
  In the previous implementation [1], we just copied
  TextView#getTextLocales() into EditorInfo.  This is, however, does not
  work well because it is no more or less than the default value.  If
  LatinIME supports automatic language switching, having the default
  value in EditorInfo actually means that whenever you focus in a new
  text field, the keyboard language is reset to the default locale.
  In order to make this "hint" useful for IME developers, this "hint"
  should be specified only when the application developers are confident
  to do so.

  [1]: I738ffaaf07091d8b980f8bfc6e16227fcb85a96a
       0445fdf321e74044dc9f3719922fc8ff4923fdf4

Bug: 22859862
Change-Id: I0a730011874ea8d01e50624ed3f1ecd197d05f94
2016-01-21 21:13:06 +00:00
Oleksandr Peletskyi
b7cc096fd4 Merge "Added restriction if a user is allowed to change the icon. BUG: 25305966" 2016-01-21 20:25:46 +00:00
Oleksandr Peletskyi
7f1f1dfc87 Added restriction if a user is allowed to change the icon.
BUG: 25305966

Change-Id: I3d527224f00087b2bd959879ebb143e2ecb9c914
2016-01-21 20:49:32 +01:00
Phil Weaver
75fab6b8bc Merge "Pass drawing order information to accessibility." 2016-01-21 19:17:48 +00:00
Kenny Guy
8c32981f12 Merge "Update PackageMonitor and LauncherApps for suspended apps." 2016-01-21 19:04:20 +00:00
Sergey Poromov
d3665f1f0f Merge "Introduce BackupManager#requestBackup & BackupObserver API" 2016-01-21 18:55:28 +00:00
Phil Weaver
1f2225486d Pass drawing order information to accessibility.
Bug: 22721935
Change-Id: I45a2be7c174c8b5a469b68a45dec0eb536825d92
2016-01-21 10:35:26 -08:00
Sergey Poromov
fe06bf64d2 Introduce BackupManager#requestBackup & BackupObserver API
Introduces a way to request immediate backup for list of packages
and receive callbacks on backup progress.

Bug: 25688526
Change-Id: Ib826933d44f4ebf2b981f8be366215b2d37847e2
2016-01-21 19:15:33 +01:00
Kenny Guy
772427555f Update PackageMonitor and LauncherApps for suspended apps.
Allow launchers to read ApplicationInfo from LauncherApps
to support suspended flag.
Provide callback to launchers via LauncherApps for suspend
/unsuspend broadcasts.

Change-Id: I772a121c45f60f926e8343bb6f181bef4e8929d3
2016-01-21 15:15:04 +00:00
Jinsong Mu
e09e245b92 Merge "Accessibility services can turn themselves off b/22514381 Added disableSelf() method to AccessibilityService This newly added api used used in https://googleplex-android-review.git.corp.google.com/#/c/833857/" 2016-01-21 06:01:22 +00:00
Jinsong Mu
a9e7a3bbe8 Accessibility services can turn themselves off b/22514381
Added disableSelf() method to AccessibilityService
This newly added api used used in
https://googleplex-android-review.git.corp.google.com/#/c/833857/

Change-Id: I5fe60181058ef90dd496318cf270e0825bcc411a
2016-01-20 21:56:50 -08:00
Selim Gurun
223531d88a Merge "Add the system apis for token binding" 2016-01-21 00:42:44 +00:00
Ronghua Wu
66d96977bd Merge "media: Add MIMETYPE_VIDEO_DOLBY_VISION." 2016-01-21 00:42:23 +00:00
Selim Gurun
a5171370f2 Add the system apis for token binding
Bug: 22665752

Token binding protocol is the next generation channel-ID protocol,
currently it is a draft in IETF
 https://tools.ietf.org/html/draft-ietf-tokbind-protocol-03

Add the api as a system api (will be public once the draft finalizes)

Change-Id: If971cc7e6d14f15c778b9b027df9fc48dac0160c
2016-01-20 14:26:46 -08:00
Sandra Kwan
390c9d2d91 AccountManager: add isCredentialsUpdateSuggested API.
Change-Id: I27e0db0345f3431b796a944740dab767b45f7871
2016-01-20 13:58:49 -08:00
Jeremy Klein
94e95746db Merge "Expose WifiAp methods as @SystemApi." 2016-01-20 19:27:14 +00:00
Jeremy Klein
b625377b1a Expose WifiAp methods as @SystemApi.
GTS tests to follow shortly.

BUG: 22406002
Change-Id: I42883fa5e35a11b4b2d734f07b7d72f2ac0ec1f8
2016-01-20 11:17:53 -08:00
Andrei Stingaceanu
69d5ebc59e Suspend apps - broadcast intent and API
Send a protected broadcast to registered receivers only
when packages get suspended.

Bug: 22776761
Change-Id: I043053ed45bdc202ead18518a0c1e39cce47947c
2016-01-20 17:52:41 +00:00
Jason Monk
8bcbb9bc87 Merge "Add LinearLayout#getGravity" 2016-01-20 15:55:44 +00:00
Jason Monk
efe916c3c7 Add LinearLayout#getGravity
Change-Id: I290790b8e84e14f2702c6fc9c679b1c435cc13a8
2016-01-20 10:55:09 -05:00
Junda Liu
3f4c8d21e2 Merge "Make getIccSimChallengeResponse a carrier API." 2016-01-20 06:33:09 +00:00
Rubin Xu
900fe2410d Merge "Add JNI bridge to the new logd security buffer." 2016-01-19 23:31:32 +00:00
Makoto Onuki
a2b274bd03 SUW shouldn't use hidden APIs.
Make getDeviceOwnerNameOnAnyUser() a system API.

Bug 26142341

Change-Id: I481b26f45c35215b9221d96b66833af47fcf5cf0
2016-01-19 13:31:13 -08:00
Jonathan Basseri
663d09ab42 Merge "Un-hide carrier config keys." 2016-01-19 17:09:50 +00:00
Martijn Coenen
6f9595382c Merge "NFC: Allow apps to specify they're done with tag." 2016-01-19 15:32:36 +00:00
Jaesung Chung
5a8b9627c7 Extend MediaScanner and MtpDatabase to support RAW image files
Bug: 25871812
Change-Id: Iee92632585dc9020238a9b562defd06d6d2a91dc
2016-01-19 09:43:35 +09:00
Martijn Coenen
3748600bad NFC: Allow apps to specify they're done with tag.
When an application is no longer interested in
communicating with a tag, but the tag is kept in
range of the device for a long amount of time, we
will burn a lot of power keeping the connection
to it alive.

Instead, allow the app to signal it's "done" with
the tag, which allows us to put the controller
in a low-power mode. This will save power in scenarios
such as an NFC tag embedded in a car dock or
wireless charging dock.

Bug: 26426491
Change-Id: I7a0149ede46e0c7610b06ed1776344b772677350
2016-01-18 14:53:28 -08:00
Michal Karpinski
a8c8851caa Merge "DPM changes to support remote bugreports" 2016-01-18 10:00:55 +00:00
Yohei Yukawa
ac3e599069 Merge "Introdude IC#deleteSurroundingTextInCodePoints()." 2016-01-18 05:34:26 +00:00
Ricardo Garcia
ed5865b172 Merge "Adding UNPROCESSED to the available audio_sources and SUPPORT_AUDIO_SOURCE_UNPROCESSED property" 2016-01-17 20:07:15 +00:00
rago
a7cc59c318 Adding UNPROCESSED to the available audio_sources and
SUPPORT_AUDIO_SOURCE_UNPROCESSED property

bug: 25564291
Change-Id: I05d48fcc1859501902aa38604a5b86fa5d468468
2016-01-15 18:33:13 -08:00
Amith Yamasani
12747879b0 User creation with an intent
New API for an app to request creating a new user with
a given user name and seed account information for the
SetupWizard to use when that user is switched into.

Also adds system APIs to read the seed account data from
UserManager.

Bug: 22776757
Change-Id: I0bc3f11ee19c15e0ee2a908c88d98b13296cc30d
2016-01-15 17:06:35 -08:00
Brad Ebinger
2e98cfd70b Merge "Refactoring and cleanup" 2016-01-16 00:24:43 +00:00
Mikhail Naganov
2a0a2e0129 Merge "Mark Context.BIND_EXTERNAL_SERVICE as SystemApi" 2016-01-15 23:44:23 +00:00
Paul Mclean
33c1c5560a Merge "Native Audio Routing and (Java) AudioRouting (interface)." 2016-01-15 23:07:39 +00:00
Paul McLean
ed36ca3d4f Native Audio Routing and (Java) AudioRouting (interface).
Adding AudioRouting (Java) interface for routing control
in AudioTrack and AudioRecord.
Deprecating current (Marshmallow) Routing APIs in
AudioTrack and AudioRecord.
Adding package-private constructors to AudioTrack and AudioRecord
to connect to native player/recorder.

Bug: 23899814
Change-Id: I7df7a687fbd56a34c1f5769ffe005eba2a059505
2016-01-15 15:59:37 -07:00