ShreadPreferences 관련 질문드립니다.


// 값 불러오기
public Boolean checkPreferences(String key){
    return pref.contains(key);
}


// 값 불러오기
public String getPreferences(String key){
    return pref.getString(key, "");
}

// 값 저장하기
public void savePreferences(String key, String value){
    SharedPreferences.Editor editor = pref.edit();
    editor.putString(key,value);

    editor.commit();
}

// 값(Key Data) 삭제하기
public void removePreferences(String key){
    SharedPreferences.Editor editor = pref.edit();
    editor.remove(key);
    editor.commit();
}

// 값(ALL Data) 삭제하기
public void removeAllPreferences(){
    SharedPreferences.Editor editor = pref.edit();
    editor.clear();
    editor.commit();
}

값 저장하기

public void savePreferences(String key, String value){ SharedPreferences.Editor editor = pref.edit(); editor.putString(key,value); editor.commit(); }

이 부분에서 대부분 putString(key,value) 식으로 값을 저장하여 불러오는데

저는 ShreadPreferences를 사용하여 메인화면에 카운트발생시 사운드를 구현하고 싶습니다.

현재 메인화면에 카운트는 구현해 놓은 상태입니다.

사운드를 구현시 어떻게 값을 넣어서 저장하고 값을 불러오기 부분이 어떤식으로 해야하는지 궁금하고 4가지 사운드 있는데 4가지 사운드중 원할 때 마다 한 가지만 선택하여 사용하고 싶습니다.

  • 2016년 10월 08일에 작성됨

조회수 127


1 답변


SharedPreferences에 저장할 수 있는 데이터는 booleans, floats, ints, longs, strings 입니다. 따라서 음원 자체를 SharedPreferences 저장하는 것은 적절해보이지 않습니다. 또한 올려주신 내용을 구현하는데 있어서 SharedPreferences가 필요하지 않기도 합니다.

카운트가 발생한다는 것이 정확히 어떤 의미인지 모르겠지만 특정 조건일 때 음원을 재생하고 싶다는 것으로 이해를 하면 재생하려는 네개의 음원을 res/raw/ 폴더에 넣으신 후 MediaPlayer를 이용해서 음원을 재생하세요.

MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.sound_file_1);
mediaPlayer.start();

관련해서 아래 링크를 읽어보세요.


로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close