2012-03-07 7 views
2

ファイル用のディレクトリを作成できませんでしたサービスから共有設定ファイルを作成しようとしたとき、私は次のエラーを取得しています:エラー - SharedPreferencesは

「SharedPreferencesファイル/ dbdataの/データベース用のディレクトリを作成できませんでした/dimappers.android.pub/shared_prefs/PubStore2.xml "

私はSamsung Galaxy S I9000を使用してテストしていますが、この携帯電話の問題についてはどこで読んでいますか?しかし、私は私が呼び出した後Immeditately

String s = getSharedPreferences(Constants.SaveDataName, MODE_PRIVATE).getString(Constants.SaveDataName, ""); 

を呼び出す場合

Editor editor = getSharedPreferences(Constants.SaveDataName, MODE_PRIVATE).edit(); 
editor.putString(Constants.SaveDataName, xmlString); 
editor.commit(); 

(...確かにこれ以上を動作させることはできませんが)、それは正常な活動の中でいくつかの点で仕事をしていた誓いますコミットすることはできますが、アプリを再起動してもそれを見つけることはできません。

+0

これは何もないかもしれませんが、あなたは 'MODE_PRIVATE'以外のモードを試しましたか? – Rasive

+0

全体が少し矛盾しているようです(私のお気に入り...) - デバッグモードを使用しないともっとうまくいくようです。それでも同じエラーメッセージが表示されますが、サービスを再起動するとデータがロードされます。私は調査を続けます... –

+0

すべてがうまくいかない場合は、クラスがアクティビティであるとみなして、常に 'PreferenceManager.getDefaultSharedPreferences(this)'を使用することができます – Rasive

答えて

0

私の携帯電話(Samsung Galaxy S I9000)に見えましたが、まだそのエラーが表示されていましたが、別の電話で同じコードを実行してもエラーメッセージが表示されませんでした。

+0

これを確認することができます:同じ問題は私のアプリケーションでI9000他のデバイスでは使用できません。クラッシュするエラーではありませんが、アプリケーションはSharedPreferencesを保存できません。 –

+0

私と同じです(さらに私にエラーを与えたファイルはGAnalytics設定ファイルでした)。これは公開アプリでのみ発生していました。デバイスを再起動して問題を解決しました。 – fillobotto