I want my app to read the data within all keys from Firebase Database.
Here is a snapshot of my Database
. 
The keys under app_name represent a user and all keys within the user key have some data within them. I need to be able to read the data from within each such user key except that of the user itself (as in reading all data except the data that I add). I obviously don't know the key of all users and also that list can be extended or minimized later. The only level I can access by using FirebaseDatabase.getInstance.getReference.child(string) is under the app name. Is there a way to read data within the keys inside each user key and display the content in the form of a List View or Recycler Adapter?
EDIT: Here are some of the things I have tried
public class FeedFragment extends Fragment {
//Firebase instance variables
private FirebaseDatabase mFirebaseDatabase;
private DatabaseReference mQuestionDatabaseReference;
private ChildEventListener mChildEventListener;
private FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
Attempt 1:
FirebaseRecyclerAdapter mAdapter;
public FeedFragment() {
    //empty constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    mFirebaseDatabase = FirebaseDatabase.getInstance();
    mQuestionDatabaseReference = mFirebaseDatabase.getReference();
    // Inflate the layout for this fragment
    View rootView =  inflater.inflate(R.layout.fragment_feed, container, false);
    RecyclerView recycler = (RecyclerView) rootView.findViewById(R.id.feed_view_list);
    recycler.setHasFixedSize(false);
    recycler.setLayoutManager(new LinearLayoutManager(getActivity()));
    mAdapter = new FirebaseRecyclerAdapter<DataGetter, StatsViewHolder>(DataGetter.class, 0, StatsViewHolder.class, mQuestionDatabaseReference) {
        @Override
        public void populateViewHolder(FeedViewHolder viewHolder, DataGetter feedDisplay, int position) {
            int layout = getItemViewType(position);
            if (layout == R.layout.binary_feed) {
                viewHolder.setQuestionTextBin(textDisplay.getQuestionText());
                viewHolder.setbOption1(textDisplay.getOption1());
                viewHolder.setbOption2(textDisplay.getOption2());
            }
            else if (layout == R.layout.rating_feed) {
                viewHolder.setQuestionTextRat(textDisplay.getQuestionText());
            } 
            else {
                viewHolder.setQuestionTextMul(textDisplay.getQuestionText());
                viewHolder.setmOption1(textDisplay.getOption1());
                viewHolder.setmOption2(textDisplay.getOption2());
                viewHolder.setmOption3(textDisplay.getOption3());
                if (textDisplay.getNoOfOptions() >= 4) {
                    viewHolder.setmOption4(textDisplay.getOption4());
                }
                if (textDisplay.getNoOfOptions() == 5) {
                    viewHolder.setmOption5(textDisplay.getOption5());
                }
            }
        }
        @Override
        public int getItemViewType(int position)
        {
            int view;
            if(getItem(position).getQuestionType() == MainActivity.BINARY){
                view = R.layout.binary_feed;
            }
            else if(getItem(position).getQuestionType() == MainActivity.RATING) {
                view = R.layout.rating_feed;
            }
            else //if(getItem(position).getQuestionType() == MainActivity.MULTIPLE)
            {
                view = R.layout.multiple_feed;
            }
            return view;
        }
    };
    recycler.setAdapter(mAdapter);
    return rootView;
}
@Override
public void onDestroy()
{
    super.onDestroy();
    mAdapter.cleanup();
}
Attempt 2:
FirebaseIndexRecyclerAdapter mAdapter;
public FeedFragment() {
    // empty constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    mFirebaseDatabase = FirebaseDatabase.getInstance();
    mQuestionDatabaseReference = mFirebaseDatabase.getReference();
    // Inflate the layout for this fragment
    View rootView = inflater.inflate(R.layout.fragment_feed, container, false);
    RecyclerView recycler = (RecyclerView) rootView.findViewById(R.id.feed_view_list);
    recycler.setHasFixedSize(false);
    recycler.setLayoutManager(new LinearLayoutManager(getActivity()));
    //attempt -> from Firebase documentation, loop over all data
    final Query feedQuery = mQuestionDatabaseReference;
    ArrayList<DataSnapshot> feedListData = new ArrayList<DataSnapshot>();
    feedQuery.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            int i = 0;
            for (DataSnapshot postSnapshot: dataSnapshot.getChildren()) {
                ArrayList.add(postSnapshot);
            }
        }
        @Override
        public void onCancelled(DatabaseError databaseError) {
            // Getting Post failed, log a message
            Log.w(TAG, "loadPost:onCancelled", databaseError.toException());
            // ...
        }
    });
    mAdapter = new FirebaseIndexRecyclerAdapter<DataGetter, FeedViewHolder>(DataGetter.class, 0, FeedViewHolder.class,
            feedQuery,mQuestionDatabaseReference) {
            //remaining code is same as attempt 1
    }