폰에 있는 연락처를 받아서 새로운 DB를 생성하여 저장하고 리스트 뷰로 출력하는 앱을 만드려고 합니다.


연락처를 받아와서 리스트뷰에 출력하는건 됩니다만


연락처를 DB에 저장하는 부분에서 응답이 없어서 답답한 마음에 올려봅니다.


public void insert(Cursor cursor){

ContentValues cv = new ContentValues();

mDB.beginTransaction();

if(cursor.moveToFirst()){

while(cursor.moveToLast())

cv.put(NAME, cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)));

cv.put(PHONENUMBER, cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)));

cursor.moveToNext();

}

mDB.setTransactionSuccessful();

mDB.endTransaction();

mDB.insert("phonedb", null, cv);

}


이부분이 insert부분 입니다. 인자로 cursor를 받아서 ContentValues로 put메소드를 이용해 하나씩 넣고 insert과정에서 시스템이 멈춰 버립니다. 연락처가 100개정도 되는데 한번에 insert하여 시스템이 먹통이 되는지 모르겠지만 해결 방안이 있을지


고수님들 알려주세요 부탁드려요!!