Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android-单击提交按钮后接收来自不同活动的错误消息_Java_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

Java Android-单击提交按钮后接收来自不同活动的错误消息

Java Android-单击提交按钮后接收来自不同活动的错误消息,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我有一个由6个屏幕组成的过程(用户在前5个屏幕上进行选择,第6个屏幕是摘要和“提交”按钮),当我测试这个屏幕序列时,一切正常,除非…除非我在开始这个序列之前访问我的“更新日期”活动 如果我从主活动访问“UpcomingDate”活动,然后通过按“UpcomingDate”活动中的后退按钮立即返回主活动。然后我开始前面提到的屏幕序列。当我进入摘要页面并单击“提交”按钮(调用saveDataInputs()函数)时,我收到一条错误消息,表示它来自6个活动之前访问过的“UpcomingDate”活动。

我有一个由6个屏幕组成的过程(用户在前5个屏幕上进行选择,第6个屏幕是摘要和“提交”按钮),当我测试这个屏幕序列时,一切正常,除非…除非我在开始这个序列之前访问我的“更新日期”活动

如果我从主活动访问“UpcomingDate”活动,然后通过按“UpcomingDate”活动中的后退按钮立即返回主活动。然后我开始前面提到的屏幕序列。当我进入摘要页面并单击“提交”按钮(调用saveDataInputs()函数)时,我收到一条错误消息,表示它来自6个活动之前访问过的“UpcomingDate”活动。它就像“saveDataInputs()”函数中的某个东西试图调用“UpcomingDate”活动来启动。我是否在活动生命周期中遗漏了什么

这是我的错误消息:

2018-11-05 20:00:54.544 17388-17388/com.example.jacob.datenight E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.jacob.datenight, PID: 17388
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.Object.toString()' on a null object reference
    at com.example.jacob.datenight.UpcomingDateActivity$1.onDataChange(UpcomingDateActivity.java:78)
错误发生在我单击摘要活动上的Submit按钮后,该按钮会停止应用程序,因此不会将所有数据加载到数据库。当然,错误消息是NullPointerException,因为在UpComingDate活动中,我从firebase数据库中提取数据,但并非所有预期数据都在那里。所以这不是问题所在。我真的需要弄清楚,当我打算将它发送到主活动时,为什么它会发送到UpcomingDates活动

以下是我的总结活动中的代码:

public class SummaryLetsGoActivity extends AppCompatActivity implements com.example.jacob.datenight.MasterDrawerFragment.Callbacks {

private static final String TAG_MASTER_FRAGMENT = "TAG_MASTER_FRAGMENT";
private static final String TAG_DETAIL_FRAGMENT = "TAG_DETAIL_FRAGMENT";

private DrawerLayout drawerLayout;
private ActionBarDrawerToggle drawerToggle;

public String selectedDrivingOrUber;
public String selectedStartTime;
public String selectedEndTime;
public String selectedTimeHours;
public String selectedBudget;
public String budgetForYelp;
public String selectedPartySize;
public String selectedMood;
public String selectedActivities;
public String selectedDate;

public TextView drivingTextView;
public TextView budgetTextView;
public TextView startTimeTextView;
public TextView endTimeTextView;
public TextView totalHoursTextView;
public TextView partySizeTextView;
public TextView moodTextView;
public TextView activitiesTextView;
public TextView dateTextView;
public Button summaryNextBtn;
int randomInt1;
int randomInt2;

private UserProfile profile;
String userFirstName;
String userLastName;
String userPhoneNbr;
String userCommPref;

private DatabaseReference submissionsDatabaseRef;
private DatabaseReference profileDatabaseRef;
private FirebaseDatabase mFirebaseDatabase;
private FirebaseAuth mAuth;
private FirebaseAuth.AuthStateListener mAuthListener;
private String userId;
private String userEmail;
public String deviceRegistrationToken;
private ArrayList<YelpBusiness> yelpBusinessesArray = new ArrayList<>();
private ArrayList<YelpBusiness> yelpBusinessesArray2 = new ArrayList<>();
String apiKey;
String userLatitude;
String userLongitude;
FusedLocationProviderClient mFusedLocationClient;

String activitiesTerm = "";
String[][] selectedActivityXref = new String[7][2];
int numOfActivities = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_summary_lets_go);

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    FirebaseApp.initializeApp(this);
    deviceRegistrationToken = FirebaseInstanceId.getInstance().getToken();
    apiKey = getString(R.string.yelp_api_key);

    mAuth = FirebaseAuth.getInstance();
    mFirebaseDatabase = FirebaseDatabase.getInstance();

    final FirebaseUser USER = mAuth.getCurrentUser();

    if (USER != null) {
        userId = USER.getUid();
        userEmail = USER.getEmail();
    }

    selectedDrivingOrUber = getIntent().getStringExtra("selectedDrivingOrUber");
    selectedStartTime = getIntent().getStringExtra("selectedStartTime"); // This is used to bring the data from the previous activity into the summary
    selectedEndTime = getIntent().getStringExtra("selectedEndTime");
    selectedTimeHours = getIntent().getStringExtra("selectedTimeHours");
    selectedBudget = getIntent().getStringExtra("selectedBudget");

    if (selectedBudget.equals("Free")) {
        budgetForYelp = "1";
    } else if (selectedBudget.equals("Average")) {
        budgetForYelp = "2";
    } else if (selectedBudget.contains("Special")) {
        budgetForYelp = "2, 3";
    } else if (selectedBudget.contains("Splurge")) {
        budgetForYelp = "3, 4";
    }

    selectedPartySize = getIntent().getStringExtra("selectedPartySize");
    selectedMood = getIntent().getStringExtra("selectedMood");
    selectedActivities = getIntent().getStringExtra("selectedActivities");
    selectedDate = getIntent().getStringExtra("selectedDate");

    if (savedInstanceState != null) {
        selectedDrivingOrUber = savedInstanceState.get("selectedDrivingOrUber").toString();
        selectedStartTime = savedInstanceState.get("selectedStartTime").toString();
        selectedEndTime = savedInstanceState.get("selectedEndTime").toString();
        selectedTimeHours = savedInstanceState.get("selectedTimeHours").toString();
        selectedBudget = savedInstanceState.get("selectedBudget").toString();

        if (selectedBudget.equals("Free")) {
            budgetForYelp = "1";
        } else if (selectedBudget.equals("Average")) {
            budgetForYelp = "2";
        } else if (selectedBudget.contains("Special")) {
            budgetForYelp = "2, 3";
        } else if (selectedBudget.contains("Splurge")) {
            budgetForYelp = "3, 4";
        }

        selectedPartySize = savedInstanceState.get("selectedPartySize").toString();
        selectedMood = savedInstanceState.get("selectedMood").toString();
        selectedActivities = savedInstanceState.get("selectedActivities").toString();
        selectedDate = savedInstanceState.get("selectedDate").toString();
    }


    drivingTextView = (TextView) findViewById(R.id.summaryDrivingTextView);
    budgetTextView = (TextView) findViewById(R.id.summaryBudgetTextView);
    startTimeTextView = (TextView) findViewById(R.id.summaryStartTimeTextView);
    endTimeTextView = (TextView) findViewById(R.id.summaryEndTimeTextView);
    totalHoursTextView = (TextView) findViewById(R.id.summaryTotalHoursTextView);
    partySizeTextView = (TextView) findViewById(R.id.summaryPartySizeTextView);
    moodTextView = (TextView) findViewById(R.id.summaryMoodTextView);
    activitiesTextView = (TextView) findViewById(R.id.summaryActivitiesTextView);
    dateTextView = (TextView) findViewById(R.id.summaryDateTextView);
    summaryNextBtn = (Button) findViewById(R.id.summaryNextBtn);

    selectedActivityXref[0][0] = "Dinner";
    selectedActivityXref[0][1] = "Food";
    selectedActivityXref[1][0] = "Movie";
    selectedActivityXref[1][1] = "Movie";
    selectedActivityXref[2][0] = "Drinks";
    selectedActivityXref[2][1] = "Bars";
    selectedActivityXref[3][0] = "Dance";
    selectedActivityXref[3][1] = "Dance Clubs";
    selectedActivityXref[4][0] = "Walk";
    selectedActivityXref[4][1] = "Walking Trails";
    selectedActivityXref[5][0] = "Workout";
    selectedActivityXref[5][1] = "Gyms";
    selectedActivityXref[6][0] = "Coffee";
    selectedActivityXref[6][1] = "Coffee & Tea";

    mFusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
    if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) {

        mFusedLocationClient.getLastLocation()
                .addOnSuccessListener(this, new OnSuccessListener<Location>() {
                    @Override
                    public void onSuccess(Location location) {
                        // Got last known location. In some rare situations this can be null.
                        if (location != null) {
                            // Logic to handle location object
                            userLatitude = Double.toString(location.getLatitude());
                            userLongitude = Double.toString(location.getLongitude());

                            numOfActivities = 1;
                            fetchYelpForOneActivity();

                            drivingTextView.setText(selectedDrivingOrUber);
                            budgetTextView.setText(selectedBudget);
                            startTimeTextView.setText(selectedStartTime);
                            endTimeTextView.setText(selectedEndTime);
                            totalHoursTextView.setText(selectedTimeHours);
                            partySizeTextView.setText(selectedPartySize);
                            moodTextView.setText(selectedMood);
                            activitiesTextView.setText(selectedActivities);
                            dateTextView.setText(selectedDate);
                            summaryNextBtn.setVisibility(View.VISIBLE);


                        }
                    }
                });
    } 


    if (drawerLayout != null) {
        // setup drawer view
        NavigationView navigationView = (NavigationView) findViewById(R.id.master_fragment_container);
        navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem item) {
                return true;
            }
        });

        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setHomeButtonEnabled(true);

        for (int i = 0; i < toolbar.getChildCount(); i++) {
            if (toolbar.getChildAt(i) instanceof ImageButton) {
                toolbar.getChildAt(i).setScaleX(1.5f);
                toolbar.getChildAt(i).setScaleY(1.5f);
            }
        }


        // insert detail fragment into detail container
        com.example.jacob.datenight.DetailDrawerFragment detailFragment = com.example.jacob.datenight.DetailDrawerFragment.newInstance();
        android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager();
        fragmentManager.beginTransaction()
                .add(R.id.detail_fragment_container, detailFragment, TAG_DETAIL_FRAGMENT)
                .commit();

        com.example.jacob.datenight.MasterDrawerFragment masterFragment = com.example.jacob.datenight.MasterDrawerFragment.newInstance();
        fragmentManager.beginTransaction()
                .add(R.id.master_fragment_container, masterFragment, TAG_MASTER_FRAGMENT)
                .commit();

        setupDrawer();
    }

    summaryNextBtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {

            if (saveDataInputs()) {
                //Removed code here during testing
                Intent i = new Intent(SummaryLetsGoActivity.this, MainActivity.class);
                startActivity(i);
            }

        }
    });


    submissionsDatabaseRef = mFirebaseDatabase.getReference("date_night_submissions/" + userId);
    profileDatabaseRef = mFirebaseDatabase.getReference("user_profile/" + userId);
    ValueEventListener databaseListener = new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {

            profile = new UserProfile(Objects.requireNonNull(dataSnapshot.child("address").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("city").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("country").getValue()).toString(),
                    Objects.requireNonNull(dataSnapshot.child("date_of_birth").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("device_registration_token").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("email_address").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("fname").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("lname").getValue()).toString(),
                    Objects.requireNonNull(dataSnapshot.child("gender").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("phone_nbr").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("photo_url").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("state").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("user_name").getValue()).toString(),
                    Objects.requireNonNull(dataSnapshot.child("zip_cd").getValue()).toString(), Objects.requireNonNull(dataSnapshot.child("communication_preference").getValue()).toString());

            userFirstName = profile.getfName();
            userLastName = profile.getlName();
            userPhoneNbr = profile.getPhoneNbr();
            userCommPref = profile.getCommunicationPref();

        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {
        }
    };
    profileDatabaseRef.addValueEventListener(databaseListener);


}

@Override
public void onMasterItemClicked(int masterItemId) {
    com.example.jacob.datenight.DetailDrawerFragment detailFragment = (com.example.jacob.datenight.DetailDrawerFragment) getSupportFragmentManager()
            .findFragmentByTag(TAG_DETAIL_FRAGMENT);
    detailFragment.onMasterItemClicked(masterItemId);

    if (drawerLayout != null) {
        drawerLayout.closeDrawers();
    }
}

private void setupDrawer() {

    drawerToggle = new ActionBarDrawerToggle(this, drawerLayout,
            R.string.drawer_open, R.string.drawer_close) {

        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
            //getSupportActionBar().setTitle(activityTitle);
            invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu()
        }

        public void onDrawerClosed(View view) {

            super.onDrawerClosed(view);
            //getSupportActionBar().setTitle(activityTitle);
            invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu()

        }
    };

    drawerToggle.setDrawerIndicatorEnabled(true);

}

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    if (drawerToggle.onOptionsItemSelected(item)) {
        return true;
    }


    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_bar_profile_img) {
        Toast.makeText(SummaryLetsGoActivity.this, "Action clicked", Toast.LENGTH_LONG).show();
        return true;
    }

    return super.onOptionsItemSelected(item);
}

@Override
protected void onPostCreate(Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);
    drawerToggle.syncState();
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    drawerToggle.onConfigurationChanged(newConfig);
}

private void fetchYelpForOneActivity() {

    for (int i = 0; i < selectedActivityXref.length; i++) {
        if (selectedActivities.equals("Surprise")) {

            int x = new Random().nextInt(selectedActivityXref.length);
            if (x > 7) {
                x -= 3;
            }

            activitiesTerm = selectedActivityXref[x][1];

        } else if (selectedActivities.equals(selectedActivityXref[i][0])) {
            activitiesTerm = selectedActivityXref[i][1];
        }
    }



    new FetchYelp(userLatitude, userLongitude, apiKey, budgetForYelp, activitiesTerm, new FetchYelp.OnFetchFinishedListener() {
        @Override
        public void onFetchFinished(ArrayList<YelpBusiness> result) {

            if (result.size() > 0) {

                yelpBusinessesArray.addAll(result);

                ProgressBar spinner = findViewById(R.id.loading_yelp_progress);
                TextView details = findViewById(R.id.loading_results_txtview);
                RelativeLayout loadingRL = findViewById(R.id.loading_relative_layout);
                spinner.setVisibility(View.GONE);
                details.setVisibility(View.GONE);
                loadingRL.setVisibility(View.GONE);
            }

        }
    }).execute();

}

public boolean saveDataInputs() {

    Calendar calendar = Calendar.getInstance();
    int year = calendar.get(Calendar.YEAR);
    int monthInt = calendar.get(Calendar.MONTH) + 1;
    int dayInt = calendar.get(Calendar.DAY_OF_MONTH);
    int hourInt = calendar.get(Calendar.HOUR_OF_DAY);
    int minuteInt = calendar.get(Calendar.MINUTE);
    int second = calendar.get(Calendar.SECOND);

    String monthString = String.format(Locale.getDefault(), "%02d", monthInt);
    String dayString = String.format(Locale.getDefault(), "%02d", dayInt);
    String hourString = String.format(Locale.getDefault(), "%02d", hourInt);
    String minuteString = String.format(Locale.getDefault(), "%02d", minuteInt);

    String timeStamp = year + "" + monthString + "" + dayString + ":" + hourString + ":" + minuteString + ":" + second;

    submissionsDatabaseRef.child(timeStamp).child("email_address").setValue(userEmail);
    submissionsDatabaseRef.child(timeStamp).child("device_registration_token").setValue(deviceRegistrationToken);
    submissionsDatabaseRef.child(timeStamp).child("selected_driving_or_uber").setValue(selectedDrivingOrUber);
    submissionsDatabaseRef.child(timeStamp).child("selected_mood").setValue(selectedMood);
    submissionsDatabaseRef.child(timeStamp).child("selected_activities").setValue(selectedActivities);
    submissionsDatabaseRef.child(timeStamp).child("selected_budget").setValue(selectedBudget);
    submissionsDatabaseRef.child(timeStamp).child("selected_party_size").setValue(selectedPartySize);
    submissionsDatabaseRef.child(timeStamp).child("selected_date").setValue(selectedDate);
    submissionsDatabaseRef.child(timeStamp).child("selected_start_time").setValue(selectedStartTime);
    submissionsDatabaseRef.child(timeStamp).child("selected_end_time").setValue(selectedEndTime);
    submissionsDatabaseRef.child(timeStamp).child("selected_time_hours").setValue(selectedTimeHours);
    submissionsDatabaseRef.child(timeStamp).child("screen_sequence").setValue("LetsGo");
    submissionsDatabaseRef.child(timeStamp).child("submission_timestamp").setValue(timeStamp);

    if (numOfActivities == 1) {

        if (yelpBusinessesArray.size() > 0) {

            if(yelpBusinessesArray.size()==1){
                randomInt1 = 0;
                loadFirstArrayValues(timeStamp, randomInt1);
                loadBlankSecondArrayValues(timeStamp);
            } else {
                randomInt1 = new Random().nextInt(yelpBusinessesArray.size() - 1);
                if(randomInt1 <= yelpBusinessesArray.size()){
                    loadFirstArrayValues(timeStamp, randomInt1);
                    loadBlankSecondArrayValues(timeStamp);
                } else
                {
                    randomInt1 = yelpBusinessesArray.size();
                    loadFirstArrayValues(timeStamp, randomInt1);
                    loadBlankSecondArrayValues(timeStamp);
                }

            }

        } else {
            loadBlankFirstArrayValues(timeStamp);
            loadBlankSecondArrayValues(timeStamp);
        }

    }

    return true;

}


private void loadFirstArrayValues(String timeStamp, int array1randomInt){

    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_name").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessName());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_rating").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessRating());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_term").setValue(yelpBusinessesArray.get(array1randomInt).getYelpBusinessTermValue());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_address1").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessAddress1());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_address2").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessAddress2());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_zipCd").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessZipCode());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_city").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessCity());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_state").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessState());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_country").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessCountry());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_cross_streets").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessCrossStreets());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_avg_price").setValue(yelpBusinessesArray.get(array1randomInt).getAvgPrice());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_open_time").setValue("NULL");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_close_time").setValue("NULL");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_latitude").setValue(yelpBusinessesArray.get(array1randomInt).getBusinesslatitude());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_longitude").setValue(yelpBusinessesArray.get(array1randomInt).getBusinesslongitude());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_distance").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessDistance());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_review_count").setValue(yelpBusinessesArray.get(array1randomInt).getReviewCount());
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_is_closed").setValue(yelpBusinessesArray.get(array1randomInt).getIsClosed());

    if (yelpBusinessesArray.get(array1randomInt).getBusinessCrossStreets() != null) {
        submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_cross_streets").setValue(yelpBusinessesArray.get(array1randomInt).getBusinessCrossStreets());
    } else {
        submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_cross_streets").setValue("NULL");
    }

}

private void loadBlankFirstArrayValues(String timeStamp){

    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_name").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_rating").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_term").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_address1").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_address2").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_zipCd").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_city").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_state").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_country").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_cross_streets").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_avg_price").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_open_time").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_close_time").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_latitude").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_longitude").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_distance").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_review_count").setValue(0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_is_closed").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location1_cross_streets").setValue("No Results");

}

private void loadBlankSecondArrayValues(String timeStamp){

    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_name").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_rating").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_term").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_address1").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_address2").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_zipCd").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_city").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_state").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_country").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_cross_streets").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_avg_price").setValue("No Results");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_open_time").setValue("NULL");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_close_time").setValue("NULL");
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_latitude").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_longitude").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_distance").setValue(0.0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_review_count").setValue(0);
    submissionsDatabaseRef.child(timeStamp).child("chosen_activity_location2_is_closed").setValue("No Results");

}
}
公共类SummaryLetsGoActivity扩展AppCompatActivity实现com.example.jacob.datenight.MasterDrawerFragment.Callbacks{
私有静态最终字符串TAG\u MASTER\u FRAGMENT=“TAG\u MASTER\u FRAGMENT”;
私有静态最终字符串TAG\u DETAIL\u FRAGMENT=“TAG\u DETAIL\u FRAGMENT”;
私人抽屉布局;
私人诉讼律师事务所;
公共字符串selectedDrivingRuber;
公共字符串selectedStartTime;
公共字符串selectedEndTime;
公共字符串selectedTimeHours;
公共字符串选择预算;
公共字符串budgetForYelp;
公共字符串selectedPartySize;
公共字符串selectedMood;
公共字符串选择活动;
公共字符串selectedDate;
公共文本视图驱动文本视图;
公共文本视图预算文本视图;
公共文本视图startTimeTextView;
公共文本视图endTimeTextView;
公共文本视图总小时文本视图;
公共文本视图PartySetextView;
公共文本视图moodTextView;
公共文本视图活动文本视图;
公共文本视图日期文本视图;
公共按钮汇总表下一个TBTN;
int randomInt1;
int randomInt2;
私有用户配置文件;
字符串userFirstName;
字符串userLastName;
字符串userPhoneNbr;
字符串userCommPref;
私有数据库参考提交表DatabaseRef;
私有数据库引用profileDatabaseRef;
私有FirebaseDatabase mFirebaseDatabase;
私人消防队;
私有FirebaseAuth.AuthStateListener mAuthListener;
私有字符串用户标识;
私人字符串用户电子邮件;
公共字符串设备注册;
private ArrayList yelpbusinessarray=new ArrayList();
private ArrayList yelpbusinessarray2=new ArrayList();
字符串键;
字符串用户纬度;
字符串经度;
FusedLocationProviderClient mFusedLocationClient;
字符串activitiesTerm=“”;
字符串[]选择了Activityxref=新字符串[7][2];
int numOfActivities=0;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u summary\u lets\u go);
Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar);
抽屉布局=(抽屉布局)findViewById(R.id.抽屉布局);
FirebaseApp.initializeApp(本);
deviceRegistrationToken=FirebaseInstanceId.getInstance().getToken();
apiKey=getString(R.string.yelp\u api\u key);
mAuth=FirebaseAuth.getInstance();
mFirebaseDatabase=FirebaseDatabase.getInstance();
最终FirebaseUser=mAuth.getCurrentUser();
如果(用户!=null){
userId=USER.getUid();
userEmail=USER.getEmail();
}
selectedDrivingRuber=getIntent().getStringExtra(“selectedDrivingRuber”);
selectedStartTime=getIntent().getStringExtra(“selectedStartTime”);//用于将上一个活动中的数据带入摘要
selectedEndTime=getIntent().getStringExtra(“selectedEndTime”);
selectedTimeHours=getIntent().getStringExtra(“selectedTimeHours”);
selectedBudget=getIntent().getStringExtra(“selectedBudget”);
if(selectedBudget.equals(“Free”)){
budgetForYelp=“1”;
}else if(selectedBudget.equals(“Average”)){
budgetForYelp=“2”;
}else if(selectedBudget.contains(“特殊”)){
budgetForYelp=“2,3”;
}else if(selectedBudget.contains(“挥霍”)){
budgetForYelp=“3,4”;
}
selectedPartySize=getIntent().getStringExtra(“selectedPartySize”);
selectedMood=getIntent().getStringExtra(“selectedMood”);
selectedActivities=getIntent().getStringExtra(“selectedActivities”);
selectedDate=getIntent().getStringExtra(“selectedDate”);
如果(savedInstanceState!=null){
SelectedDrivingRuber=savedInstanceState.get(“SelectedDrivingRuber”).toString();
selectedStartTime=savedInstanceState.get(“selectedStartTime”).toString();
selectedEndTime=savedInstanceState.get(“selectedEndTime”).toString();
selectedTimeHours=savedInstanceState.get(“selectedTimeHours”).toString();
selectedBudget=savedInstanceState.get(“selectedBudget”).toString();
if(selectedBudget.equals(“Free”)){
budgetForYelp=“1”;
}else if(selectedBudget.equals(“Average”)){
budgetForYelp=“2”;
}else if(selectedBudget.contains(“特殊”)){
budgetForYelp=“2,3”;
}else if(selectedBudget.contains(“挥霍”)){
budgetForYelp=“3,4”;
}
selectedPartySize=savedInstanceSt
submissionsDatabaseRef = mFirebaseDatabase.getReference("date_night_submissions/" + userId);
ValueEventListener databaseListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {