diff options
| author | yi.jang <yi.jang@lge.com> | 2013-05-16 09:20:12 +0900 |
|---|---|---|
| committer | Paul Westbrook <pwestbro@google.com> | 2013-08-09 11:50:27 -0700 |
| commit | a6745514643f66741229a0cca3927931bdfa47b3 (patch) | |
| tree | c9d437aa9af98ecbd27baa41f263b774579927a0 /src | |
| parent | 5673236ebe98bbbc47c433d9f08e54a4f8f5d282 (diff) | |
| download | android_packages_apps_Email-a6745514643f66741229a0cca3927931bdfa47b3.tar.gz android_packages_apps_Email-a6745514643f66741229a0cca3927931bdfa47b3.tar.bz2 android_packages_apps_Email-a6745514643f66741229a0cca3927931bdfa47b3.zip | |
Use DatabaseUtils method instead of query()
Use DatabaseUtils.longForQuery() method instead of SQLiteDatabase.query().
This reduces processing cost of database cursor.
Change-Id: Ibe53645b32a4de1ab6518f879e564ddf8f75d822
Conflicts:
src/com/android/email/provider/EmailProvider.java
Diffstat (limited to 'src')
| -rw-r--r-- | src/com/android/email/provider/EmailProvider.java | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/com/android/email/provider/EmailProvider.java b/src/com/android/email/provider/EmailProvider.java index fa340b733..155b6b1b8 100644 --- a/src/com/android/email/provider/EmailProvider.java +++ b/src/com/android/email/provider/EmailProvider.java @@ -37,6 +37,7 @@ import android.database.MatrixCursor; import android.database.MergeCursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; +import android.database.DatabaseUtils; import android.net.Uri; import android.os.AsyncTask; import android.os.Binder; @@ -415,17 +416,13 @@ public class EmailProvider extends ContentProvider { } // If we have accounts, we're done - Cursor c = mainDatabase.query(Account.TABLE_NAME, EmailContent.ID_PROJECTION, null, null, - null, null, null); - try { - if (c.moveToFirst()) { - if (MailActivityEmail.DEBUG) { - LogUtils.w(TAG, "restoreIfNeeded: Account exists."); - } - return; // At least one account exists. - } - } finally { - c.close(); + if (DatabaseUtils.longForQuery(mainDatabase, + "SELECT EXISTS (SELECT ? FROM " + Account.TABLE_NAME + " )", + EmailContent.ID_PROJECTION) > 0) { + if (MailActivityEmail.DEBUG) { + LogUtils.w(TAG, "restoreIfNeeded: Account exists."); + } + return; } restoreAccounts(context, mainDatabase); |
