Hi!
Currently, I'm using HTC Magic (1.5) and Acer Liquid (1.6) to test the
app.
my sample code snippet for API < 2.0:
for (int i = 0; i < 100; i++) {
Log.d(TAG,"iteracja " + i);
ContentValues personValues = new ContentValues();
personValues.put(Contacts.People.NAME, "Test" + i);
personValues.put(Contacts.People.STARRED, 0);
Uri newPersonUri =
Contacts.People.createPersonInMyContactsGroup(getContentResolver(),
personValues);
}
I did a few tests. Each time I changed NAME String in order to avoid
duplicates.
Results:
1) Acer Liquid (sync off) - 12 sec
2) Acer Liquid (sync on) - 30 sec
3) Acer Liquid (sync on) - 55 sec
4) Acer Liquid (sync on) - 35 sec
5) Acer Liquid (sync off) - 13 sec
1) HTC Magic (sync off) - 27 sec
2) HTC Magic (sync off) - stuck. log from logcat:
ERROR/CursorWindow(13459): need to grow: mSize = 1048576, size = 279,
freeSpace() = 162, numRows = 2789
ERROR/CursorWindow(13459): not growing since there are already 2789
row(s), max size 1048576
ERROR/CursorWindow(13459): The row failed, so back out the new row
accounting from allocRowSlot 2788
ERROR/Cursor(13459): Failed allocating fieldDir at startPos 0 row 2788
DEBUG/Cursor(13459): finish_program_and_get_row_count row 2213
then I turned the sync off and my application started running again
(without restarting the app)! took 30 sec to complete.
Even if we turn off sync on HTC Magic it takes a long time to simply
add empty contacts. Adding 5000 empty contacts (without any other
operations) would take 1500sec = 25min.
On 23 Mar, 11:55, timo prill <[email protected]> wrote:
> hi,
>
> which SDK version are you using? 1.5? 1.6? 2.0? 2.1?
> there were some changes to the contact api from 1.6 to 2.0...
>
> and maybe give a short snippet of how you insert the contacts to the
> database.
> maybe you do some (wrong) very time-consuming database-queries or you
> just missed something, because i have seen my code using the contact db
> implementation run way faster.. even with vcard-parsing & full blown
> contacts...on the htc magic
>
> cheers
>
> cpphool schrieb:
>
> > Hi!
>
> > I have some questions concerning importing contacts to the device,
> > which is extremely slow.
>
> > First of all, if you delete all your contacts, google sync will
> > restore it very quickly. However, when my app is adding contacts to
> > the device, it's very slow (a few contacts per second). Even if I add
> > almost empty contacts (with name only), it is a time-consuming
> > process.
>
> > If I turn google sync off, importing 5000 contacts can take 1-2 hours
> > (on HTC Magic). When google sync is on it can take up to 24hours. And
> > this happens despite the fact, that application for the whole time is
> > in the foreground, device is connected to charger and screen is on. I
> > checked the logcat to make sure my app is adding the contacts the
> > whole time, and it is.
>
> > I tried different methods and different devices. The results differ of
> > course, yet manually adding contacts is always significantly slower
> > that google sync. Is there any way that I can speed up the process? So
> > that importing 5000 contacts will take less than an hour.
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
To unsubscribe from this group, send email to
android-developers+unsubscribegooglegroups.com or reply to this email with the
words "REMOVE ME" as the subject.