【问题标题】:Android Query Call Log fail to readAndroid查询通话记录读取失败
【发布时间】:2012-11-29 11:30:52
【问题描述】:

我是 android SDK 的新手,我正在尝试从通话日志中读取以获取使用以下代码进行的最后一次通话的信息​​。

public class MainActivity extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    String sthh=getdur();
}

public String getdur(){
    String[] projection = new String[] {
            Calls.DATE
            , Calls.DURATION
            , Calls.NUMBER
    };
    ContentResolver cr = getContentResolver();
    Cursor mCur = cr.query(android.provider.CallLog.Calls.CONTENT_URI, projection, null, null, Calls.DATE + " ASC");
    mCur.moveToLast();
    String dur = mCur.getString(mCur.getColumnCount());
    mCur.close();
    return dur;
}

但是,我在 logcat 中得到 RuntimeException 和以下内容。

E/CursorWindow(21773):无法从具有 473 行 3 列的 CursorWindow 读取第 472 行第 3 列。

我的代码有什么问题?非常感谢。

【问题讨论】:

    标签: cursor android-contentresolver calllog


    【解决方案1】:

    已解决,添加即可

    Cursor mCur =null;
    

    之前

    mCur = cr.query.......
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-12
      • 2014-07-14
      相关资源
      最近更新 更多