마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

브로드캐스트(sms수신)에서 DB 사용

0 추천

브로드캐스트 리시버를 이용해서 문자가 오면 번호를 받아온 뒤 DB에서 그 번호 select 하는 기능을 구현하려고 해요.

번호를 받아오는 것까지는 아무 문제가 없는데 DB를 open하는 부분에서 에러가 납니다.

public class DBHandler_cardlist {
    private static Context ctx;
    private DBHelper_cardlist helper;
    private SQLiteDatabase db;
 
    public DBHandler_cardlist(Context ctx) {
        this.ctx = ctx;
        helper = new DBHelper_cardlist(ctx);
        <span style="color:#ffff00;"><strong>db = helper.getWritableDatabase();</strong></span> // DB가 open 됨
    }
 
    public void close() {
        helper.close();
    }
 
    public static DBHandler_cardlist open(Broadcast broadcast) throws SQLException {
        <span style="color:#ffff00;">DBHandler_cardlist handler = new DBHandler_cardlist(ctx);</span>
        return handler;
    }
     
    public Cursor select(String num){
        Log.d("subin", "num="+num);
        Cursor cursor=db.rawQuery("SELECT cardcom FROM cardlist WHERE num ='"+num+"';",null);
        cursor.moveToNext();
        return cursor;
    }
}

노랗게 색칠한 부분에서 에러가 나요ㅠㅠㅠㅠ

53 (580 포인트) 님이 2014년 2월 21일 질문

1개의 답변

0 추천
코드를 봐선 무한 재귀호출이 되는 것 같은데요.
익명사용자 님이 2014년 2월 21일 답변
...