Android / Blackberry10呼叫信息未显示

时间:2014-03-14 02:42:27

标签: java android blackberry-10

我制作了一个Android应用,我正试图移植到黑莓10设备上。目前,应用程序的所有功能都工作,除了一个,我尝试从手机获取有关最近呼叫的信息。这在android上工作正常,但似乎不适用于我使用的黑莓10模拟器。这是我的部分代码:

final TextView time = (TextView) findViewById(R.id.AddNewEditTextTime);
final TextView date = (TextView) findViewById(R.id.AddNewEditTextDate);
final TextView number = (TextView) findViewById(R.id.AddNewEditTextNumber);

// fields to select.
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.DATE};

// only incoming.
String strSelection = android.provider.CallLog.Calls.TYPE + " = "
        + android.provider.CallLog.Calls.INCOMING_TYPE;

// most recent first
String strOrder = android.provider.CallLog.Calls.DATE + " DESC";

// get a cursor.
Cursor mCallCursor = getContentResolver().query(
    android.provider.CallLog.Calls.CONTENT_URI, // content provider
                                                        // URI
    strFields, // project (fields to get)
    strSelection, // selection
    null, // selection args
    strOrder // sortorder.
    );

if (mCallCursor.moveToFirst()) {
    String a = mCallCursor.getString(mCallCursor
            .getColumnIndex("date"));
    String b = mCallCursor.getString(mCallCursor
            .getColumnIndex("number"));
    mCallCursor.close();

    SimpleDateFormat dateF = new SimpleDateFormat("dd-MMM-yyyy");
    SimpleDateFormat timeF = new SimpleDateFormat("HH:mm");
    String dateString = dateF.format(new Date(Long
            .parseLong(a)));
    String timeString = timeF.format(new Date(Long
            .parseLong(a)));
    time.setText(timeString);
    date.setText(dateString);
    number.setText(b);
}

永远不会在blackberry 10设备上输入if(mCallCursor.moveToFirst())语句,但在Android上运行正常。有什么东西我缺少/做错了,或者没有办法在黑莓10设备上使用这样的android.provider函数?

1 个答案:

答案 0 :(得分:1)

目前尚不支持访问通话记录

  

这不受支持,Android API并未联系到这些数据。

     

编辑:通常,如果有相同的原生API,则会支持Android中相应的API。 Android API几乎总是使用本机等价物来实现它。 AFAIK没有本地通话记录API。

bbenninger support forums