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

Commit 58447850 authored by Alisa Hung's avatar Alisa Hung Committed by Android (Google) Code Review
Browse files

Merge changes from topic "NAS createConversationNotificationChannelForPackage" into main

* changes:
  Allow the NAS to update channels and add @SystemApi to NotificationChannel#setImportantConversation.
  Add a new API to create conversation notification channels from the NAS.
parents 67d8f57c c2a85d0b
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -41481,6 +41481,7 @@ package android.service.notification {
    method public final void cancelNotification(String);
    method public final void cancelNotification(String);
    method public final void cancelNotifications(String[]);
    method public final void cancelNotifications(String[]);
    method public final void clearRequestedListenerHints();
    method public final void clearRequestedListenerHints();
    method @FlaggedApi("android.service.notification.notification_conversation_channel_management") @Nullable public final android.app.NotificationChannel createConversationNotificationChannelForPackage(@NonNull String, @NonNull android.os.UserHandle, @NonNull String, @NonNull String);
    method public android.service.notification.StatusBarNotification[] getActiveNotifications();
    method public android.service.notification.StatusBarNotification[] getActiveNotifications();
    method public android.service.notification.StatusBarNotification[] getActiveNotifications(String[]);
    method public android.service.notification.StatusBarNotification[] getActiveNotifications(String[]);
    method public final int getCurrentInterruptionFilter();
    method public final int getCurrentInterruptionFilter();
+1 −0
Original line number Original line Diff line number Diff line
@@ -1047,6 +1047,7 @@ package android.app {
    method public int getUserLockedFields();
    method public int getUserLockedFields();
    method public boolean isDeleted();
    method public boolean isDeleted();
    method public void populateFromXml(org.xmlpull.v1.XmlPullParser);
    method public void populateFromXml(org.xmlpull.v1.XmlPullParser);
    method @FlaggedApi("android.service.notification.notification_conversation_channel_management") public void setImportantConversation(boolean);
    method public org.json.JSONObject toJson() throws org.json.JSONException;
    method public org.json.JSONObject toJson() throws org.json.JSONException;
    method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
    method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
    field public static final int USER_LOCKED_SOUND = 32; // 0x20
    field public static final int USER_LOCKED_SOUND = 32; // 0x20
+2 −1
Original line number Original line Diff line number Diff line
@@ -369,6 +369,7 @@ package android.app {
  }
  }


  public final class NotificationChannel implements android.os.Parcelable {
  public final class NotificationChannel implements android.os.Parcelable {
    method @FlaggedApi("android.service.notification.notification_conversation_channel_management") @NonNull public android.app.NotificationChannel copy();
    method public int getOriginalImportance();
    method public int getOriginalImportance();
    method public boolean isImportanceLockedByCriticalDeviceFunction();
    method public boolean isImportanceLockedByCriticalDeviceFunction();
    method public void lockFields(int);
    method public void lockFields(int);
@@ -376,7 +377,7 @@ package android.app {
    method public void setDeletedTimeMs(long);
    method public void setDeletedTimeMs(long);
    method public void setDemoted(boolean);
    method public void setDemoted(boolean);
    method public void setImportanceLockedByCriticalDeviceFunction(boolean);
    method public void setImportanceLockedByCriticalDeviceFunction(boolean);
    method public void setImportantConversation(boolean);
    method @FlaggedApi("android.service.notification.notification_conversation_channel_management") public void setImportantConversation(boolean);
    method public void setOriginalImportance(int);
    method public void setOriginalImportance(int);
    method public void setUserVisibleTaskShown(boolean);
    method public void setUserVisibleTaskShown(boolean);
    field @FlaggedApi("android.service.notification.notification_classification") public static final String NEWS_ID = "android.app.news";
    field @FlaggedApi("android.service.notification.notification_classification") public static final String NEWS_ID = "android.app.news";
+1 −0
Original line number Original line Diff line number Diff line
@@ -175,6 +175,7 @@ interface INotificationManager
    void setOnNotificationPostedTrimFromListener(in INotificationListener token, int trim);
    void setOnNotificationPostedTrimFromListener(in INotificationListener token, int trim);
    void setInterruptionFilter(String pkg, int interruptionFilter, boolean fromUser);
    void setInterruptionFilter(String pkg, int interruptionFilter, boolean fromUser);


    NotificationChannel createConversationNotificationChannelForPackageFromPrivilegedListener(in INotificationListener token, String pkg, in UserHandle user, String parentChannelId, String conversationId);
    void updateNotificationChannelGroupFromPrivilegedListener(in INotificationListener token, String pkg, in UserHandle user, in NotificationChannelGroup group);
    void updateNotificationChannelGroupFromPrivilegedListener(in INotificationListener token, String pkg, in UserHandle user, in NotificationChannelGroup group);
    void updateNotificationChannelFromPrivilegedListener(in INotificationListener token, String pkg, in UserHandle user, in NotificationChannel channel);
    void updateNotificationChannelFromPrivilegedListener(in INotificationListener token, String pkg, in UserHandle user, in NotificationChannel channel);
    ParceledListSlice getNotificationChannelsFromPrivilegedListener(in INotificationListener token, String pkg, in UserHandle user);
    ParceledListSlice getNotificationChannelsFromPrivilegedListener(in INotificationListener token, String pkg, in UserHandle user);
+9 −6
Original line number Original line Diff line number Diff line
@@ -15,6 +15,8 @@
 */
 */
package android.app;
package android.app;


import static android.service.notification.Flags.FLAG_NOTIFICATION_CONVERSATION_CHANNEL_MANAGEMENT;

import android.annotation.FlaggedApi;
import android.annotation.FlaggedApi;
import android.annotation.NonNull;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.Nullable;
@@ -475,9 +477,10 @@ public final class NotificationChannel implements Parcelable {
        dest.writeBoolean(mImportanceLockedDefaultApp);
        dest.writeBoolean(mImportanceLockedDefaultApp);
    }
    }


    /**
    /** @hide */
     * @hide
    @TestApi
     */
    @NonNull
    @FlaggedApi(FLAG_NOTIFICATION_CONVERSATION_CHANNEL_MANAGEMENT)
    public NotificationChannel copy() {
    public NotificationChannel copy() {
        NotificationChannel copy = new NotificationChannel(mId, mName, mImportance);
        NotificationChannel copy = new NotificationChannel(mId, mName, mImportance);
        copy.setDescription(mDesc);
        copy.setDescription(mDesc);
@@ -548,10 +551,10 @@ public final class NotificationChannel implements Parcelable {
        mDeletedTime = time;
        mDeletedTime = time;
    }
    }


    /**
    /** @hide */
     * @hide
     */
    @TestApi
    @TestApi
    @SystemApi
    @FlaggedApi(FLAG_NOTIFICATION_CONVERSATION_CHANNEL_MANAGEMENT)
    public void setImportantConversation(boolean importantConvo) {
    public void setImportantConversation(boolean importantConvo) {
        mImportantConvo = importantConvo;
        mImportantConvo = importantConvo;
    }
    }
Loading