The Android Open Source Project | 9066cfe | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 1 | /* //device/java/android/android/app/INotificationManager.aidl |
| 2 | ** |
| 3 | ** Copyright 2007, The Android Open Source Project |
| 4 | ** |
| 5 | ** Licensed under the Apache License, Version 2.0 (the "License"); |
| 6 | ** you may not use this file except in compliance with the License. |
| 7 | ** You may obtain a copy of the License at |
| 8 | ** |
| 9 | ** http://www.apache.org/licenses/LICENSE-2.0 |
| 10 | ** |
| 11 | ** Unless required by applicable law or agreed to in writing, software |
| 12 | ** distributed under the License is distributed on an "AS IS" BASIS, |
| 13 | ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 14 | ** See the License for the specific language governing permissions and |
| 15 | ** limitations under the License. |
| 16 | */ |
| 17 | |
| 18 | package android.app; |
| 19 | |
| 20 | import android.app.ITransientNotification; |
| 21 | import android.app.Notification; |
Daniel Sandler | 5feceeb | 2013-03-22 18:29:23 -0700 | [diff] [blame] | 22 | import android.content.ComponentName; |
The Android Open Source Project | 9066cfe | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 23 | import android.content.Intent; |
Christoph Studer | cee44ba | 2014-05-20 18:36:43 +0200 | [diff] [blame] | 24 | import android.content.pm.ParceledListSlice; |
John Spurlock | e77bb36 | 2014-04-26 10:24:59 -0400 | [diff] [blame] | 25 | import android.net.Uri; |
John Spurlock | 2b122f4 | 2014-08-27 16:29:47 -0400 | [diff] [blame] | 26 | import android.os.Bundle; |
John Spurlock | 7340fc8 | 2014-04-24 18:50:12 -0400 | [diff] [blame] | 27 | import android.service.notification.Condition; |
John Spurlock | e77bb36 | 2014-04-26 10:24:59 -0400 | [diff] [blame] | 28 | import android.service.notification.IConditionListener; |
John Spurlock | 7340fc8 | 2014-04-24 18:50:12 -0400 | [diff] [blame] | 29 | import android.service.notification.IConditionProvider; |
Daniel Sandler | 5feceeb | 2013-03-22 18:29:23 -0700 | [diff] [blame] | 30 | import android.service.notification.INotificationListener; |
John Spurlock | e77bb36 | 2014-04-26 10:24:59 -0400 | [diff] [blame] | 31 | import android.service.notification.StatusBarNotification; |
John Spurlock | 056c519 | 2014-04-20 21:52:01 -0400 | [diff] [blame] | 32 | import android.service.notification.ZenModeConfig; |
Daniel Sandler | fde19b1 | 2013-01-17 00:21:05 -0500 | [diff] [blame] | 33 | |
The Android Open Source Project | 9066cfe | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 34 | /** {@hide} */ |
| 35 | interface INotificationManager |
| 36 | { |
Dianne Hackborn | 4120375 | 2012-08-31 14:05:51 -0700 | [diff] [blame] | 37 | void cancelAllNotifications(String pkg, int userId); |
The Android Open Source Project | 9066cfe | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 38 | |
| 39 | void enqueueToast(String pkg, ITransientNotification callback, int duration); |
| 40 | void cancelToast(String pkg, ITransientNotification callback); |
Christoph Studer | 8fd7f1e | 2014-04-11 17:35:05 -0400 | [diff] [blame] | 41 | void enqueueNotificationWithTag(String pkg, String opPkg, String tag, int id, |
Dianne Hackborn | 4120375 | 2012-08-31 14:05:51 -0700 | [diff] [blame] | 42 | in Notification notification, inout int[] idReceived, int userId); |
| 43 | void cancelNotificationWithTag(String pkg, String tag, int id, int userId); |
Daniel Sandler | 0da673f | 2012-04-11 12:33:16 -0400 | [diff] [blame] | 44 | |
Daniel Sandler | 4a900ac | 2013-01-30 14:04:10 -0500 | [diff] [blame] | 45 | void setNotificationsEnabledForPackage(String pkg, int uid, boolean enabled); |
| 46 | boolean areNotificationsEnabledForPackage(String pkg, int uid); |
Daniel Sandler | fde19b1 | 2013-01-17 00:21:05 -0500 | [diff] [blame] | 47 | |
Chris Wren | 54bbef4 | 2014-07-09 18:37:56 -0400 | [diff] [blame] | 48 | void setPackagePriority(String pkg, int uid, int priority); |
| 49 | int getPackagePriority(String pkg, int uid); |
| 50 | |
Chris Wren | 3ad4e3a | 2014-09-02 17:23:51 -0400 | [diff] [blame] | 51 | void setPackageVisibilityOverride(String pkg, int uid, int visibility); |
| 52 | int getPackageVisibilityOverride(String pkg, int uid); |
| 53 | |
Christoph Studer | cee44ba | 2014-05-20 18:36:43 +0200 | [diff] [blame] | 54 | // TODO: Remove this when callers have been migrated to the equivalent |
| 55 | // INotificationListener method. |
Daniel Sandler | fde19b1 | 2013-01-17 00:21:05 -0500 | [diff] [blame] | 56 | StatusBarNotification[] getActiveNotifications(String callingPkg); |
Daniel Sandler | 78d0d25 | 2013-02-12 08:14:52 -0500 | [diff] [blame] | 57 | StatusBarNotification[] getHistoricalNotifications(String callingPkg, int count); |
Daniel Sandler | 09a247e | 2013-02-14 10:24:17 -0500 | [diff] [blame] | 58 | |
Daniel Sandler | 5feceeb | 2013-03-22 18:29:23 -0700 | [diff] [blame] | 59 | void registerListener(in INotificationListener listener, in ComponentName component, int userid); |
Daniel Sandler | 09a247e | 2013-02-14 10:24:17 -0500 | [diff] [blame] | 60 | void unregisterListener(in INotificationListener listener, int userid); |
The Android Open Source Project | 9066cfe | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 61 | |
Daniel Sandler | e6f7f2e | 2013-04-25 15:44:16 -0400 | [diff] [blame] | 62 | void cancelNotificationFromListener(in INotificationListener token, String pkg, String tag, int id); |
John Spurlock | a429429 | 2014-03-24 18:02:32 -0400 | [diff] [blame] | 63 | void cancelNotificationsFromListener(in INotificationListener token, in String[] keys); |
Daniel Sandler | 25cf8ce | 2013-04-24 15:34:57 -0400 | [diff] [blame] | 64 | |
Christoph Studer | b82bc78 | 2014-08-20 14:29:43 +0200 | [diff] [blame] | 65 | ParceledListSlice getActiveNotificationsFromListener(in INotificationListener token, in String[] keys, int trim); |
John Spurlock | d8afe3c | 2014-08-01 14:04:07 -0400 | [diff] [blame] | 66 | void requestHintsFromListener(in INotificationListener token, int hints); |
| 67 | int getHintsFromListener(in INotificationListener token); |
Christoph Studer | 85a384b | 2014-08-27 20:16:15 +0200 | [diff] [blame] | 68 | void requestInterruptionFilterFromListener(in INotificationListener token, int interruptionFilter); |
| 69 | int getInterruptionFilterFromListener(in INotificationListener token); |
Christoph Studer | b82bc78 | 2014-08-20 14:29:43 +0200 | [diff] [blame] | 70 | void setOnNotificationPostedTrimFromListener(in INotificationListener token, int trim); |
John Spurlock | 056c519 | 2014-04-20 21:52:01 -0400 | [diff] [blame] | 71 | |
John Spurlock | b478252 | 2014-08-22 14:54:46 -0400 | [diff] [blame] | 72 | ComponentName getEffectsSuppressor(); |
John Spurlock | 2b122f4 | 2014-08-27 16:29:47 -0400 | [diff] [blame] | 73 | boolean matchesCallFilter(in Bundle extras); |
John Spurlock | b478252 | 2014-08-22 14:54:46 -0400 | [diff] [blame] | 74 | |
John Spurlock | 056c519 | 2014-04-20 21:52:01 -0400 | [diff] [blame] | 75 | ZenModeConfig getZenModeConfig(); |
| 76 | boolean setZenModeConfig(in ZenModeConfig config); |
John Spurlock | e77bb36 | 2014-04-26 10:24:59 -0400 | [diff] [blame] | 77 | oneway void notifyConditions(String pkg, in IConditionProvider provider, in Condition[] conditions); |
John Spurlock | 3b98b3f | 2014-05-01 09:08:48 -0400 | [diff] [blame] | 78 | oneway void requestZenModeConditions(in IConditionListener callback, int relevance); |
John Spurlock | 4db0d98 | 2014-08-13 09:19:03 -0400 | [diff] [blame] | 79 | oneway void setZenModeCondition(in Condition condition); |
John Spurlock | 3b98b3f | 2014-05-01 09:08:48 -0400 | [diff] [blame] | 80 | oneway void setAutomaticZenModeConditions(in Uri[] conditionIds); |
| 81 | Condition[] getAutomaticZenModeConditions(); |
Dan Sandler | ea75fdd | 2014-08-12 12:29:19 -0400 | [diff] [blame] | 82 | } |