2012-03-12 1 views
3

설치 후 처음으로 응용 프로그램을 실행할 때 데이터베이스 테이블을 만들어야합니다. 그렇다면 앱이 처음 설치 될 때 애플리케이션의 상태를 얻는 방법은 무엇입니까? 내가 SharedPreferences에 대해 들었지만 익숙하지 않다. 모든 코드 도움을 주셔서 감사 드리며 미리 감사드립니다 ...Android : 처음으로 애플리케이션을 처음 열 때 작업을 수행 하시겠습니까?

+1

이 유효한 질문이 아니다!. 안드로이드는 SQLiteDatabase 인스턴스를 호출 한 후 자동으로 SQLlite 데이터베이스를 생성합니다! – daigoor

+0

@daigoor : 앱이 설치되면 처음 설치시 데이터베이스 테이블에 값을 만들고 삽입하는 방법은 무엇입니까? –

+0

애플리케이션을 설치 한 후 열어야합니다. 그냥 원하는 값을 삽입하면 안드로이드 OS가 당신을 위해 데이터베이스 생성을 처리 할 것입니다. SQLite 데이터베이스 사용에 대한 추가 리소스를 찾으십시오. – daigoor

답변

3

SQLiteOpenHelper에는 데이터베이스가 존재하지 않아서 처음으로 만들어야하는 경우 호출되는 onCreate 메서드가 있습니다.

테이블에서 필요한 데이터로 데이터베이스를 만들고 초기화하려면이 옵션을 사용하십시오.

+0

첫 번째 실행시 데이터베이스를 만들면 올바른 대답입니다. 그러나 만약 당신이 뭔가를 다운로드 같은 다른 "첫 번째 검사를"필요가 OP와 함께 SharedPreferences 고려해야한다 –

+0

하지만 난 혼자 설치 후 응용 프로그램을 실행할 때 데이터베이스 테이블에 값을 삽입해야 ... –

+0

@Raman -Mystry onCreate 메서드를 사용하면 원하는 모든 쿼리를 실행할 수 있습니다. 먼저 테이블을 만든 다음 데이터로 테이블을 채 웁니다. – zaf

1

응용 프로그램의 데이터베이스에 값을 삽입하려는 경우 먼저이 같은 sharedPref에 값을 넣을 수 있습니다 실행

삽입하려고 처음 실행의 값을 검출 한 후
private static void SaveBooleanPreferences(String key, boolean value, Context context){ 
     SharedPreferences sharedPreferences = context.getSharedPreferences(PREFS_NAME,0); 
     SharedPreferences.Editor editor = sharedPreferences.edit(); 
     editor.putBoolean(key, value); 
     editor.commit(); 

    } 
    private static boolean getBooleanPreferences(String key, Context context){ 
     SharedPreferences sharedPreferences = context.getSharedPreferences(PREFS_NAME,0); 
     return sharedPreferences.getBoolean(key, false); 

    } 

데이터베이스에, 안드로이드 OS는 당신을 위해 데이터베이스를 생성 할 필요가 없습니다.

+0

+1 좋은 답변입니다. 나는 실제로이 코드를 다음과 같이 나에게 풀어 줬다. 고맙다. –

+0

@ Raman-Mystry : 이것이 올바른 대답인가? – daigoor

1

나는 다음과 같은 코드를 참조하여 해결했습니다

SharedPreferences prefs = getSharedPreferences("MyPreferences", Context.MODE_PRIVATE); 
boolean haveWeShownPreferences = prefs.getBoolean("HaveShownPrefs", false); 

if (!haveWeShownPreferences) 
{ 
    // launch the preferences activity 

} 
else 
{ 
    // we have already shown the preferences activity before 
} 

SharedPreferences prefs1 = getSharedPreferences("MyPreferences", Context.MODE_PRIVATE); 
SharedPreferences.Editor ed = prefs1.edit(); 
ed.putBoolean("HaveShownPrefs", true); 
ed.commit();` 
관련 문제