Question

I implemented login with facebook in my android app. Now I'm trying to get some user information but I can't. The LogCat shows ever "SecurityException:Permission denied (missing INTERNET permission?)"

I requested user permission:

LoginButton authButton = (LoginButton) view.findViewById(R.id.authButton);
authButton.setFragment(this);
authButton.setReadPermissions(Arrays.asList("basic_info","email")); 

Next, I tried to get user information like this:

private void makeFBRequest(final Session session) {
    Request request = Request.newMeRequest(session, new Request.GraphUserCallback() {
@Override
            public void onCompleted(GraphUser user, Response response) {
                 if (session == Session.getActiveSession()) {
                    if (user != null) {
                       Profile.name = user.getFirstName();
                       Profile.surname = user.getLastName();
                       Profile.email = (String) user.asMap().get("email");
                    }
                }
                if (response.getError() != null) {                      
                    Log.i(TAG, response.getError().getErrorMessage());
                }
            }
        });
        request.executeAsync();
    }

If I write the user permission : Log.i(TAG, session.getPermissions().get(0)+""+session.getPermissions().get(1)+""+session.getPermissions().get(2));

This correctly prints: email user_friends basic_info

In my manifest file I have

<permission android:name="android.permission.INTERNET">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />

So I don't know where is the problem.

Was it helpful?

Solution

Change:

<permission android:name="android.permission.INTERNET">

to:

<uses-permission android:name="android.permission.INTERNET" />

<permission> defines a custom permission. <uses-permission> says that you want to use a permission defined by somebody else (in this case, defined by Android itself).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top