현재 카카오톡과 같은 모바일 채팅 어플을 개발중입니다.

채팅내용은 db에 저장되며, A라는 액티비티에서 커서아답터를 이용하여 리스트뷰를 구성하고 디비에서 호출하는 등의 작업을 하고 있습니다.


그리고 채팅을 할 때 마다 대화내용이 실시간으로 db에 저장됨과 동시에 리스트뷰에서 보여져야 하기 때문에 브로드캐스트 리시버(편의상 B 액티비티라 하겠습니다) 를 작성하였고, 브로드캐스팅이 될 때 마다 B에서 A의 adapter를 호출하는 방식으로 구성하려 합니다.


가령 이런식이 되겠지요.


Aactivity.mCursor.requery ( );

Aactivity.adapter.notifyDataSetChanged ( );


제 짧은 생각으로는 B에서 A의 커서를 호출하여 db를 requery 해주고, adapter에 데이터가 변경되었다는 notifyDataSetChanged을 호출해주면 될 것이라 생각하는데 계속 널포인트 에러가 생성되기도 하구요.

다른 방식으로 구현하면 좋지 않을까 하는데 마땅히 생각나지 않습니다.


더욱 좋은 방식이 있거나 혹은 해결 방안이 있으면 도움 부탁드립니다. 감사합니다.