Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a419dd16 authored by John Spurlock's avatar John Spurlock Committed by Android (Google) Code Review
Browse files

Merge "Zen: Add notification policy management api."

parents 4ff26a7d 1fc476d5
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -74,6 +74,7 @@ LOCAL_SRC_FILES += \
	core/java/android/app/IBackupAgent.aidl \
	core/java/android/app/IInstrumentationWatcher.aidl \
	core/java/android/app/INotificationManager.aidl \
	core/java/android/app/INotificationManagerCallback.aidl \
	core/java/android/app/IProcessObserver.aidl \
	core/java/android/app/ISearchManager.aidl \
	core/java/android/app/ISearchManagerCallback.aidl \
@@ -555,6 +556,7 @@ aidl_files := \
	frameworks/base/core/java/android/app/AssistStructure.aidl \
	frameworks/base/core/java/android/app/AssistContent.aidl \
	frameworks/base/core/java/android/app/Notification.aidl \
	frameworks/base/core/java/android/app/NotificationManager.aidl \
	frameworks/base/core/java/android/app/WallpaperInfo.aidl \
	frameworks/base/core/java/android/app/AppOpsManager.aidl \
	frameworks/base/core/java/android/app/ActivityManager.aidl \
+37 −0
Original line number Diff line number Diff line
@@ -5108,8 +5108,44 @@ package android.app {
    method public void cancel(int);
    method public void cancel(java.lang.String, int);
    method public void cancelAll();
    method public android.app.NotificationManager.Policy getNotificationPolicy(android.app.NotificationManager.Policy.Token);
    method public boolean isNotificationPolicyTokenValid(android.app.NotificationManager.Policy.Token);
    method public void notify(int, android.app.Notification);
    method public void notify(java.lang.String, int, android.app.Notification);
    method public void requestNotificationPolicyToken(android.app.NotificationManager.Policy.Token.RequestCallback, android.os.Handler);
    method public void setNotificationPolicy(android.app.NotificationManager.Policy.Token, android.app.NotificationManager.Policy);
    field public static final java.lang.String ACTION_NOTIFICATION_POLICY_CHANGED = "android.app.action.NOTIFICATION_POLICY_CHANGED";
  }
  public static class NotificationManager.Policy implements android.os.Parcelable {
    ctor public NotificationManager.Policy(int, int);
    method public int describeContents();
    method public static java.lang.String priorityCategoriesToString(int);
    method public static java.lang.String prioritySendersToString(int);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.app.NotificationManager.Policy> CREATOR;
    field public static final int PRIORITY_CATEGORY_CALLS = 8; // 0x8
    field public static final int PRIORITY_CATEGORY_EVENTS = 2; // 0x2
    field public static final int PRIORITY_CATEGORY_MESSAGES = 4; // 0x4
    field public static final int PRIORITY_CATEGORY_REMINDERS = 1; // 0x1
    field public static final int PRIORITY_CATEGORY_REPEAT_CALLERS = 16; // 0x10
    field public static final int PRIORITY_SENDERS_ANY = 0; // 0x0
    field public static final int PRIORITY_SENDERS_CONTACTS = 1; // 0x1
    field public static final int PRIORITY_SENDERS_STARRED = 2; // 0x2
    field public final int priorityCategories;
    field public final int prioritySenders;
  }
  public static class NotificationManager.Policy.Token implements android.os.Parcelable {
    method public int describeContents();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.app.NotificationManager.Policy.Token> CREATOR;
  }
  public static abstract class NotificationManager.Policy.Token.RequestCallback {
    ctor public NotificationManager.Policy.Token.RequestCallback();
    method public abstract void onTokenDenied();
    method public abstract void onTokenGranted(android.app.NotificationManager.Policy.Token);
  }
  public final class PendingIntent implements android.os.Parcelable {
@@ -28603,6 +28639,7 @@ package android.service.notification {
    method public final int getCurrentInterruptionFilter();
    method public final int getCurrentListenerHints();
    method public android.service.notification.NotificationListenerService.RankingMap getCurrentRanking();
    method public final android.app.NotificationManager.Policy.Token getNotificationPolicyToken();
    method public android.os.IBinder onBind(android.content.Intent);
    method public void onInterruptionFilterChanged(int);
    method public void onListenerConnected();
+37 −0
Original line number Diff line number Diff line
@@ -5199,8 +5199,44 @@ package android.app {
    method public void cancel(int);
    method public void cancel(java.lang.String, int);
    method public void cancelAll();
    method public android.app.NotificationManager.Policy getNotificationPolicy(android.app.NotificationManager.Policy.Token);
    method public boolean isNotificationPolicyTokenValid(android.app.NotificationManager.Policy.Token);
    method public void notify(int, android.app.Notification);
    method public void notify(java.lang.String, int, android.app.Notification);
    method public void requestNotificationPolicyToken(android.app.NotificationManager.Policy.Token.RequestCallback, android.os.Handler);
    method public void setNotificationPolicy(android.app.NotificationManager.Policy.Token, android.app.NotificationManager.Policy);
    field public static final java.lang.String ACTION_NOTIFICATION_POLICY_CHANGED = "android.app.action.NOTIFICATION_POLICY_CHANGED";
  }
  public static class NotificationManager.Policy implements android.os.Parcelable {
    ctor public NotificationManager.Policy(int, int);
    method public int describeContents();
    method public static java.lang.String priorityCategoriesToString(int);
    method public static java.lang.String prioritySendersToString(int);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.app.NotificationManager.Policy> CREATOR;
    field public static final int PRIORITY_CATEGORY_CALLS = 8; // 0x8
    field public static final int PRIORITY_CATEGORY_EVENTS = 2; // 0x2
    field public static final int PRIORITY_CATEGORY_MESSAGES = 4; // 0x4
    field public static final int PRIORITY_CATEGORY_REMINDERS = 1; // 0x1
    field public static final int PRIORITY_CATEGORY_REPEAT_CALLERS = 16; // 0x10
    field public static final int PRIORITY_SENDERS_ANY = 0; // 0x0
    field public static final int PRIORITY_SENDERS_CONTACTS = 1; // 0x1
    field public static final int PRIORITY_SENDERS_STARRED = 2; // 0x2
    field public final int priorityCategories;
    field public final int prioritySenders;
  }
  public static class NotificationManager.Policy.Token implements android.os.Parcelable {
    method public int describeContents();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.app.NotificationManager.Policy.Token> CREATOR;
  }
  public static abstract class NotificationManager.Policy.Token.RequestCallback {
    ctor public NotificationManager.Policy.Token.RequestCallback();
    method public abstract void onTokenDenied();
    method public abstract void onTokenGranted(android.app.NotificationManager.Policy.Token);
  }
  public final class PendingIntent implements android.os.Parcelable {
@@ -30646,6 +30682,7 @@ package android.service.notification {
    method public final int getCurrentInterruptionFilter();
    method public final int getCurrentListenerHints();
    method public android.service.notification.NotificationListenerService.RankingMap getCurrentRanking();
    method public final android.app.NotificationManager.Policy.Token getNotificationPolicyToken();
    method public android.os.IBinder onBind(android.content.Intent);
    method public void onInterruptionFilterChanged(int);
    method public void onListenerConnected();
+7 −0
Original line number Diff line number Diff line
@@ -17,8 +17,10 @@

package android.app;

import android.app.INotificationManagerCallback;
import android.app.ITransientNotification;
import android.app.Notification;
import android.app.NotificationManager;
import android.content.ComponentName;
import android.content.Intent;
import android.content.pm.ParceledListSlice;
@@ -71,6 +73,7 @@ interface INotificationManager
    void requestInterruptionFilterFromListener(in INotificationListener token, int interruptionFilter);
    int getInterruptionFilterFromListener(in INotificationListener token);
    void setOnNotificationPostedTrimFromListener(in INotificationListener token, int trim);
    NotificationManager.Policy.Token getPolicyTokenFromListener(in INotificationListener listener);

    ComponentName getEffectsSuppressor();
    boolean matchesCallFilter(in Bundle extras);
@@ -82,4 +85,8 @@ interface INotificationManager
    oneway void setZenMode(int mode, in Uri conditionId, String reason);
    oneway void notifyConditions(String pkg, in IConditionProvider provider, in Condition[] conditions);
    oneway void requestZenModeConditions(in IConditionListener callback, int relevance);
    oneway void requestNotificationPolicyToken(String pkg, in INotificationManagerCallback callback);
    boolean isNotificationPolicyTokenValid(String pkg, in NotificationManager.Policy.Token token);
    NotificationManager.Policy getNotificationPolicy(in NotificationManager.Policy.Token token);
    void setNotificationPolicy(in NotificationManager.Policy.Token token, in NotificationManager.Policy policy);
}
+24 −0
Original line number Diff line number Diff line
/**
 * Copyright (c) 2015, The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.app;

import android.app.NotificationManager;

/** @hide */
oneway interface INotificationManagerCallback {
    void onPolicyToken(in NotificationManager.Policy.Token token);
}
Loading