2

をクエリしようとすると、一部のデバイスで RuntimeException が発生することがありますCallLog.CallsCallLog.CallswithをクエリしcontentProviderて、最後の呼び出しを取得します。

時々このエラーが発生するのはなぜですか? これはシステムのバグ/問題だと思いますか?

Caused by: android.database.sqlite.SQLiteException: no such column: sdn_alpha_id: ,
while compiling: SELECT sns_receiver_count, numberlabel, service_type, matched_number, 
type, contactid, lookup_uri, mime_type, sdn_alpha_id, sp_type, messageid, fname, 
imnum, lname, sns_pkey, account_id, formatted_number, call_out_duration, number,     
geocoded_location, account_name, is_read, raw_contact_id, source_data, cdnip_number,    
state, _subject, date, real_phone_number, source_package, _id, sns_tid, name, 
normalized_number, name_reversed, _data, photo_id, logtype, reject_flag, has_content, 
m_content, country_code, frequent, cityid, bname, countryiso, numbertype, new, 
duration, cnap_name, address, e164_number, voicemail_uri FROM logs WHERE 
(logs.logtype=100 OR logs.logtype=110 OR logs.logtype=500 OR logs.logtype=800 OR 
logs.logtype=900 OR logs.logtype=1000 OR (logs.logtype=200 AND number NOT IN (SELECT 
number FROM logs WHERE number LIKE '%@%')) OR logs.logtype=300) AND ((((type != '4')))) 
ORDER BY date DESC
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:180)
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:136)
at android.content.ContentProviderProxy.query(ContentProviderNative.java:358)
at android.content.ContentResolver.query(ContentResolver.java:317)

CallLog を照会する私のコードは次のとおりです。

// get last entry in callLog
Cursor c = context.getContentResolver().query(Calls.CONTENT_URI, null, null, 
null, Calls.DATE + " DESC");
4

1 に答える 1