Android中的呼叫端监听器
我正在开发一个应用程序,其中存储来自Android中的呼叫端监听器,android,calllog,contentobserver,Android,Calllog,Contentobserver,我正在开发一个应用程序,其中存储来自CallLog提供者的呼叫日志详细信息 Android将调用日志存储在数据库中,我正在从该数据库复制新行 现在我想在用户结束通话时复制通话详细信息。为此,我使用了PhoneStateListener,用于监听状态铃声、摘机和空闲模式 但是在调用结束后,idle方法会多次调用,所以我不能使用它 其次,我使用了调用日志表的ContentObserver,当Android在其中插入调用细节时,它会给我一个onChanged事件,当时我会将这些细节复制到我的数据库中
CallLog
提供者的呼叫日志详细信息
Android将调用日志存储在数据库中,我正在从该数据库复制新行
现在我想在用户结束通话时复制通话详细信息。为此,我使用了PhoneStateListener
,用于监听状态铃声、摘机和空闲模式
但是在调用结束后,idle方法会多次调用,所以我不能使用它
其次,我使用了调用日志表的ContentObserver
,当Android在其中插入调用细节时,它会给我一个onChanged事件,当时我会将这些细节复制到我的数据库中
这是使用ContentObserver
的正确方法吗?
有没有其他方法可以获取刚刚结束的新呼叫的详细信息?这听起来像是对
ContentObserver
的有效使用。在此之前对此的尝试:
我建议您使用idle方法,只需跟踪数据库、变量或首选项中的状态(因此,无论何时,只要手机从OFFHOOK转到idle,您就知道通话结束,但当它从idle转到idle,您就什么也不做了)
祝你好运