如何实时拨出电话持续时间?

时间:2013-06-07 11:21:10

标签: android phone-state-listener

我有一项活动,只要有拨出电话就会被带到前面。我需要实时传出呼叫持续时间并在我的活动textview中显示。 如果呼叫是摘机,这可以获得当前持续时间吗?

2 个答案:

答案 0 :(得分:2)

这可以做到。你只需要Android Call Log Content Provider进行间谍活动。要使用内容提供商,只需调用getContentResolver()方法即可。获得内容解析程序对象后,可以使用SQL或任何内置查询函数对其进行查询。例如,在我的Android应用程序中,我使用了一段代码如下:

    String[] strFields = {
        android.provider.CallLog.Calls.NUMBER, 
        android.provider.CallLog.Calls.TYPE,
        android.provider.CallLog.Calls.CACHED_NAME,
        android.provider.CallLog.Calls.CACHED_NUMBER_TYPE,
        android.provider.CallLog.Calls.DURATION 
        };
String strOrder = android.provider.CallLog.Calls.DATE + " DESC"; 

Cursor mCallCursor = getContentResolver().query(
        android.provider.CallLog.Calls.CONTENT_URI,
        strFields,
        null,
        null,
        strOrder
        );

答案 1 :(得分:0)

Sub HideCells()
    Dim r&
    Application.ScreenUpdating = False
    For r = 2 To 300
        Rows(i).EntireRow.Hidden = Not CBool(Cells(r, "U"))
    Next
    Application.ScreenUpdating = True
End Sub