アプリケーションが起動すると、強制的に強制終了されます。ユーザーが既にログインしているかどうかを確認するときに強制終了する
私はlogcatをチェックしましたし、これは誤りです:
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean prefs.UserSession.isUserLoggedin()' on a null object reference
これはカントー起こっているなぜ私はAndroidの開発に関する初心者ですので、私は表示されません:(
これは私のAuthentication.java(これはアプリケーションの起動時つもり開かれている最初のアクティビティ/クラスです)
...
import prefs.UserInfo;
import prefs.UserSession;
...
public class Authentication extends AppCompatActivity {
private UserSession session;
private UserInfo userInfo;
...
@Override
protected void onCreate(Bundle savedInstanceState) {
...
if(session.isUserLoggedin()){
startActivity(new Intent(this, Mainpage.class));
finish();
}
...
です
これは、あなたが活動の状況などのパラメータを使用している私のUserSession.java(セッションを処理するクラス)あなたのコードで
...
import android.content.Context;
import android.content.SharedPreferences;
public class UserSession {
....
private static final String KEY_IS_LOGGED_IN = "isloggedin";
SharedPreferences prefs;
SharedPreferences.Editor editor;
Context ctx;
public UserSession(Context ctx) {
this.ctx = ctx;
prefs = ctx.getSharedPreferences(PREF_NAME, ctx.MODE_PRIVATE);
editor = prefs.edit();
}
public void setLoggedin(boolean isLoggedin){
editor.putBoolean(KEY_IS_LOGGED_IN, isLoggedin);
editor.apply();
}
public boolean isUserLoggedin(){return prefs.getBoolean(KEY_IS_LOGGED_IN, false);}
}
'session'は'私はそれを初期化してきました –
null'なので '民間UserSessionセッションです;' –
[オブジェクトの作成](https://docs.oracle.com/javase/tutorial/java/javaOO/objectcreation.html) – adneal