diff --git a/bin/classes.dex b/bin/classes.dex index ba9cf94..bffd028 100644 Binary files a/bin/classes.dex and b/bin/classes.dex differ diff --git a/bin/classes/usbong/android/questionloader/MainActivity$1.class b/bin/classes/usbong/android/questionloader/MainActivity$1.class index 7748a6a..15848f9 100644 Binary files a/bin/classes/usbong/android/questionloader/MainActivity$1.class and b/bin/classes/usbong/android/questionloader/MainActivity$1.class differ diff --git a/bin/classes/usbong/android/questionloader/MainActivity$2.class b/bin/classes/usbong/android/questionloader/MainActivity$2.class index 1fba1e6..b025e15 100644 Binary files a/bin/classes/usbong/android/questionloader/MainActivity$2.class and b/bin/classes/usbong/android/questionloader/MainActivity$2.class differ diff --git a/bin/classes/usbong/android/questionloader/MainActivity.class b/bin/classes/usbong/android/questionloader/MainActivity.class index ae9d1c0..324702c 100644 Binary files a/bin/classes/usbong/android/questionloader/MainActivity.class and b/bin/classes/usbong/android/questionloader/MainActivity.class differ diff --git a/bin/resources.ap_ b/bin/resources.ap_ index 2493ea7..de69185 100644 Binary files a/bin/resources.ap_ and b/bin/resources.ap_ differ diff --git a/src/usbong/android/questionloader/ChineseDBAdapter.java b/src/usbong/android/questionloader/ChineseDBAdapter.java index f7656ae..9e05dcc 100644 --- a/src/usbong/android/questionloader/ChineseDBAdapter.java +++ b/src/usbong/android/questionloader/ChineseDBAdapter.java @@ -29,22 +29,23 @@ public class ChineseDBAdapter { public static final String KEY_ROWID = "_id"; - public static final String KEY_WORD = "word"; - public static final String KEY_DEF = "def"; + public static final String KEY_WORD = "WORD"; + public static final String KEY_DEF = "DEF"; + public static final String KEY_READING = "READING"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; private static final String DATABASE_NAME = "ChineseDict"; private static final String SQLITE_TABLE = "cdict"; - private static final int DATABASE_VERSION = 1; + private static final int DATABASE_VERSION = 2; private final Context mCtx; private static final String DATABASE_CREATE = "CREATE TABLE if not exists " + SQLITE_TABLE + " (" + KEY_ROWID + " integer PRIMARY KEY autoincrement," + KEY_WORD + "," - + KEY_DEF + ");"; + + KEY_DEF + "," + KEY_READING + ");"; // UTILITY TABLE HELPER CLASS @@ -95,13 +96,14 @@ public void close() { // ACTIONS - public long createEntry(String word, String def) { + public long createEntry(String word, String def, String reading) { // INSERT ContentValues initialValues = new ContentValues(); initialValues.put(KEY_WORD, word); initialValues.put(KEY_DEF, def); + initialValues.put(KEY_READING, reading); // parameters // mDb.insert(table, nullColumnHack, values); @@ -126,11 +128,11 @@ public Cursor fetchDefByWord(String inputText) throws SQLException { if (inputText == null || inputText.length() == 0) { mCursor = mDb.query(SQLITE_TABLE, new String[] { KEY_ROWID, - KEY_WORD, KEY_DEF }, null, null, null, null, null); + KEY_WORD, KEY_DEF, KEY_READING }, null, null, null, null, null); } else { mCursor = mDb.query(true, SQLITE_TABLE, new String[] { KEY_ROWID, - KEY_WORD, KEY_DEF }, KEY_WORD + " like '%" + inputText + KEY_WORD, KEY_DEF, KEY_READING }, KEY_WORD + " like '%" + inputText + "%'", null, null, null, null, null); } if (mCursor != null) { @@ -146,7 +148,7 @@ public Cursor fetchAll() { // mDb.query(table, columns, selection, selectionArgs, groupBy, having, orderBy) Cursor mCursor = mDb.query(SQLITE_TABLE, new String[] { KEY_ROWID, - KEY_WORD, KEY_DEF }, null, null, null, null, null); + KEY_WORD, KEY_DEF, KEY_READING }, null, null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); diff --git a/src/usbong/android/questionloader/MainActivity.java b/src/usbong/android/questionloader/MainActivity.java index 9298c39..a1edd50 100644 --- a/src/usbong/android/questionloader/MainActivity.java +++ b/src/usbong/android/questionloader/MainActivity.java @@ -699,10 +699,11 @@ private boolean dictContains(String word) readUrlContentAsString = NetUtil.readUrlContentAsString(url); ObjectMapper mapper = new ObjectMapper(); List map = mapper.readValue(readUrlContentAsString, List.class); - System.out.println("Korean here " + map.get(0).get("DEF").toString()); - if (inQuestion(word, map.get(0).get("DEF").toString())) //save it to local + //System.out.println("Korean here " + map.get(0).get("DEF").toString()); + String full = map.get(0).get("DEF").toString()+"\n"+map.get(0).get("READING").toString(); + if (inQuestion(word, full)) //save it to local { - dbHelper.createEntry( word, map.get(0).get("DEF").toString()); + dbHelper.createEntry( word, map.get(0).get("DEF").toString(), map.get(0).get("READING").toString()); System.out.println("Entry created"); cursor.close(); return true; @@ -713,8 +714,9 @@ private boolean dictContains(String word) System.out.println("Cursor is not empty"); if (cursor.moveToFirst()) { do { - String dir = cursor.getString(cursor.getColumnIndex("def")); - if (inQuestion(word, dir)) + String full = cursor.getString(cursor.getColumnIndex("DEF")) + "\n" + cursor.getString(cursor.getColumnIndex("READING")); + //String dir = cursor.getString(cursor.getColumnIndex("def")); + if (inQuestion(word, full)) { cursor.close(); return true; @@ -918,8 +920,10 @@ else if (language.equalsIgnoreCase("korean")) Intent i = new Intent(getApplicationContext(), ResultPage.class); i.putExtra("score", totalScore); i.putExtra("language", language); + dbHelper.close(); startActivity(i); MainActivity.this.finish(); + //Switch to scoreboard } @@ -1115,6 +1119,13 @@ public String makeBold(ArrayList index, String s) return sb.toString(); } + + @Override + public void finish() + { + dbHelper.close(); + super.finish(); + } public static String postFormDataToUrl(String url, String data) throws Exception { InputStream is = null;