public class StatusBarNotification extends Object implements Parcelable
NotificationListenerService
s.Parcelable.ClassLoaderCreator<T>, Parcelable.Creator<T>
Modifier and Type | Field and Description |
---|---|
static Parcelable.Creator<StatusBarNotification> |
CREATOR |
CONTENTS_FILE_DESCRIPTOR, PARCELABLE_ELIDE_DUPLICATES, PARCELABLE_WRITE_RETURN_VALUE
Constructor and Description |
---|
StatusBarNotification(Parcel in) |
StatusBarNotification(String pkg,
String opPkg,
int id,
String tag,
int uid,
int initialPid,
int score,
Notification notification,
UserHandle user) |
StatusBarNotification(String pkg,
String opPkg,
int id,
String tag,
int uid,
int initialPid,
int score,
Notification notification,
UserHandle user,
long postTime) |
StatusBarNotification(String pkg,
String opPkg,
int id,
String tag,
int uid,
int initialPid,
Notification notification,
UserHandle user,
String overrideGroupKey,
long postTime) |
Modifier and Type | Method and Description |
---|---|
StatusBarNotification |
clone()
Creates and returns a copy of this object.
|
StatusBarNotification |
cloneLight() |
int |
describeContents()
Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation.
|
String |
getGroupKey()
A key that indicates the group with which this message ranks.
|
int |
getId()
The id supplied to
NotificationManager.notify(int,Notification) . |
int |
getInitialPid() |
String |
getKey()
A unique instance key for this notification record.
|
Notification |
getNotification()
The
Notification supplied to
NotificationManager.notify(int,Notification) . |
String |
getOpPkg()
The package used for AppOps tracking.
|
String |
getOverrideGroupKey()
Returns the override group key.
|
Context |
getPackageContext(Context context) |
String |
getPackageName()
The package of the app that posted the notification.
|
long |
getPostTime()
The time (in
System.currentTimeMillis() time) the notification was posted,
which may be different than Notification.when . |
String |
getTag()
The tag supplied to
NotificationManager.notify(int,Notification) ,
or null if no tag was specified. |
int |
getUid()
The notifying app's calling uid.
|
UserHandle |
getUser()
The
UserHandle for whom this notification is intended. |
int |
getUserId()
Deprecated.
Use
getUser() instead. |
boolean |
isAppGroup()
Returns true if application asked that this notification be part of a group.
|
boolean |
isClearable()
Convenience method to check the notification's flags for
either
Notification.FLAG_ONGOING_EVENT or
Notification.FLAG_NO_CLEAR . |
boolean |
isGroup()
Returns true if this notification is part of a group.
|
boolean |
isOngoing()
Convenience method to check the notification's flags for
Notification.FLAG_ONGOING_EVENT . |
void |
setOverrideGroupKey(String overrideGroupKey)
Sets the override group key.
|
String |
toString()
Returns a string representation of the object.
|
void |
writeToParcel(Parcel out,
int flags)
Flatten this object in to a Parcel.
|
public static final Parcelable.Creator<StatusBarNotification> CREATOR
public StatusBarNotification(String pkg, String opPkg, int id, String tag, int uid, int initialPid, int score, Notification notification, UserHandle user)
public StatusBarNotification(String pkg, String opPkg, int id, String tag, int uid, int initialPid, Notification notification, UserHandle user, String overrideGroupKey, long postTime)
public StatusBarNotification(String pkg, String opPkg, int id, String tag, int uid, int initialPid, int score, Notification notification, UserHandle user, long postTime)
public StatusBarNotification(Parcel in)
public boolean isGroup()
public boolean isAppGroup()
public void writeToParcel(Parcel out, int flags)
Parcelable
writeToParcel
in interface Parcelable
out
- The Parcel in which the object should be written.flags
- Additional flags about how the object should be written.
May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE
.public int describeContents()
Parcelable
Parcelable.writeToParcel(Parcel, int)
,
the return value of this method must include the
Parcelable.CONTENTS_FILE_DESCRIPTOR
bit.describeContents
in interface Parcelable
Parcelable.CONTENTS_FILE_DESCRIPTOR
public StatusBarNotification cloneLight()
public StatusBarNotification clone()
Object
x
, the expression:
will be true, and that the expression:x.clone() != x
will bex.clone().getClass() == x.getClass()
true
, but these are not absolute requirements.
While it is typically the case that:
will bex.clone().equals(x)
true
, this is not an absolute requirement.
By convention, the returned object should be obtained by calling
super.clone
. If a class and all of its superclasses (except
Object
) obey this convention, it will be the case that
x.clone().getClass() == x.getClass()
.
By convention, the object returned by this method should be independent
of this object (which is being cloned). To achieve this independence,
it may be necessary to modify one or more fields of the object returned
by super.clone
before returning it. Typically, this means
copying any mutable objects that comprise the internal "deep structure"
of the object being cloned and replacing the references to these
objects with references to the copies. If a class contains only
primitive fields or references to immutable objects, then it is usually
the case that no fields in the object returned by super.clone
need to be modified.
The method clone
for class Object
performs a
specific cloning operation. First, if the class of this object does
not implement the interface Cloneable
, then a
CloneNotSupportedException
is thrown. Note that all arrays
are considered to implement the interface Cloneable
and that
the return type of the clone
method of an array type T[]
is T[]
where T is any reference or primitive type.
Otherwise, this method creates a new instance of the class of this
object and initializes all its fields with exactly the contents of
the corresponding fields of this object, as if by assignment; the
contents of the fields are not themselves cloned. Thus, this method
performs a "shallow copy" of this object, not a "deep copy" operation.
The class Object
does not itself implement the interface
Cloneable
, so calling the clone
method on an object
whose class is Object
will result in throwing an
exception at run time.
public String toString()
Object
toString
method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString
method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@
', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
public boolean isOngoing()
Notification.FLAG_ONGOING_EVENT
.public boolean isClearable()
Notification.FLAG_ONGOING_EVENT
or
Notification.FLAG_NO_CLEAR
.public int getUserId()
getUser()
instead.public String getPackageName()
public int getId()
NotificationManager.notify(int,Notification)
.public String getTag()
NotificationManager.notify(int,Notification)
,
or null if no tag was specified.public int getUid()
public String getOpPkg()
public int getInitialPid()
public Notification getNotification()
Notification
supplied to
NotificationManager.notify(int,Notification)
.public UserHandle getUser()
UserHandle
for whom this notification is intended.public long getPostTime()
System.currentTimeMillis()
time) the notification was posted,
which may be different than Notification.when
.public String getKey()
public String getGroupKey()
public void setOverrideGroupKey(String overrideGroupKey)
public String getOverrideGroupKey()