blob: 8681f5c85b12f9159b1b4c9268d08bae3ac842a2 [file] [log] [blame]
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08001/* //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
18package android.app;
19
20import android.app.ITransientNotification;
Daniel Sandler5feceeb2013-03-22 18:29:23 -070021import android.service.notification.StatusBarNotification;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080022import android.app.Notification;
Daniel Sandler5feceeb2013-03-22 18:29:23 -070023import android.content.ComponentName;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080024import android.content.Intent;
Daniel Sandler5feceeb2013-03-22 18:29:23 -070025import android.service.notification.INotificationListener;
John Spurlock056c5192014-04-20 21:52:01 -040026import android.service.notification.ZenModeConfig;
Daniel Sandlerfde19b12013-01-17 00:21:05 -050027
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080028/** {@hide} */
29interface INotificationManager
30{
Dianne Hackborn41203752012-08-31 14:05:51 -070031 void cancelAllNotifications(String pkg, int userId);
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080032
33 void enqueueToast(String pkg, ITransientNotification callback, int duration);
34 void cancelToast(String pkg, ITransientNotification callback);
Christoph Studer8fd7f1e2014-04-11 17:35:05 -040035 void enqueueNotificationWithTag(String pkg, String opPkg, String tag, int id,
Dianne Hackborn41203752012-08-31 14:05:51 -070036 in Notification notification, inout int[] idReceived, int userId);
37 void cancelNotificationWithTag(String pkg, String tag, int id, int userId);
Daniel Sandler0da673f2012-04-11 12:33:16 -040038
Daniel Sandler4a900ac2013-01-30 14:04:10 -050039 void setNotificationsEnabledForPackage(String pkg, int uid, boolean enabled);
40 boolean areNotificationsEnabledForPackage(String pkg, int uid);
Daniel Sandlerfde19b12013-01-17 00:21:05 -050041
42 StatusBarNotification[] getActiveNotifications(String callingPkg);
Daniel Sandler78d0d252013-02-12 08:14:52 -050043 StatusBarNotification[] getHistoricalNotifications(String callingPkg, int count);
Daniel Sandler09a247e2013-02-14 10:24:17 -050044
Daniel Sandler5feceeb2013-03-22 18:29:23 -070045 void registerListener(in INotificationListener listener, in ComponentName component, int userid);
Daniel Sandler09a247e2013-02-14 10:24:17 -050046 void unregisterListener(in INotificationListener listener, int userid);
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080047
Daniel Sandlere6f7f2e2013-04-25 15:44:16 -040048 void cancelNotificationFromListener(in INotificationListener token, String pkg, String tag, int id);
John Spurlocka4294292014-03-24 18:02:32 -040049 void cancelNotificationsFromListener(in INotificationListener token, in String[] keys);
Daniel Sandler25cf8ce2013-04-24 15:34:57 -040050
John Spurlocka4294292014-03-24 18:02:32 -040051 StatusBarNotification[] getActiveNotificationsFromListener(in INotificationListener token, in String[] keys);
52 String[] getActiveNotificationKeysFromListener(in INotificationListener token);
John Spurlock056c5192014-04-20 21:52:01 -040053
54 ZenModeConfig getZenModeConfig();
55 boolean setZenModeConfig(in ZenModeConfig config);
Daniel Sandler5feceeb2013-03-22 18:29:23 -070056}