Ich habe eine Klasse erstellt, die mir bei der Authentifizierung hilft (Cookie in SharedPrefs speichern).Zeichenfolge (Cookie) in SharedPrefs speichern Ursache NullPointerException
public class Authentication extends Application {
String PREFS_NAME = "UserData";
String DEFAULT = "";
Context context;
public static SharedPreferences sharedPreferences;
public static SharedPreferences.Editor editor;
public static String token;
public Authentication(Activity context) {
this.context = context;
sharedPreferences = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
editor = sharedPreferences.edit();
token = sharedPreferences.getString("Cookie", DEFAULT);
}
//speichert Token in den Shared Preferences
public static void setToken(String token) {
Log.d("Cookie", token);
editor.putString("Cookie", token);
}
}
als ich den Anruf Authentication.setToken(token)
-Methode meine Antwort (RegisterActivity) Ich werde eine Nullpointer erhalten:
java.lang.NullPointerException: Attempt to invoke interface method 'android.content.SharedPreferences$Editor android.content.SharedPreferences$Editor.putString(java.lang.String, java.lang.String)' on a null object reference
Kann jemand von euch mir helfen, dieses prob zu lösen? Vielen Dank im Voraus
Schlüsselwort static von Verfahren entfernen 'setToken' und versuchen –
wo sind bekommst du 'String token' von? –
Ich denke, Sie rufen 'setToken()' ohne Aufruf von 'Authentication()' vor ... so wird Ihr 'Editor' nicht initialisiert – Opiatefuchs