This will host the moved framework classes for role.
The class RoleFrameworkPlaceholder is added because the build won't
pass if there isn't any java source.
Bug: 158736025
Test: build
Change-Id: Icabab2cc956d6c7c07a6217256d23a8402960307
Add disting of the following for the sdk:
- android-non-updatable.txt
- android-non-updatable-removed.txt
- removed.txt
Bug: 158544979
Test: m sdk dist && inspect out/dist/apistubs
Change-Id: I5f628f4fcfc13f67105ee3b2760274e900fc1e34
Stop tracking the ART APIs in the non-updatable current.txt, and
instead add in the txt/srcjar/jar files produced by the art module's
java_sdk_library.
Bug: 173606718
Test: manual last_released check of merged api txt (b/174847574 to
automate)
Change-Id: I446a381f2b364a114ce391b99a13742d6769f14d
This removes the i18n source from the non-updatable stubs which removes
them from the frameworks/base/core/api files too. The API is still
protected by both the build and Gerrit review as the API is specified
in the external/icu/android_icu4j/api/public/ directory.
The i18n stubs source is used instead of the implementation source for
generating the JavaDoc. That revealed a minor issue with metalava which
is fixed in this topic.
The i18n stubs library was statically included alongside the conscrypt
stubs library so it will still appear in the monolothic android.jar.
Bug: 174344410
Test: m offline-sdk-docs
- check that i18n classes are present
m android_stubs_current android_system_stubs_current android_test_stubs_current
- check that i18n classes are present in each jar
m droid
Change-Id: I744c8bac54a8a5518ca0eca2a7700abbfa0997f4
Bug: 174932174
Test: I solemnly swear I tested this conflict resolution.
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Change-Id: I9262a08ffc1ccede8e519d0eed90ed2bfcf0232c
As general background, OWNERS files expedite code reviews by helping
code authors quickly find relevant reviewers, and they also ensure
that stakeholders are involved in code changes in their areas.
Some teams under frameworks/base/ have been using OWNERS files
successfully for many years, and we're ready to expand them to cover
more areas. Here's the historical coverage statistics for the last
two years of changes before these new OWNERS changes land:
-- 56% of changes are fully covered by OWNERS
-- 17% of changes are partially covered by OWNERS
-- 25% of changes have no OWNERS coverage
Working closely with team leads, we've now identified clear OWNERS on
a per-package basis, and we're using "include" directives whenever
possible to to simplify future maintenance. With this extensive
effort, we've now improved our coverage as follows:
-- 98% of changes are fully covered by OWNERS
-- 1% of changes are partially covered by OWNERS
-- 1% of changes have no OWNERS coverage
This specific change is automatically generated by a script that
identifies relevant "include" directives.
Bug: 174932174
Test: manual
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Merged-In: I3480ddf2fe7ba3dfb922b459d4da01fa17a2c813
Change-Id: I3480ddf2fe7ba3dfb922b459d4da01fa17a2c813
Nothing depends on these anymore. The same data is available through
the build artifact framework-base-api-current.txt.
Bug: 171029603
Test: m checkbuild
Change-Id: I13d9373f7174e2ff2bc54122a1fcfae0b7f7293c
Merged-In: I13d9373f7174e2ff2bc54122a1fcfae0b7f7293c
(cherry picked from commit b5ec8a9a10)
Nothing depends on these anymore. The same data is available through
the build artifact framework-base-api-current.txt.
Bug: 171029603
Test: m checkbuild
Change-Id: I13d9373f7174e2ff2bc54122a1fcfae0b7f7293c
This patch adds a shim around the Keystore 2.0 AIDL spec. The new shim
is modularized like the AIDL spec into the base Keystore module
Keystore2, the security level specific interface KeystoreSecurityLevel,
and the operation specific interface KeystoreOperation.
Other system maintenance specific interfaces have yet to be added.
Bug: 159476414
Bug: 171305684
Test: None
Change-Id: I070f73739e4b37ce10568939ac666e40b14a52a8
Nothing depends on these anymore. The same data is available through
the build artifact framework-base-api-system-current.txt.
Bug: 171029603
Test: m checkbuild
Change-Id: I8d5f0a132aa307d88fbc2bd7521cdd4bdd8c6cee
Merged-In: I8d5f0a132aa307d88fbc2bd7521cdd4bdd8c6cee
(cherry picked from commit d5cba3455f)
Create a new API to set carrier merged network suggestion
Bug: 172867186
Test: atest android.net.wifi
Change-Id: I5ddbc8b15e361e44c508e40dac10211cbd39ab10
Previously onReceiveContent() would only invoke the app-configured
callback if the MIME type of the content matched one of the declared
MIME types for the callback. This change updates onReceiveContent()
to always invoke the listener if one is set (regardless of the MIME
type of the content). To delegate processing to the platform, the
app's listener can return some or all of the passed-in content. To
make this easy for apps to implement, the Payload class and its
Builder now provide some convenience methods to conditionally
partition the content.
Reasons for this change:
* Checking the MIME types could be an expensive operation. On SDKs prior
to S, ClipData does not keep track of the MIME types of individual
items, so for a ClipData that contains multiple items, checking the MIME
types requires making at least one RPC call per item.
* Allowing the listener to delegate processing to the platform via its
return value enables us to limit the API surface (we don't need to
expose TextViewOnReceiveContentListener as a public API, nor equivalent
classes for other types of views such as WebView).
* An app that wants to customize the platform behavior for coercing
content to text would previously need to declare "*/*" as the MIME type
for the callback (in order to be invoked for all content). But this
would make it impossible for features to know whether the app would
actually accept a particular type of content or just coerce it to text
(e.g. should the soft keyboard show GIF suggestions when the declared
MIME type is "*/*"). With the new logic the app's listener is always
invoked and can decide which content to process vs delegate to the
platform vs reject completely.
Bug: 170191676
Bug: 152068298
Test: atest CtsViewTestCases:ViewOnReceiveContentTest
Test: atest CtsWidgetTestCases:TextViewOnReceiveContentTest
Test: atest FrameworksCoreTests:TextViewOnReceiveContentTest
Change-Id: Ie48b6fe0b2ae4b014c371b5dc40248221947c6bf
Nothing depends on these anymore. The same data is available through
the build artifact framework-base-api-system-current.txt.
Bug: 171029603
Test: m checkbuild
Change-Id: I8d5f0a132aa307d88fbc2bd7521cdd4bdd8c6cee
Implement setRequiredPasswordComplexity and
getRequiredPasswordComplexity, which enforce password requiremets
according to one of four, platform-defined complexity levels.
Start adjusting the platform to take the complexity into account:
* isActivePasswordSufficient would return false if complexity is set
but the current password does not meet the complexity criteria.
* resetPasswordWithToken would not allow resetting the password to a
value that does not meet the complexity criteria.
Bug: 165573442
Test: atest FrameworksServicesTests:DevicePolicyManagerTest
Test: atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testResetPasswordWithToken
Change-Id: I4e66af0b03c521de70bba3192751164736d01c62
Provide API to retrive bandwidth per primary carrier
and secondary carrier
Bug: 162373679
Test: New CTS test, unit test, build
Merged-In: I3e8152d22fb9602c7d2ffdee681ac5d69c5dd3fd
Change-Id: I3e8152d22fb9602c7d2ffdee681ac5d69c5dd3fd
It retruns whether the caller has InCallService access for the companion
apps. A companion app is an app associated with a physical wearable
device via the {@link android.companion.CompanionDeviceManager} API.
Test: cts
Bug: 169595473
Change-Id: Id659bfae8556e965d3c31613848bde808f28a858
Merged-In: Id659bfae8556e965d3c31613848bde808f28a858
(cherry picked from commit 4d0652699a)
Add extended high definition integer formats to support direct
audio data delivery to the HAL.
Test: atest AudioRecordTest
Test: atest AudioTrackTest
Test: Clarity AudioManager
Bug: 152481314
Bug: 157671580
Change-Id: I92a099e98dd20ef900765928cbacea5e8a940c3c