尝试集成Android的Facebook登录时出现此错误 - "couldn't find the URL" .什么意思?


mfacebook_Callback_Manager = CallbackManager.Factory.create();
        Collection<String> permissions = Arrays.asList("public_profile,email");
        LoginManager.getInstance().logInWithReadPermissions(MainActivity.this,
permissions);
        LoginManager.getInstance().registerCallback(mfacebook_Callback_Manager,
new FacebookCallback<LoginResult>() {.......}

loginmanager回调出错

堆栈跟踪:

07-12 21:25:10.712 2107-2107/com.factory.fbsample.dev W/System。错误:at com.facebook.login.LoginManager.onActivityResult(LoginManager.java:191 .07-12 21:25:10.712 217-2107/com.factory.fbsample.dev W/System。$1.onActivityResult(LoginManager.java:16007-12 21:25:10.712 217-2107/com.factory.fbsample.dev W/System。callbackmanagerimpp . onactivityresult (callbackmanagerimpp .jva:8207-12 21:25:10.712 217-210/com.factory.fbsample.dev W/System。loginactivity . onactivityresult (loginactivity .java:272 .07-12 21:25:10.712 217-210/th.co. hand .hconnect.dev W/System。error: at android.app. activity . dispatchactivity . result (Activity.java:532207-12 21:5:10.712 2107-2107/com.factory.fbsample.dev W/System。error: at android.app.ActivityThread.deliverResults(ActivityThread.java:336307-12 21:5:10.712 2107-2107/com.factory.fbsample.dev W/System。error: at android.app.ActivityThread.handleSendResult(ActivityThread.java:341007-12 21:5:10.712 2107-2107/com.factory.fbsample.dev W/System。在android.app.ActivityThread.access$1100(ActivityThread.java:14107-12 2125:10.712 2107-2107/com.factory.fbsample.dev W/System。在android.app.ActivityThread$H.handleMessage(ActivityThread.java:13007-12 215:10.712 2107-2107/com.factory.fbsample.dev W/System。error: at android.os.Handler.dispatchMessage(Handler.java:99)07-12 215:10.720 2107-2107/com.factory.fbsample.dev W/System。err: at android.os. loop .loop(loop .java:137)07-12 215:10.720 2107-2107/com.factory.fbsample.dev W/System。error: at android.app.ActivityThread.main(ActivityThread.java:5103)07-12 215:10.720 2107-2107/com.factory.fbsample.dev W/System。error: at java.lang.reflect.Method。invokeNative(本地方法)07-12 215:10.720 2107-2107/com.factory.fbsample.dev W/System。error: at java.lang.reflect.Method.invoke(Method.java:525)07-12 215:10.720 2107-2107/com.factory.fbsample.dev W/System。error: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteIn.java:737 .;07-12 215:10.720 107-2107/com.factory.fbsample.dev W/System。android.internal.os. zygoteinit .main(ZygoteInit.java:553)07-12 21:25:10.720 2107-2107/com.factory.fbsample.dev W/System。错误:在dalvik.system. native . art。主要(本地方法)

你应该发布完整的错误(包括堆栈跟踪)作为你的问题的一部分。

另外,您的权限构造不正确。你应该这样做:

Collection<String> permissions = Arrays.asList("public_profile","email");

你可以用

login_button.setReadPermissions(Arrays.asList("public_profile","email"));
            login_button.registerCallback(callbackManager, new FacebookCallback<LoginResult>()
            { 
                @Override 
                public void onSuccess(LoginResult loginResult)
                { 
                    login_button.setVisibility(View.GONE);
                    GraphRequest graphRequest   =   GraphRequest.newMeRequest(loginResult.getAccessToken(), new GraphRequest.GraphJSONObjectCallback()
                    { 
                        @Override 
                        public void onCompleted(JSONObject object, GraphResponse response)
                        { 
                            Log.d("JSON", ""+response.getJSONObject().toString());
                            try 
                            { 
                                email       =   object.getString("email");
                                name        =   object.getString("name");
                                first_name  =   object.optString("first_name");
                                last_name   =   object.optString("last_name");
                                tvEmail.setText(email);
                                tvfirst_name.setText(first_name);
                                tvlast_namee.setText(last_name);
                                tvfull_name.setText(name);
                                LoginManager.getInstance().logOut(); 
                            } 
                            catch (JSONException e)
                            { 
                                e.printStackTrace();
                            } 
                        } 
                    }); 
                    Bundle parameters = new Bundle();
                    parameters.putString("fields", "id,name,first_name,last_name,email");
                    graphRequest.setParameters(parameters);
                    graphRequest.executeAsync();
                } 
                @Override 
                public void onCancel() 
                { 
                } 
                @Override 
                public void onError(FacebookException exception)
                { 
                } 
            }); 

或者你也可以点击这个链接facebook login

相关内容

最新更新