안드로이드 스튜디오와 녹스를 사용하고 있습니다.
주소록보기 버튼을 클릭하면 앱이 꺼지는 오류가 있는데 이유를 도저히 모르겠습니다
MainActivity.java
        selectaddress.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                addressview.setVisibility(View.VISIBLE);//리스트뷰 보여주기
                if(dbHelper ==null){//dbhelper가 널이면 초기화
                    dbHelper = new DBHelper(MainActivity.this, dn, null, 1);
                }
                List people = dbHelper.getAllPersonData();//데이터 가져오기
                addressview.setAdapter(new Adapter(people, MainActivity.this));//데이터를 리스트 뷰에 뿌리기
            }
        });
    }
}
DBHelper.java
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.List;
public class DBHelper extends SQLiteOpenHelper {
    private Context context;
    public DBHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
        this.context = context;
    }
    @Override
    public void onCreate(SQLiteDatabase db) {
        // String 보다 StringBuffer가 Query 만들기 편하다고 한다.
        StringBuffer sb = new StringBuffer();
        sb.append(" CREATE TABLE TEST_TABLE ( ");
        sb.append(" _ID INTEGER PRIMARY KEY AUTOINCREMENT, ");
        sb.append("  NAME TEXT, CALL TEXT, MEMBER TEXT, ADDRESS TEXT, BIRTHDAY TEXT, NICKNAME TEXT)");
        // SQLite Database로 쿼리 실행
        db.execSQL(sb.toString());//추가,수정 또는 삭제를 실행시키라는 의미
        Toast.makeText(context, "Table 생성완료", Toast.LENGTH_SHORT).show();
    }
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        Toast.makeText(context, "버전이 올라갔습니다.", Toast.LENGTH_SHORT).show();
    }
    public void testDB() {
        SQLiteDatabase db = getReadableDatabase();//읽기전용으로 데이터 베이스이용
    }
    public void addPerson(Person person) {
        SQLiteDatabase db = getWritableDatabase();//데이터 베이스를 읽고 쓰기모드로 불러온다.
        StringBuffer sb = new StringBuffer();
        sb.append("INSERT INTO TEST_TABLE ( NAME, CALL, MEMBER, ADDRESS, BIRTHDAY, NICKNAME)");
        sb.append("VALUES (?, ?, ?, ?, ?, ?)"); //_id는 자동으로 증가해서 넣지 않음
        db.execSQL(sb.toString(), new Object[]{
                person.getName(), person.getCall(), person.getMember(), person.getAddress(), person.getBirthday(),
                person.getNickname()});
        Toast.makeText(context, "저장완료", Toast.LENGTH_SHORT).show();
    }
    public List getAllPersonData() {
        StringBuffer sb = new StringBuffer();
        sb.append("SELECT _ID, NAME, CALL, MEMBER, ADDRESS, BIRTHDAY, NICKNAME FROM TEST_TABLE");
        SQLiteDatabase db = getReadableDatabase();//데이터 베이스를 읽기모드로 불러온다.
        Cursor cursor = db.rawQuery(db.toString(), null);
        List people = new ArrayList();
        Person person = null;
        while (cursor.moveToNext()) {//moveToNext가 끝날때까지
            person = new Person();
            person.set_id(cursor.getInt(0));
            person.setName(cursor.getString(1));
            person.setCall(cursor.getString(2));
            person.setMember(cursor.getString(3));
            person.setAddress(cursor.getString(4));
            person.setBirthday(cursor.getString(5));
            person.setNickname(cursor.getString(6));
            people.add(person);
        }
        return people;
    }
}