Commit Graph

82122 Commits

Author SHA1 Message Date
Benjamin Miller
8a12c12ad2 docs: Added reminder that custom CAs aren't automatically trusted by apps.
Compact reminder with CTA to read more in Security & Privacy best
practices document.

Test: make ds-docs and inspect generated HTML in the browser.
Bug: 29000858
Change-Id: If74bfd50f85f044214f6db1950351d2f2014e0ae
2018-08-29 17:43:24 +00:00
Jorim Jaggi
e387ce18d8 Merge "BootAnimation: Fix boot animation with hidden cutout" into pi-dev 2018-08-22 23:06:35 +00:00
Adrian Roos
9ee5dff83c BootAnimation: Fix boot animation with hidden cutout
We do this by storing the masking inset in a persistent property.
The boot animation then animates itself to where it would be if that
masking inset were applied, then changes the viewport.

For this to work, we also need to make sure the DisplayManagerService
has the right overlay right at the start.

Bug: 112876936
Test: Hide cutout, then reboot. Verify boot animation is smooth.
Change-Id: I3e988b2340b2e0d2be3939bdc6878704c234ccc8
2018-08-22 21:37:39 +01:00
Jorim Jaggi
2bd9a25007 DO NOT MERGE Kill most processes when display size changes
This isn't something apps generally can handle, so we kill all of
them for now.

Test: Change cutout overlay that changes display size
Test: Rotate screen
Bug: 112876936
Change-Id: Ic3b0f1b3ae1e9bd93ac8f2c6952aa093878602b8
2018-08-22 14:22:56 +02:00
Adrian Roos
c05c2d1e48 Merge "Cutout: Add developer setting to mask the display cutout" into pi-dev 2018-08-21 19:51:58 +00:00
Adrian Roos
8c28c7c2d9 Cutout: Add developer setting to mask the display cutout
Adds an option to mask the cutout by effectively shrinking the logical display
such that developers can test apps as if the device did not have a notch.

Bug: 112876936
Test: Go to Settings > Developer Options > Simulate display with cutout > "No cutout". Cutout should be hidden. Rotate screen, take screenshots, screenrecord, screen off animation should all work as expected.
Change-Id: I5cdb201734d238bf3785ab55843114e4b5b4ee41
2018-08-21 21:47:51 +02:00
TreeHugger Robot
c9443e3894 Merge "Improved AutofillManager and Activity dump() methods:" into pi-dev 2018-08-21 01:18:09 +00:00
TreeHugger Robot
d412914643 Merge "Send widget registration broadcasts before BOOT_COMPLETE" into pi-dev 2018-08-20 23:44:32 +00:00
TreeHugger Robot
e4e1b4fbec Merge changes I5610b42b,Ib7a52bd0 into pi-dev
* changes:
  ResourceManager: Disable APK Assets cache for real.
  ResourceManager: Disable APK Assets cache.
2018-08-20 23:08:45 +00:00
TreeHugger Robot
db7648f374 Merge "Log AutofillClient on CompatibilityBridge.onAccessibilityEvent()." into pi-dev 2018-08-20 20:29:21 +00:00
TreeHugger Robot
e4d35b6dc0 Merge "Log CompatibilityBridge.onAccessibilityEvent()" into pi-dev 2018-08-20 19:07:10 +00:00
Richard Uhler
a6ab55dc11 ResourceManager: Disable APK Assets cache for real.
Test: atest -v google/perf/app-startup/benchmark-app-hermetic/cold-dropcache-test
Bug: 111385832
Change-Id: I5610b42b51d3b12cc8587cae6556557362bf67d0
(cherry picked from commit 93090515b9)
2018-08-20 16:05:35 +01:00
Narayan Kamath
77e9589274 ResourceManager: Disable APK Assets cache.
The WeakReference based cache of Assets in use elsewhere in the
process remains unchanged.

Note that this change is larger than it needs to be because it is
an error to create an LruCache of size zero.

There seems to be no measurable difference as measured by the standard
app startup benchmarks.

Test: atest -v google/perf/app-startup/benchmark-app-hermetic/cold-dropcache-test
Bug: 111385832
(cherry picked from commit bc95621811)

Change-Id: Ib7a52bd03f6f13cdb76b82abc307d17227c4c1dc
2018-08-20 16:04:21 +01:00
Felipe Leme
4226033998 Improved AutofillManager and Activity dump() methods:
- Print compatibility mode info and activity token on AutofillManager.dump().
- Add --autofill option on Activity so it just dump autofill state.

Also fixed checkstyle import warnings on ActivityManagerShellCommand.

Bug: 112417431
Bug: 112584717

Test: adb shell dumpsys activity top --autofill

Change-Id: Id56b56a5d7e591d5204663a1da1322a15f8ef3aa
(cherry picked from commit b546ca7916)
2018-08-17 14:18:37 -07:00
Makoto Onuki
3729e9ce4e Default to FULL synchronous mode for sqlite DBs in system server
Test: change pin and immediately crash the kernel with
adb shell 'su root sh -c "echo c >/proc/sysrq-trigger"' and boot
Bug: 112175067

Change-Id: Ia5f43f3118e2297fbea43c805ef2f4577bf8a9bf
(cherry picked from commit 50e00c8dc4)
2018-08-17 21:09:03 +00:00
Felipe Leme
3438421295 Log AutofillClient on CompatibilityBridge.onAccessibilityEvent().
This is useful to identify cases where a browser used a trampoline activity to
launch its rendering activity.

Bug: 112584717
Bug: 112690889

Test: adb logcat AutofillManager

Change-Id: I5e58cd8c8dc67ddeed8aa0996233dca9b89cc0d3
(cherry picked from commit 7d4461d133)
2018-08-17 13:55:58 -07:00
Felipe Leme
a9aacf9bfd Log CompatibilityBridge.onAccessibilityEvent()
Altough these are super spammy, they're super valuable when debugging why
compat mode doesn't work.

Bug: 112417431
Fixes: 112584717

Test: adb logcat AutofillManager

Change-Id: I1574b51b1c6caf783038b82ff207986b726b2e8b
(cherry picked from commit 5d35d3d2d6)
2018-08-17 13:54:38 -07:00
Laura Davis
43e75d98d8 Docs: Inserted links to relevant guide pages.
This is the proof of concept for adding relevant
links in API pages to narrative content.
The design doc is hosted at:
https://docs.google.com/document/d/1Y6bFua27Gs7ONZ27gz0nHz3Djv0WND_V_rX-XvbeB3U/edit?usp=sharing

Test: make ds-docs

Bug: 112478848
Change-Id: Ic3842629c802fe89582d4d7b4a153e54d4ba1713
2018-08-16 16:57:18 -07:00
Shuzhen Wang
de23d28d07 Camera: Documentation update to remove physicalIds
Public API doesn't see android.logicalcam.physicalIds. Remove it
from public doc.

Bug: 112655222
Test: make offline-sdk-docs
Change-Id: Idf6958fb7c117912e33ece4fbaed04cb8e5e14c0
2018-08-16 22:59:54 +00:00
Kevin Hufnagle
aba234f4d9 Merge "docs: Added units for AccessibilityServiceInfo#notificationTimeout." into pi-dev 2018-08-15 19:47:34 +00:00
Mihai Popa
f052c26a7d Merge "Fix crash during cursor moving on BiDi text" into pi-dev 2018-08-15 19:16:02 +00:00
Seigo Nonaka
a1076fdaa5 Fix crash during cursor moving on BiDi text
The crash was introduced by Ib66ef392c19c937718e7101f6d48fac3abe51ad0
The root cause of the crashing is requesting out-of-line access for the
horizontal width. This invalid access is silently ignored by
TextLine#measure() method but new implementation end up with out of
bounds access.

To makes behavior as old implementation, calling getHorizontal instead
of accessing measured result array.

Bug: 78464361, 111580019
Test: Manually done
Change-Id: I5c5778718f6b397adbb1e4f2cf95e9f635f6e5c8
(cherry picked from commit 960647d582)
Merged-In: I5c5778718f6b397adbb1e4f2cf95e9f635f6e5c8
2018-08-15 19:11:50 +00:00
Kevin Hufnagle
65f4293f34 docs: Added units for AccessibilityServiceInfo#notificationTimeout.
This field uses "milliseconds" as the time unit.

Test: make ds-docs -j32

Bug: 36949594
Change-Id: Id2e55ed7c96364913bb7ad028798fad5f976d3ca
2018-08-14 18:08:16 -07:00
Christopher Tate
2ec961dad3 Send widget registration broadcasts before BOOT_COMPLETE
Widget presence in the home app is important for usability, but it
depends on a broadcast-based handshake at boot time.  This handshake
occurring after the BOOT_COMPLETED broadcast was initiated means
that in practice widgets may not become available for literal
minutes following unlock, as it can take this long for the
boot-complete broadcast to clear and let the systen proceed with
dispatch of the widget handshakes.

We address this by hoisting the widget setup broadcast to occur
just *before* the boot-completed broadcast, rather than as part
of general listener reaction to the global "this user has been
unlocked" notification.

Bug: 76154638
Test: manual (note broadcast ordering following boot)
Change-Id: I7c1a9f7a84fee71f71d2dcd52362a29c2436b01d
Merged-In: Ibd97268f995ec673f21d8f5df257041cf61a058d
2018-08-14 17:03:41 -07:00
Joshua Baxter
9ef8b6521c Merge "docs: fixed typo" into pi-dev 2018-08-14 20:02:53 +00:00
TreeHugger Robot
b76b6c5a43 Merge "Update WebView#clearClientCertPreferences docs." into pi-dev 2018-08-14 18:22:49 +00:00
Laura Davis
37a29795e4 Merge "Docs: Removed narrative content and edited links." into pi-dev 2018-08-14 17:59:30 +00:00
TreeHugger Robot
0d75830053 Merge "Update WebBackForwardList javadoc." into pi-dev 2018-08-14 14:09:20 +00:00
TreeHugger Robot
36362afdc1 Merge "Clarify WebView's lack of plugin support." into pi-dev 2018-08-14 13:43:46 +00:00
Torne (Richard Coles)
7def66c676 Clarify WebView's lack of plugin support.
Update docs to clarify that plugins are in fact not supported from K
onward and that enabling them doesn't do anything.

Bug: 112579915
Test: m offline-sdk-docs
Change-Id: I8678ea716be0adc4cd3a6fae1b4776e312ec29e0
(cherry picked from commit 1676c95ddc)
2018-08-14 13:43:29 +00:00
TreeHugger Robot
d82da978c1 Merge "docs: fixed typo" into pi-dev 2018-08-13 23:12:59 +00:00
Joshua Baxter
ce01dba2b7 Merge "docs: fixed typo" into pi-dev 2018-08-13 22:46:02 +00:00
Joshua Baxter
3621bf192c Merge "docs: fixed typo" into pi-dev 2018-08-13 22:43:17 +00:00
Torne (Richard Coles)
5326772106 Update WebView#clearClientCertPreferences docs.
Remove the reference to the specific ACTION_STORAGE_CHANGED intent as
other intents are used instead on newer OS versions; just note that it's
cleared automatically when the keychain is updated and don't specify the
exact mechanism.

Change-Id: Ic677832a1384e0eb2498d06e7aa34507fd2e7278
Fixes: 30371615
Test: make offline-sdk-docs
(cherry picked from commit 01eb128213)
2018-08-13 21:30:34 +00:00
Torne (Richard Coles)
e4b86644bb Update WebBackForwardList javadoc.
Update javadoc for WebBackForwardList and WebHistoryItem. Remove
references to history items being updated as this no longer occurs, and
clarify in clone() that there's no need to acutally do this any more.

Also remove a bunch of implementation notes about
atomicity/synchronisation that are being rendered attached to the return
value and likely aren't even true any more, let alone relevant to
developers.

Bug: 74593032
Test: make offline-sdk-docs
Change-Id: I4ce33133d2ff18e7376d768c7a2e076ecd2a8b95
(cherry picked from commit 8949046528)
2018-08-13 21:30:23 +00:00
Jeff Sharkey
3eef28d461 Merge changes from topic "back111085900" into pi-dev
* changes:
  DO NOT MERGE. Extend SQLiteQueryBuilder for update and delete.
  DO NOT MERGE. Execute "strict" queries with extra parentheses.
2018-08-10 17:26:54 +00:00
Michal Karpinski
dfba41947b Merge "DO NOT MERGE Log various information about non-foreground activity starts" into pi-dev 2018-08-10 08:32:57 +00:00
Laura Davis
b93f8dd3cc Docs: Removed narrative content and edited links.
Removed unused imports android.app.Activity and
android.os.UserHandle because of checkstyle fail.

Test: make ds-docs

Bug: 111760788
Change-Id: I2852fea6c4b55a3422712c113d081abd40d02dfd
2018-08-10 01:04:13 +00:00
Michal Karpinski
3eab951217 DO NOT MERGE Log various information about non-foreground activity starts
Logging activity starts to TRON, but only if the caller app
doesn't have any foreground activity present.

Example event:
08-03 15:21:30.813  1231  3220 I sysui_multi_action: [757,1513,758,4,805,1533306090812,1514,10147,1515,com.google.android.talk,1516,1018,1517,0,1518,1000,1519,1000,1520,0,1521,10147,1522,com.google.android.talk,1523,1018,1524,0,1525,pendingintent:u0a12:com.google.android.talk/com.google.android.apps.hangouts.phone.ConversationActivity,1526,com.google.android.talk/com.google.android.apps.hangouts.phone.BabelHomeActivity,1527,1,1528,com.google.android.apps.hangouts.phone.conversationlist,1540,1,1541,com.google.android.apps.hangouts.phone.BabelHomeActivity,1542,3146240,1543,{com.google.android.talk/com.google.android.apps.hangouts.phone.BabelHomeActivity},1544,com.google.android.talk/com.google.android.apps.hangouts.phone.BabelHomeActivity,1545,com.google.android.talk,1546,1,1547,0,1551,0,1552,0]

(cherry-picked from 201bc0c14e)

Bug: b/111866309
Context: go/activity-starts-logging-tron
Test: 1) enable logging with: adb shell settings put global activity_starts_logging_enabled 1
      2) open some activities and observe: adb logcat -b events | grep "sysui_multi_action: \[757,1513"
Test: atest FrameworksServicesTests:ActivityStarterTests

Change-Id: Ie7dee51c574e544d12e83d279afda46b336f2013
2018-08-09 15:18:07 +01:00
Paul Miller
f2043b4af5 Clarify WebViewClient.shouldOverrideUrlLoading docs
Call out more explicitly the antipattern of calling loadUrl with the
same URL and returning true, and repeat this on the deprecated version.
Simplify the wording about returning true v.s. false. Switch to the
"note" style used elsewhere on the page.

BUG:111843379
Change-Id: I36c31a8e0f4754c314b8a4d72cc497c9c3a3e242
Test: make docs
(cherry picked from commit 3819a6467b)
2018-08-08 21:56:31 +00:00
Andrew Solovay
a861ff7a64 docs: Adding links to "about version" pages
For the various Build.VERSION_CODES.<version_name> constants, adding
a link to the appropriate "about this release" page in
/about/versions/ , if there is one.

Staged doc to:
http://go/dac-stage/reference/android/os/Build.VERSION_CODES

Bug: 80546406
Test: make ds-docs
Change-Id: If363445c938d325172da6beeed25e821121c5539
2018-08-06 16:13:10 -07:00
Jeff Sharkey
506994268b DO NOT MERGE. Extend SQLiteQueryBuilder for update and delete.
Developers often accept selection clauses from untrusted code, and
SQLiteQueryBuilder already supports a "strict" mode to help catch
SQL injection attacks.  This change extends the builder to support
update() and delete() calls, so that we can help secure those
selection clauses too.

Bug: 111085900
Test: atest packages/providers/DownloadProvider/tests/
Test: atest cts/tests/app/src/android/app/cts/DownloadManagerTest.java
Test: atest cts/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java
Change-Id: Ib4fc8400f184755ee7e971ab5f2095186341730c
Merged-In: Ib4fc8400f184755ee7e971ab5f2095186341730c
2018-08-03 13:43:44 -06:00
Jeff Sharkey
57b04a8680 DO NOT MERGE. Execute "strict" queries with extra parentheses.
SQLiteQueryBuilder has a setStrict() mode which can be used to
detect SQL attacks from untrusted sources, which it does by running
each query twice: once with an extra set of parentheses, and if that
succeeds, it runs the original query verbatim.

This sadly doesn't catch inputs of the type "1=1) OR (1=1", which
creates valid statements for both tests above, but the final executed
query ends up leaking data due to SQLite operator precedence.

Instead, we need to continue compiling both variants, but we need
to execute the query with the additional parentheses to ensure
data won't be leaked.

Test: atest cts/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java
Bug: 111085900
Change-Id: I6e8746fa48f9de13adae37d2990de11c9c585381
Merged-In: I6e8746fa48f9de13adae37d2990de11c9c585381
2018-08-03 13:43:40 -06:00
Eino-Ville Talvala
08bd163e2d Camera: Documentation updates for calibration and distortion correction
- Add more notes on coordinate axes
- Add more text on metadata when distortion correction is active
- Note that poseTranslation needs to be negated in many use cases
- Fix coordinate system references for OIS reporting, add more information
- Note that pixel centers at half-integers for the camera API metadata
  such as lens intrinsics

Bug: 79371566
Bug: 74434422
Bug: 109742048
Bug: 109834325
Bug: 109817371
Bug: 112107924
Test: Manual reading of added text
Change-Id: I450e80b79ef66ce8d82a4dee835db6abd1e598a3
2018-08-02 14:43:44 -07:00
Laura Davis
e27c3511d8 Docs: fixed typo and made minor edits
Test: make ds-docs

Bug: 111734031
Bug: 111734470
Change-Id: Ic120368fef0c0673ce954cdf0927a4705b3edcd2
2018-07-30 14:56:32 -07:00
TreeHugger Robot
11768fd80f Merge "Don't flash system bars while showing an immersive app on lockscreen" into pi-dev 2018-07-27 23:03:19 +00:00
kopriva
5ad001eb4f docs: added Android P behavior change note to untagSocket reference
staged here:
https://android-dot-devsite.googleplex.com/reference/android/net/TrafficStats#untagSocket(java.net.Socket)

Test: make ds-docs

Exempt-From-Owner-Approval: Docs-only change

Bug: 110484513
Change-Id: I24575e6f4451a019b60c5bf60e17e14a928c6cc3
2018-07-26 20:29:39 +00:00
Tiger Huang
926f7d815c Don't flash system bars while showing an immersive app on lockscreen
Before applying this patch, when a show-when-locked immersive app is
showing, the system bars would quickly show and hide, which are
redundant to the user.

The root cause is that, for nav bar, we have a policy to show nav bar
if the width and height of status bar are MATCH_PARENT and status bar
has no PRIVATE_FLAG_KEYGUARD. When keyguard is becoming status bar,
its keyguard flag would be removed first, and then the height would
be changed to the bar height. So the nav bar would be shown between
these events. For status bar, we force showing it when it is expanded
by checking its width and height are MATCH_PARENT or not.

To fix the issue, this change introduces a new private flag which
indicates that the status bar window is now in an explicit expanded
state. We check this flag instead of checking the width and height of
status bar.

This change also fix a bug that: when AOD is enabled, if the
foreground app has FLAG_SHOW_WHEN_LOCKED, FLAG_TURN_SCREEN_ON, and
FLAG_FULLSCREEN, clicking on the power key would make it show the app
again instead of AOD. (not 100%, but chances)

Bug: 80147982
Test: 1. go/wm-smoke
      2. Launch a show-when-locked turn-screen-on immersive app on
         AOD, and see if any system bar flashes.
      3. Launch a show-when-locked turn-screen-on immersive app on
         lockscreen, and see if any system bar flashes.
      4. a. Enable AOD in Settings.
         b. Open a show-when-locked turn-screen-on immersive app.
         c. Click on power key, and see if AOD shows.
      5. Launch an immersive app and drag down the status bar, see
         if nav bar keeps there as long as status bar is expanded.

Change-Id: Ie885d504eb73ae8a86736b2c3ed4fb03eb9f739e
Merged-In: Ie885d504eb73ae8a86736b2c3ed4fb03eb9f739e
(cherry picked from commit 3404601e07)
2018-07-26 05:31:16 +00:00
Julia Reynolds
4bcf9b8ac7 Improve isolation of DND providers
Specifically, a change in state from one DND provider
shouldn't result in another's state being cleared if they
aren't yet bound (or are intentionally unbound).

Fixes: 111251709
Test: cts, cts-verifier

Change-Id: I42a0ba935577e708d9df02e2a6d3620e42395a51
(cherry picked from commit 8f05600189)
2018-07-25 17:31:11 +00:00
TreeHugger Robot
3d3c6531e1 Merge "Camera: hardware level related doc update" into pi-dev 2018-07-19 16:12:17 +00:00