मैंने अपने एंड्रॉइड ऐप में डेटाबेस टेबल बनाया है। मैं इस प्रश्न का प्रयोग किया:एंड्रॉइड - बुलियन बग के साथ ContentValue के साथ डेटाबेस?
CREATE TABLE foo (_id INTEGER PRIMARY KEY AUTOINCREMENT, mybool BOOLEAN)
से मैं मेज पर सड़क जोड़ी गई, कि mybool
का मूल्य true
हो जाएगा।
मैं तालिका में मूल्य देखने के लिए sqlite3 कमांड भाग गया, और मैंने देखा:
_id | mybool
----------------------
1 | 1
कि corret है, true
मान 1
अजीब बात पढ़ने में है करने के लिए बन गया। मुझे लगता है कि जैसे तालिका पढ़ें:
ContentValues values = new ContentValues();
Cursor cursor = db.rawQuery("SELECT * FROM foo", null);
DatabaseUtils.cursorRowToContentValues(cursor, values);
तब मैं अजीब परिणाम प्राप्त:
values.getAsBoolean("mybool"); // return false - WRONG
values.getAsInteger("mybool"); // return 1 = true - CORRECT
मैं बूलियन मान प्राप्त करने की तरह कोड का उपयोग करें:
values.getAsInteger("mybool") != 0;
लेकिन यह अजीब बात है।
मुझे getAsBoolean
फ़ंक्शन में हमेशा क्यों मिलता है? ContentValues
कक्षा में कोई बग है? क्या किसी और को भी यह समस्या हो रही है?
मैं मानता हूँ! मैं आपको अनुमान लगा रहा हूं [इसकी सूचना दी गई है) (https://code.google.com/p/android/issues/detail?id=54600) ... – gengkev