How to make a new newRequestQueue In Volley, Android
15,662
the parameter of newRequestQueue
is a Context object. In your case, this, refers to the View.OnClickListener
anonymous inner class, where you are calling newRequestQueue
. Change
Volley.newRequestQueue(this);
with
Volley.newRequestQueue(getActivity().getApplicationContext());
is, of course, getActivity()
because you are subclassing Fragment
Author by
Bryan
Updated on July 30, 2022Comments
-
Bryan almost 2 years
I have an fragment where I try to Instantiate a new
newRequestQueue
with the Volley API.I try to instantiate it like this:
RequestQueue queue = Volley.newRequestQueue(this);
However, when I try to create the request, I get the following error:
newRequestQueue In Volley cannot be applied to annonymous android.view.View.OnClickListener
Here is my Fragment class:
public class LoginFragment extends Fragment { private FacebookLogin fLogin; private Profile profile; private CallbackManager mCallbackManager; //Used in activity result below. Gets a value when u hit the button private static final String TAG = "Event"; private static String url_create_user = "127.0.0.1/create_row.php"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); fLogin = new FacebookLogin(getActivity().getApplicationContext()); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.login, container, false); return v; } @Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); final LoginButton loginButton = (LoginButton) getView().findViewById(R.id.login_button); final TextView infoText = (TextView) getView().findViewById(R.id.text_details); final ImageView profilP = (ImageView) getView().findViewById(R.id.profilePicture); loginButton.setFragment(this); loginButton.setReadPermissions("user_friends"); loginButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Log.i(TAG, " Button clickde"); fLogin.setCallback(loginButton); //Let's register a callback RequestQueue queue = Volley.newRequestQueue(this); fLogin.setFacebookListener(new FacebookLogin.OnFacebookListener() { @Override public void onFacebookLoggedIn(JSONObject parameters) { Log.i(TAG, "INNNNNNNNNNNE"); Log.i(TAG, parameters.toString()); } }); } }); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); mCallbackManager = fLogin.getCallbackManager(); //Get the callbackmanager mCallbackManager.onActivityResult(requestCode, resultCode, data); } }
-
Harun ERGUL almost 8 yearsIt's brillant answer