android通话记录

时间:2011-03-29 08:08:50

标签: android

使用以下代码,显示的通话记录为空。为什么这样?

package fypj.c;

import java.security.Provider;
import java.util.ArrayList;   
import android.app.Activity;
import android.app.ListActivity;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.CallLog;
import android.provider.ContactsContract;
import android.provider.ContactsContract.Data;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;

public class c extends ListActivity {
    private SimpleCursorAdapter myAdapter; 

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);   

        String[] column = new String[] {android.provider.CallLog.Calls.CACHED_NAME, android.provider.CallLog.Calls.DURATION, android.provider.CallLog.Calls.TYPE};         
        int[] names = new int[] {R.id.CLName, R.id.CLDuration, R.id.CLType};         
        myAdapter = new SimpleCursorAdapter(this,android.R.layout.simple_list_item_2, cursor, column, names);         
        setListAdapter(myAdapter);  
    }
}

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <ListView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@android:id/list"
    />
    <TextView  
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 

    android:id="@+id/CLName"
    />
    <TextView  
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 

    android:id="@+id/CLType"
    />
    <TextView  
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 

    android:id="@+id/CLDuration"
    />
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

根据SimpleCursorAdapter

“不推荐使用此构造函数。 不鼓励使用此选项,因为它会导致在应用程序的UI线程上执行Cursor查询,从而导致响应能力较差甚至应用程序无响应错误。或者,使用带有CursorLoader的LoaderManager。 “

尝试替代方案以排除代码的任何问题。