public void addMessage(SQLiteDatabase db, Message message) { try { // ID INTEGER PRIMARY KEY,FROMJID TEXT,TOJID TEXT,TIME LONG,TEXT TEXT, ATTACHID TEXT, // ATTACHTYPE INTEGER, STATE INTEGER, EXTRA_TYPE TEXT, EXTRA_JSON TEXT, SUBJECT TEXT String fromJid = message.getFrom().split("@")[0]; String toJid = message.getTo().split("@")[0]; if (message.getId() == 0) { db.execSQL( "INSERT INTO " + TABLE_CHAT + "(FROMJID, TOJID, TIME, TEXT, STATE, EXTRA_TYPE, EXTRA_JSON, SUBJECT) VALUES (?, ?, ?, ?, ?, ?, ?, ?)", new Object[] { fromJid, toJid, message.getTimestamp().getTime(), message.getBody(), message.getState(), message.getExtraType(), message.getExtraJson(), message.getSubject() }); } else { db.execSQL( "INSERT INTO " + TABLE_CHAT + "(ID, FROMJID, TOJID, TIME, TEXT, STATE, EXTRA_TYPE, EXTRA_JSON, SUBJECT) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)", new Object[] { message.getId(), fromJid, toJid, message.getTimestamp().getTime(), message.getBody(), message.getState(), message.getExtraType(), message.getExtraJson(), message.getSubject() }); } } catch (SQLException e) { Log.e(TAG, "Error adding new message:" + e.getMessage(), e); } }