summaryrefslogtreecommitdiff
path: root/core/java/android/app/AutomaticZenRule.java
Commit message (Collapse)AuthorAgeFilesLines
* Use ParceledListSlice for ZenModeConfig and AutomaticZenRulesMatías Hernández2025-10-071-4/+4
| | | | | | | | | | | Also, use writeString8 for Zen-related parceling. Bug: 387498139 Test: atest NotificationManagerZenTest ZenModeConfigTest (cherry picked from commit 3965123f440345017facfe9f767b22d79e55aeab) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b633b92249a80c4502da12ba66d73bc322bd46b4) Merged-In: I9925c9bcc542781832d111660e22181151526127 Change-Id: I9925c9bcc542781832d111660e22181151526127
* Trim any long string inputs that come in to AutomaticZenRuleYuri Lin2022-09-251-11/+51
| | | | | | | | | | | | | | | | | This change both prevents any rules from being unable to be written to disk and also avoids risk of running out of memory while handling all the zen rules. Bug: 242703460 Bug: 242703505 Bug: 242703780 Bug: 242704043 Bug: 243794204 Test: cts AutomaticZenRuleTest; atest android.app.AutomaticZenRuleTest; manually confirmed each exploit example either saves the rule successfully with a truncated string (in the case of name & conditionId) or may fail to save the rule at all (if the owner/configactivity is invalid). Additionally ran the memory-exhausting PoC without device crashes. Change-Id: I110172a43f28528dd274b3b346eb29c3796ff2c6 Merged-In: I110172a43f28528dd274b3b346eb29c3796ff2c6 (cherry picked from commit de172ba0d434c940be9e2aad8685719731ab7da2) (cherry picked from commit d4b5212eb6d6f9ecb967d8403d1d8dd63cf69afb) Merged-In: I110172a43f28528dd274b3b346eb29c3796ff2c6
* Revert "Revert "Migrate unsafe parcel APIs in framework-minus-apex""Bernardo Rufino2022-01-191-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 331be9a6431d6489f8d1e1b80cb510d0ee073c50. Reintroducing ag/16366278 since it seems unrelated to b/214053959 (more details on b/214053959#comment55). Original commit message: Migrate unsafe parcel APIs in framework-minus-apex Migrate the following unsafe parcel APIs in framework-minus-apex: * Parcel.readSerializable() * Parcel.readArrayList() * Parcel.readList() * Parcel.readParcelable() * Parcel.readParcelableList() * Parcel.readSparseArray() This CL was generated by applying lint fixes that infer the expected type from the caller code and provide that as the type parameter (ag/16365240). A few observations: * In some classes we couldn't migrate because the class also belonged to another build module whose min SDK wasn't current (as is the case for framework-minus-apex), hence I suppressed the lint check (since I'll eventually submit the lint check to the tree). * In some cases, I needed to do the cast in https://stackoverflow.com/a/1080525/5765705 to make the compiler happy since there isn't another way of providing a class of type Class<MyClassWithGenerics<T>>. * In the readSerializable() case, the new API also requires the class loader, that was inferred to by InferredClass.class.getClassLoader(). * Note that automatic formatting and import rely on running hooked up to the IDE, which wasn't the case here. Bug: 195622897 Change-Id: I272432e6e082a973f7a50492ec35d79c2b577c93 Test: TH passes
* Revert "Migrate unsafe parcel APIs in framework-minus-apex"Bernardo Rufino2022-01-121-4/+4
| | | | | | | | This reverts commit 90bb3709dc75f7e44914222114752de5bce133d4. Reason for revert: b/214053959 Change-Id: Ic271bab1d3eaf677a5989dda9deb944ee2ad6850
* Migrate unsafe parcel APIs in framework-minus-apexBernardo Rufino2021-12-151-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Migrate the following unsafe parcel APIs in framework-minus-apex: * Parcel.readSerializable() * Parcel.readArrayList() * Parcel.readList() * Parcel.readParcelable() * Parcel.readParcelableList() * Parcel.readSparseArray() This CL was generated by applying lint fixes that infer the expected type from the caller code and provide that as the type parameter (ag/16365240). A few observations: * In some classes we couldn't migrate because the class also belonged to another build module whose min SDK wasn't current (as is the case for framework-minus-apex), hence I suppressed the lint check (since I'll eventually submit the lint check to the tree). * In some cases, I needed to do the cast in https://stackoverflow.com/a/1080525/5765705 to make the compiler happy since there isn't another way of providing a class of type Class<MyClassWithGenerics<T>>. * In the readSerializable() case, the new API also requires the class loader, that was inferred to by InferredClass.class.getClassLoader(). * Note that automatic formatting and import rely on running hooked up to the IDE, which wasn't the case here. Bug: 195622897 Test: TH passes Change-Id: I11a27b9bdab7959ee86e90aa1e1cbebd7aaf883c
* Store DND rule ownersJulia Reynolds2021-06-161-1/+20
| | | | | | | Test: uiservicestest, cts Fixes: 189332346 Change-Id: Ie546c15c25fcbd193b67cb997220f075691e9bab
* Add @Nullable annotation to the parameter of Object.equals() methods.Roman Kalukiewicz2020-10-151-1/+1
| | | | | | | | | | | | | | | | | | Those annotations could be inferred by some tools (like Kotlin), but the https://checkerframework.org/ doesn't check inherited annotations complaining about all equals() invocations that get nullable argument. The change was generated by running find . -name \*.java | xargs sed -i 's/public boolean equals(Object /public boolean equals(@Nullable Object /' in the frameworks/base directory and by automatically adding and formatting required imports if needed. No manual edits. Bug: 170883422 Test: Annotation change only. Should have not impact. Exempt-From-Owner-Approval: Mechanical change not specific to any component. Change-Id: I5eedb571c9d78862115dfdc5dae1cf2a35343580
* API council feedback for dndJulia Reynolds2019-03-211-1/+1
| | | | | | Test: cts Fixes: 126726239 Change-Id: I864f8ea0c109e81c941cc3e2feb135e4c216a3f5
* Address api council feedbackJulia Reynolds2019-03-071-3/+4
| | | | | | | | Fixes: 127282522 Fixes: 126702741 Fixes: 126699773 Test: make, cts Change-Id: I06e78d4c7067835017c5326f1d53923776d3fc42
* Merge "Add annotations to new APIs"TreeHugger Robot2019-03-051-8/+6
|\
| * Add annotations to new APIsBeverly2019-03-041-8/+6
| | | | | | | | | | | | | | | | Test: atest ZenPolicyTest Test: atest AutomaticZenRuleTest Fixes: 126698794 Fixes: 126700812 Change-Id: Ifed34452faed6de3330663cec8ef19ea002b90ff
* | All Parcelable CREATOR fields are @NonNull.Jeff Sharkey2019-02-281-1/+1
|/ | | | | | | | | If they were null, then the Parcelable would fail to work. Bug: 126726802 Test: manual Change-Id: I7929ffa2f20e5de1c8e68e8263cca99496e9d014 Exempt-From-Owner-Approval: Trivial API annotations
* Deprecate ConditionProviderService.Julia Reynolds2018-12-171-30/+60
| | | | | | | | And replace it with something more battery friendly! Test: CTS, runtest systemui-notification Bug: 111474881 Change-Id: I45af94135fb8d2de050d5f7baaa9724b95bb1907
* Only update zen rule name on locale changeBeverly2018-11-021-5/+28
| | | | | | Test: atest ZenModeHelperTest Change-Id: I9154c812f9955d145fe461b9e17faf9fe9ccf1c9 Fixes: 118789422
* Use consolidated zen policy for dndBeverly2018-10-291-1/+1
| | | | | | | | | | | Instead of using the default notification policy, use the consolidated zen policy when do not disturb is in priority only dnd mode Bug: 111474881 Test: atest ZenModeHelperTest ZenPolicyTest ZenModeFilteringTest AudioManagerTest Test: atest SystemUITests ZenModeExtractorTest Change-Id: I88934103a56f06d4a4f620a8f557347331a79627
* New: ZenPolicy for DNDBeverly2018-09-131-3/+55
| | | | | | | Bug: 111474881 Test: atest frameworks/base/services/tests/uiservicestests/src/com/android/server/notification/ZenModeConfigTest.java Test: atest frameworks/base/services/tests/uiservicestests/src/com/android/server/notification/ZenPolicyTest.java Change-Id: I41809b30866ab7172dd80e0504694025f7fa3c50
* Condition cleanup.Julia Reynolds2016-03-081-1/+1
| | | | Change-Id: If978bebac52c0b1438e86339669f409b4b17c6fc
* Merge "Api review: AutomaticZenRule" into nyc-devJulia Reynolds2016-03-011-23/+3
|\
| * Api review: AutomaticZenRuleJulia Reynolds2016-02-261-23/+3
| | | | | | | | | | Bug: 27364144 Change-Id: I17fec34d7a277173820bed7829baf5bf905f327a
* | Parcelable classes should always be final.Jeff Sharkey2016-02-291-1/+1
|/ | | | | | | Also hide ConnectivityMetricsEvent which isn't being used yet. Bug: 27415331 Change-Id: Iacdccddda504f3f669185f807b4f35b8dc2b0212
* Api review: NotificationManagerJulia Reynolds2016-02-261-3/+4
| | | | | Bug: 27365672 Change-Id: Ic0fd82fb9442d10d6b308182a3859497aa882d07
* Add id and creation date to Zen rules.Julia Reynolds2015-10-051-3/+45
| | | | | Bug: 22977552 Change-Id: Ic79714ebbcc895e55ee87ccfc0e03b1735255ef3
* Third party DND provider APIs.Julia Reynolds2015-09-301-0/+190
Bug: 22977552 Change-Id: I8c1bac317e9aa5d9565afe3f0c4e2be8fc34e6a9