Search code examples
androidandroid-studiobundleparcelable

Why getExtra() from Bundle is null when but bundle mMap has got this value?


As above in question, why?

code screenshot which describes this

Send data to other activity:

private void replaceActivity(LoginModel loginModel) {
    Context context = activity.getApplicationContext();
    Intent intent = new Intent(context, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.putExtra("accessKey", loginModel.getAccessKey());
    intent.putExtra("loginData", loginModel.getUserData());
    context.startActivity(intent);
    activity.overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
}

Solution

  • Step 1: Pass Data in intent

    private void replaceActivity(LoginModel loginModel) {
        Context context = activity.getApplicationContext();
        Intent intent = new Intent(context, MainActivity.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        intent.putExtra("accessKey", loginModel.getAccessKey());
        intent.putExtra("loginData", loginModel.getUserData());
        context.startActivity(intent);
        activity.overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
    }
    

    Step 2: Get Data in MainActivity

    String accessKey = getIntent().getStringExtra("accessKey");
    UserData userData = getIntent.getParcelableArrayExtra("loginData");