私はクラスAを持っていますこのクラスは他のクラスを拡張または実装していません。私はクラスBを持っていますが、このクラスは他のクラスを拡張したり実装したりしません。SharedPreferencesを初期化できません
私のクラスBを単独SharedPreferences
を管理するために使用されます。ここでは
private static SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(mContext);
はクラスBで問題方法です:
public static void setCurrentUsersEmail(String email){
sharedPreferences.edit().putString("userEmail",email).commit();
}
今クラスAは、データベース・マネージャであるとユーザーを格納する必要があります後で使用するためにSharedPreferences
にメールしてください。
java.lang.ExceptionInInitializerError at com.test.Android.MySharedPrefs.setCurrentUsersEmail(MySharedPrefs.java:0)
私はこれは私couldn起こる理由としては本当に混乱しています:私はエラーを取得するクラスAのコードを実行しようとすると、しかし `
MySharedPrefs.setCurrentUsersEmail(currentUsersEmail);
:私は、次のコードでこれを行いますどちらか一方を検索した後で解決策を見つけることができません。他のアクティビティでsharedPreferencesクラスを使用しています。それは活動上の問題ですか?
ご迷惑をおかけして申し訳ありません。
() 'メソッド – Aryan
だから私は、 'setCurrentUsersEmail(currentUsersEmail)'をrecyclerviewアダプタから呼び出します。これは、データベースがチェックされ、次にSharedPreferencesが呼び出されるクラスAに移動します。 sharedPreferencesが最初に作成されるとき、私はMainActivityのメソッドを呼び出してコンテキストデータを取得します。私はコンテキストがこのインスタンスで送信されているとは思わない – memoryManagers