还有cursor.getString(cursor.getColumnIndexOrThrow(Calls.DATE))
报java.lang.IllegalArgumentException: column 'date' does not exist
这个错误

解决方案 »

  1.   

    拨号可以发意图跳转系统拨号器intent.setAction(Intent.ACTION_CALL);
    intent.setData(Uri.parse("tel:xxxxxx"));
    需要添加权限
    <uses-permission android:name="android.permission.CALL_PHONE" />系统有提供通话记录的ContentProvider,相关类Callsprivate void showCallLog() {
    ContentResolver cr=context.getContentResolver();
    String[] projection = { Calls._ID, Calls.NUMBER, Calls.TYPE,
    Calls.DATE, Calls.DURATION };
    Cursor c = cr.query(uri, projection, null, null, null);
    if (c != null) {
    while (c.moveToNext()) {
    for (String col : projection) {
    Log.d("info",
    col + ":" + c.getString(c.getColumnIndex(col)));
    }
    Log.d("info", "----------------------");
    }
    c.close();
    }
      

  2.   

    时间转换怎么回事,
    public static String getStrTime(String cc_time) 
    {  
    String re_StrTime = null; 
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒"); 
    // 例如:cc_time=1291778220 
    long lcc_time = Long.valueOf(cc_time); 
    re_StrTime = sdf.format(new Date(lcc_time * 1000L));
    return re_StrTime;
    }这个方法转换出来的东西也不对呀