2012-12-06 6 views
0

내 안드로이드 응용 프로그램 용 XML 설정 파일이 있습니다. 응용 프로그램이 게시 될 때 응용 프로그램과 함께 게시해야하는 일부 기본값이 있습니다. 사용자가 설정을 변경 한 후에는이 설정 파일의 값을 변경해야합니다. XML 자산 파일을 사용하여이 기능을 구현합니다. 이 파일에는 몇 가지 기본값이 있습니다. 또한 앱을 게시하면 기기에도 복사됩니다. 그러나이 파일에 쓸 때 파일이 변경되지 않은 것 같습니다. 파일 관리자를 사용하고 장치에서 내 파일을보고이 파일이 변경되지 않았으며 기본값이 있는지 확인하십시오. 내가 monondroid을 사용하고 있는데 이것이 내가 내 xmlsetting 파일에 쓰기 위해 사용하는 코드입니다 :android 응용 프로그램에 대한 설정 파일

public bool writeToFile (string newXmlContent) 
     { 
      try { 
       Stream sw= Application .Context .OpenFileOutput (AppConstants .xmlSettingFileName , 
                   FileCreationMode .Private ); 
       StreamWriter stw= new StreamWriter (sw); 
       stw.Write (newXmlContent); 
       stw.Flush(); 
       XmlContent = newXmlContent ; 
       stw.Close(); 
       sw=null; 
       return true; 

      } catch (Exception ex) { 
       Common .HandleException (ex); 
       return false ; 
      } 

     } 

이 문제점은 무엇입니까?

답변

0

나는 응용 프로그램에 대한 설정을 설정 페이지를 구현하고 사용하는 가장 좋은 방법은 환경 설정에서 사용하고있는 것을 발견 자세한 내용은

developer.android.com/design/patterns/settings.html

developer.android.com/guide/topics/ui/settings.html

210 있지만 몸이 propose.to 쓰기에 대한 설정 file.can 사용 자산을 구현하는 자산 파일을 읽는 것은 응용 프로그램 클래스를 무시하고 SD 또는 장치에이 클래스의 oncereate에서 자산 파일을 복사해야합니다 원한다면 이 파일로 작업 할 수 있습니다.

2

어떤 이유로 든 inbuilt 기능을 사용하지 않으시겠습니까?

나는 이런 식으로 어떤 변화 지속성 값을 검색 :

var prefs = Application.Context.GetSharedPreferences("MyApp", FileCreationMode.Private); 
var somePref = prefs.GetString("PrefName", null); 

그들을 저장하기 :

var prefEditor = prefs.Edit(); 
prefEditor.PutString("PrefName", "Some value"); 
prefEditor.Commit(); 
+1

prefEditor.Commit()을 추가해야했습니다. PutString 명령 뒤에 줄을 써서 값을 고정시킵니다. – Fontanka16

+1

건배; 업데이트되었습니다. – manadart