Commit Graph

144 Commits

Author SHA1 Message Date
Nandana Dutt
b2da22a0de Improvements to Bugreporting API.
* Add cancelBugreport method.
* Remove unused arguments to onFinished listener call.
* Publish the system service now that sepolicy for it
  is submitted.
* Use the new bugreportd service.

Test: boots
BUG:111441001
Change-Id: I12d72e0e1f4ca72d285fd02a3fc1a44f5c179885
2019-01-23 10:21:45 +00:00
Nandana Dutt
c8c77bc043 BugreportAPI : Connect listener to binder callbacks
BUG: 111441001
Test: builds
Test: interactive bugreport still works
Change-Id: Ie3f2328f558bb2de1dec2908c6ab13f5a17df115
2019-01-15 12:51:42 +00:00
Nandana Dutt
432f8c7b86 Add the new dumpstate listener methods to implementations
Add dummy implementations for status, error and finished callbacks.
Next step: wire these up end-to-end; change Shell's listener to be
BugreportManager.BugreportListener, and make it communicate with the
native service explicitly through the new system api.

BUG: 111441001
Test: Verified progress in interactive bugreport still works
Change-Id: Iad0bb7b23b04f6bc7e3b31e5071df42409c78684
2019-01-14 17:55:27 +00:00
Nandana Dutt
7eaa2cbf51 Merge "Disable the buginfo dialog on AndroidTV" 2018-10-03 15:39:22 +00:00
Nandana Dutt
702587e787 Merge "Warn about sensitive bugreport contents." 2018-10-03 09:51:59 +00:00
Felipe Leme
ed5e51dbb2 Synchronize access to sNotificationBundle.
Otherwise Shell can crash due to ConcurrentModificationException

Test: atest BugreportReceiverTest
Test: manual verification

Fixes:116280360

Change-Id: I138acd43b313d2a7a9d945fb44a9d63e1ad798eb
Merged-In: I138acd43b313d2a7a9d945fb44a9d63e1ad798eb
(cherry picked from commit ee72fa19a9)
2018-10-02 11:39:42 +01:00
Jeff Sharkey
e70a61d56d Warn about sensitive bugreport contents.
We show this message when clicking a notification, but we also want
to alert users when they're picking files to attach/share.

Bug: 114711671
Test: manual
Change-Id: I23e249c93d6fa9cf960ef2a61d3fe769eb56ddf5
Merged-In: I23e249c93d6fa9cf960ef2a61d3fe769eb56ddf5
(cherry picked from commit 59137825eb)
2018-10-02 11:34:50 +01:00
Kristian Monsen
86f69db5c0 Disable the buginfo dialog on AndroidTV
Bug: 113033835
Test: Tested manually on Atom
Change-Id: If65997e28db7c0100018145f9313549494e41a2a
Merged-In: If65997e28db7c0100018145f9313549494e41a2a
(cherry picked from commit cb68d29f03f14b188ccc02b877161173b631685d)
(cherry picked from commit 01badb7874)
2018-10-02 11:31:27 +01:00
KOUSHIK PANUGANTI
ec8d258c60 Migrated various apps under frameworks/base/packages/Shell to androidx
Bug: 76692459
Test: make Shell
Change-Id: If11159cac1bd5aa61c46a346647b97a661abbf11
Merged-In: If11159cac1bd5aa61c46a346647b97a661abbf11
(cherry picked from commit e92135a6e9)
(cherry picked from commit 474df059db)
(cherry picked from commit e0efaddbeb)
2018-08-28 14:20:24 -07:00
Jeff Sharkey
ecff5dc68b Bugreport SAF provider isn't "advanced."
UX churn over the years has turned FLAG_ADVANCED into "show internal
storage" which means it's super confusing.

When the Bugreport SAF provider is enabled, just show it.

Test: sure
Bug: 32540478
Change-Id: Id11278c27da8f5f1d1346b208d85b5db59a9e174
2018-02-22 09:41:17 -07:00
Lucas Dupin
c80c67e7bc Allow custom keyguard "prompt reason"
Adds the possibility of presenting a custom message on
the keyboard if you're trying to dismiss the keyguard.

This is particularly useful when you're showing the
bouncer because custom authentication (SmarLock)
failed.

Test: launch FLAG_SHOW_WHEN_LOCKED activity and
      call KeyguardManager#requestDismissKeyguard
Fixes: 63940122
Change-Id: I0d88c0e59521887efa56d74874062b2b14970e4e
2018-01-11 13:15:31 -08:00
Vishnu Nair
497350d61e Apply IDumpstateListener changes
Bug: 70154685
Test: Take bugreport on phone and verify debug output
Change-Id: Icc5b532689c050837f6b4bde93f4655abec4aa0a
2018-01-05 10:28:11 -08:00
chaviw
a69e0a7d7c Update screenshot requests to render proper crop and rotation.
The previous screenshot requests in SystemUI would generate a bitmap
and then adjust crop and rotation afterwards. Bitmaps from screenshots
are now hw Bitmaps so they can't be updated in software. Instead request
the proper crop and rotation from the native code to generate a Bitmap
with the correct configurations.

Change-Id: I4591c468b055c784460e5ddf2f9163ffa943c2ee
Fixes: 69898957
Test: Manual screenshots work and bugreport screenshots work in landscape.
2017-11-30 13:02:14 -08:00
Felipe Leme
85ac627e78 Don't tag bugreport notifications as System.
Otherwise, they'll skip DND settings.

Test: mmm -j32 frameworks/base/packages/Shell && adb install -r -g ${OUT}/data/app/ShellTests/ShellTests.apk && adb shell am instrument -e class com.android.shell.BugreportReceiverTest$1 -w com.android.shell.tests/android.support.test.runner.AndroidJUnitRunner

Bug: 63509844

Change-Id: I7d802b4c8d115c989979a9edaff2f83fc19a4eae
2017-07-14 11:32:46 -07:00
Jeff Sharkey
5ab0243330 Only require that system UIDs tag their sockets.
Apps with a normal UID are typically isolated enough to not require
socket tagging; we're mostly interested in tracking down internal
UIDs that have lots of code sharing the same UID.

Also fix up everyone doing manual string checks of Build.TYPE, since
we now have first-class fields for those.

Bug: 38126076
Test: builds, boots
Change-Id: I3a40348196bd8459289f2b9355d9783a07f1e7dd
2017-06-27 11:11:06 -06:00
TreeHugger Robot
0ecc0ff5e0 Merge "Enable wide color gamut rendering" 2017-06-02 20:07:56 +00:00
Romain Guy
26a2b97dbe Enable wide color gamut rendering
When wide color gamut rendering is requested, hwui will now
use an rgba16f scRGB-nl surface for rendering. This change
also fixes the way screenshots are handled in the platform
to behave properly with wide gamut rendering.

This change does not affect hardware layers. They also
need to use rgba16f scRGB-nl; this will be addressed in
another CL.

Bug: 29940137
Test: CtsUiRenderingTestCases, CtsGraphicsTestCases

Change-Id: I68fd96c451652136c566ec48fb0e97c2a7a257c5
2017-06-02 11:02:13 -07:00
Amit Pawar
44ff1b7e78 Merge "Fix #62169466 bug report sharing options empty" into oc-dev am: 4d473c65cb
am: e775158c6b

Change-Id: Ice0e3330502330dde934d7e7544e466fcffcacca
2017-05-30 20:39:37 +00:00
Amith Yamasani
1d6e1759d2 Fix #62169466 bug report sharing options empty
Was caused by a new requirement to not offer to show
non-exported intent handlers as options. For first
time warning dialog, don't show a chooser activity.

Change-Id: Ibada9a7a14b77ec0670bf35ba0944f369d42bf69
Fixes: 62169466
Test: manual
Test: mmm -j32 frameworks/base/packages/Shell && adb install -r -g ${OUT}/data/app/ShellTests/ShellTests.apk && adb shell am instrument -e class com.android.shell.BugreportReceiverTest$1 -w com.android.shell.tests/android.support.test.runner.AndroidJUnitRunner
2017-05-30 20:04:32 +00:00
Makoto Onuki
72f378d0c1 Merge "Working around bugreport crash issues" into oc-dev am: 5176a4cda3
am: 44cb1486f3

Change-Id: I70495f11952e9d234d74fa3fd7149dec70fb7350
2017-05-25 18:27:52 +00:00
Makoto Onuki
22291dde0a Working around bugreport crash issues
Overall we need more synchronization, but I'm taking a safe approach
here for oc-dev for now.

Bug: 62043115
Test: adb shell am instrument -w com.android.shell.tests
Change-Id: I0e22c5160cb96ce51dc1775237f01b7bf5c97a17
2017-05-25 00:24:58 +00:00
Ben Lin
14ec967020 Merge "Make BugreportStorageProvider subclass FileSystemProvider." 2017-05-24 00:12:15 +00:00
Bryce Lee
6483b86a92 Add new task flag when starting chooser activity in bug report.
This flag is required whenever starting an activity from a
non-activity context.

Change-Id: Ia77e6e7801d712a20d407bc2ac92e543bc287010
Fixes: 62016780
Test: Click on generated bug report notification
2017-05-23 09:02:09 -07:00
Ben Lin
d8235e2647 Make BugreportStorageProvider subclass FileSystemProvider.
This allows it to gain all the benefits of FSP, ie. listening in on
File-system level changes without any explicitly notification Uri
passing back and forth.

This also reverts commit 6c9ff513c6d7d3de7ab8920d88111c2b1dc1bb1f.

Test: Manual test.
Bug: 38183534
Change-Id: I30a1d8489ec8732bdb80611bd8fa7099763de2a3
2017-05-22 17:15:51 -07:00
Makoto Onuki
c6cf2b8072 Only show progress log every 10%
Bug: 37501913
Test: manual
Change-Id: Ib7d14da0af33d39aa29b0b58c63c51e1059e0ada
2017-04-21 12:01:03 -07:00
Naveen Kalla
ca3d5434e8 Add API to request Bug Report with a certain title and description
ActivityManagerService will send the details to dumpstate and
BugreportProgressService will get the details from dumpstate and use
that for the notification.

Bug: 33561517
Test: Modify TelephonyMonitor to use this API and ensure that the
      notification uses that the title and description sent as arguments
      to the API. File a bug using betterBug and ensure that the
      information gets populated automatically.

Change-Id: I455f1df2278e5d569dd19c74245a0704dcf5a321
2017-03-23 12:06:04 +00:00
Dmitri Plotnikov
ce42134828 Enabling bugreport notifications on TV
Bug: 36175844
Test: by generating a bugreport (long-press DPAD_CENTER + BACK)
Test: verified that BugreportProgressServiceTest still passes
Change-Id: If5bf53512c60a359838aa76dc61b90d4e67a45df
2017-03-14 08:19:13 -07:00
Jorim Jaggi
f631ef769a Fix sharing bugreports from lockscreen
When launching ChooserActivity from lockscreen, we will start it
in stopped state because lockscreen is still showing, meaning that
the activity goes through start -> resume -> pause -> stop
immediately after it was launched, and will be later resumed once
Keyguard actually goes away.

However, ResolverActivity finished itself in onStop. We add a
private extra to change this behavior for sharing bugreports.

Test: Take bugreport, double tap on it on lockscreen
Test: com.android.shell.BugreportReceiverTest$1
Bug: 33009364
Change-Id: I973b2c71587950499b7c88b16af9cf1387795e17
2017-02-24 17:37:08 +00:00
Felipe Leme
92aaaa21ee Moved bugreport intents to the com.android.internal namespace.
Change-Id: I5ad53668b9393188cee4d8b0382f9c303ff95777
Fixes: 35275802
Test: manual verification
2017-02-15 16:08:53 -08:00
TreeHugger Robot
ccb258d001 Merge "Added more logging on BugreportProgressService." 2017-02-14 01:01:31 +00:00
Felipe Leme
ec60e5f40c Added more logging on BugreportProgressService.
BUG: 35010191
BUG: 35077822

Test: manual verification
Test: BugreportReceiverTest passes
Change-Id: Iaa37f633c6415127a3efa07c166f5a771a13ff5a
2017-02-10 17:41:18 -08:00
Felipe Leme
17d9e9c36d Dismiss keyguard before displaying bugrepot details dialog.
Fixes: 27494228
Test: manual verification
Test: BugreportReceiverTest passes

Change-Id: I7755fc2d3d4f1f9b55301c65f7a58c9374e93664
2017-02-10 16:20:02 -08:00
Makoto Onuki
ff329c4329 Bugreport sharing is now work profile aware
Now we look at work profile too, if available, when looking for a preferred
email address.

TODO: The chooser activity should default to work profile too, but it seems
to require a lot more work, so not done yet.

Test: manual tests
Test: adb shell am instrument -w -e class com.android.shell.BugreportProgressServiceTest com.android.shell.tests

Bug 30865666

Change-Id: I9b4776d53455a23bfdc4960da25e98bd1dc1b2a1
2017-01-05 14:14:51 -08:00
Felipe Leme
326336d14c Fixed obsolete comment.
Bug:32906084
Test: not needed
Change-Id: I0c79e4ffb66405a30d3c83d2e7654cbef413f6e1
2016-11-15 11:24:42 -08:00
Felipe Leme
fa26a0ed08 Refactored Shell to use IDumpstateListener.
BugreportProgressService used to poll system properties to get the
progress of the underlying dumpstate process, but now dumpstate provides
a IDumpstateListener and IDumpstateToken binder objects for the same
purpose.

Test: BugreportReceiverTest passes
Test: manual verification

BUG: 31636879

Change-Id: I81d551781a511cb1cc218a27452875b0bb267f7a
2016-11-11 15:50:21 -08:00
Tamas Berghammer
383db5ebcc Update package names to work with the proto3 compiler
Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
2016-11-08 14:06:09 +00:00
Tomasz Mikolajewski
219fa882d1 Remove support for archives from External and Bugreport providers.
Change-Id: Ia281fe05a0a6a5dd6ff1b66d7197312cf4391793
Test: Compiles.
Bug: 31783726
2016-09-28 11:32:59 +09:00
Felipe Leme
1a83dede85 Use a system property to call different bugreport types.
Currently, we define 4 hardcoded init services to launch dumpstate with
different command-line options (since dumpstate must be launched by
root):

- bugreport
- bugreportplus
- bugreportwear
- bugreportremote

This approach does not scale well; a better option is to have just one
service, and let the framework pass the extra arguments through a system
property.

BUG: 31649719

Test: manual
Change-Id: I1d627a73bfbdd9930c605fa4468c15282a23bb65
2016-09-21 11:50:44 -07:00
Ben Lin
663e0e97d5 Push delete notification when Bug reports are deleted. am: 86805aa3af am: 64146c5d24
am: b01be62d58

Change-Id: I8e1b6dc42e44307feef1ba912a3465c2d25594e1
2016-08-31 04:37:16 +00:00
Ben Lin
86805aa3af Push delete notification when Bug reports are deleted.
Bug: 28768706
Change-Id: I6d3e91fe7d12be44918f97cef12c99d936401270
2016-08-29 14:08:32 -07:00
Felipe Leme
034bcf425a Cancel dialog before stopping service.
Fixes: 30746086

Change-Id: Iea8a197a2785259dd80aa8130d79ded484562826
2016-08-08 18:07:44 -07:00
TreeHugger Robot
5f48b026f0 Merge "Enable name text field when re-using the details dialog." 2016-08-04 02:15:53 +00:00
Felipe Leme
da1fbdd6f2 Enable name text field when re-using the details dialog.
Change-Id: I10671fc00ea918da901f36f122641e646057888c
Fixes: 30642226
2016-08-03 17:45:43 -07:00
TreeHugger Robot
1b5eb1e3cd Merge "Fixed BugreportReceiverTest failures:" 2016-08-04 00:31:27 +00:00
Felipe Leme
ca5002f6bd Fixed BugreportReceiverTest failures:
- testProgress_changeJustDetailsTouchingNotification was failing because
  the notification mechanism changed and now provides a way to expand
  and collapse the actions bar, and the test was collapsing it instead
  of opening the details dialog. It was fixed by tapping the
  notification content instead of the notification title.
- Similarly, openProgressNotification() was refactored to use the
  bugreport name instead of id.
- Uses getObject() (instead of getVisibleObject()) to get the activity
  from the intent chooser.
- Removed the redundant call to back to dismiss the keyboard, which was
  causing some tests to fail due to an accessibility bug.
- Retry a few times in case the bugreport name system property assertion
  fails, since the property is set by a background thread.
- Improved how notifications are canceled.
- Created a sleep() helper.

Besides the test case improvements, it also removed a redundant call to
setCancelable() in the main code.

BUG: 30641229
BUG: 30639703

Change-Id: Icd79fada22d0b8e4be034068c3e9143ef0134eed
2016-08-03 16:09:35 -07:00
Felipe Leme
6dd4e88210 Fixed year on copyright notice.
BUG: 30429392
Change-Id: If6477ccde5820dd118ad92bb5d4f74d938cf0d83
2016-08-03 10:05:54 -07:00
Felipe Leme
cec3844b6d Removed unused imports and fixed copyright notice.
BUG: 30429392
Change-Id: I3c849e507437ef733b04954af68bd47d00dc5165
2016-08-03 10:03:30 -07:00
Felipe Leme
b4027a01e3 Use SurfaceControl.screenshot() instead of screencap for screenshots.
*** cherrypick of 8cfc23f ***

Change-Id: I5a9e7bbc5f3ae176ac5ae7209a133526992e92d4
Fixes: 30429392
2016-08-02 17:33:48 -07:00
Felipe Leme
aba9743643 Use SurfaceControl.screenshot() instead of screencap for screenshots.
Change-Id: I5a9e7bbc5f3ae176ac5ae7209a133526992e92d4
Fixes: 30429392
2016-07-28 17:31:45 -07:00
Felipe Leme
91699af8c6 Always use chooser for Share Bug Report intent.
When using startActivity(intent), the platform allows the user to pick
the same activity for the intent, which can be a problem for sharing bug
reports when the device has personal and work profiles.

Change-Id: I1fd66905feb5d894307bbe5656c2aec705a59ab7
Fixes: 22115530
2016-07-28 15:29:17 -07:00