TelephonyManager.Listen(PhoneStateListener, PhoneStateListenerFlags) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
注册侦听器对象,以接收指定电话状态中的更改通知。
[Android.Runtime.Register("listen", "(Landroid/telephony/PhoneStateListener;I)V", "GetListen_Landroid_telephony_PhoneStateListener_IHandler")]
public virtual void Listen (Android.Telephony.PhoneStateListener? listener, Android.Telephony.PhoneStateListenerFlags events);
[<Android.Runtime.Register("listen", "(Landroid/telephony/PhoneStateListener;I)V", "GetListen_Landroid_telephony_PhoneStateListener_IHandler")>]
abstract member Listen : Android.Telephony.PhoneStateListener * Android.Telephony.PhoneStateListenerFlags -> unit
override this.Listen : Android.Telephony.PhoneStateListener * Android.Telephony.PhoneStateListenerFlags -> unit
参数
- listener
- PhoneStateListener
PhoneStateListener
要注册的对象(或注销)
- events
- PhoneStateListenerFlags
侦听器感兴趣的电话状态,作为LISTEN_标志的 PhoneStateListener
按位 OR 组合。
- 属性
注解
注册侦听器对象,以接收指定电话状态中的更改通知。
若要注册侦听器,请传递 PhoneStateListener
并指定事件参数中至少一个感兴趣的电话状态。
在注册时,当指定的电话状态发生更改时,电话管理器会在侦听器对象上调用适当的回调方法,并传递当前的(已更新)值。
若要取消注册侦听器,请传递侦听器对象并将事件参数设置为 PhoneStateListener#LISTEN_NONE LISTEN_NONE
(0)。
如果已使用此 #createForSubscriptionId
TelephonyManager 对象创建,则适用于给定的 subId。 否则,适用于 SubscriptionManager#getDefaultSubscriptionId()
. 若要侦听多个 subId 的事件,请将单独的侦听器对象传递给创建 #createForSubscriptionId
的每个 TelephonyManager 对象。
注意:如果在绑定器事务中间调用此方法,则在调用此方法之前,必须<></b> 调用android.os.Binder#clearCallingIdentity()
此方法。 否则将引发 A SecurityException
。
应谨慎使用此 API - 大量侦听器将导致系统不稳定。 如果进程注册了过多的侦听器而不注销它们,则尝试注册更多侦听器时可能会遇到 IllegalStateException
错误。
此成员已弃用。 使用 #registerTelephonyCallback(Executor, TelephonyCallback)
。
适用于 . 的 android.telephony.TelephonyManager.listen(android.telephony.PhoneStateListener, int)
Java 文档
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。