繁体   English   中英

Android:Facebook 登录不起作用,没有错误消息

[英]Android: Facebook login doesn't work, no error message

我的 facebook 登录不起作用,我所看到的没有错误,我需要一些帮助。这是我单击 fb 登录按钮时生成的日志:

2020-10-15 14:43:20.295 25956-26057/dk.swibbid.mz I/System.out: (HTTPLog)-Static: isSBSettingEnabled         false
2020-10-15 14:43:20.295 25956-26057/dk.swibbid.mz I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-15 14:43:20.562 25956-25956/dk.swibbid.mz D/ViewRootImpl@29bef01[MainActivity]:     MSG_WINDOW_FOCUS_CHANGED 1 1
2020-10-15 14:43:20.563 25956-25956/dk.swibbid.mz D/InputMethodManager: prepareNavigationBarInfo() DecorView@b59fc26[MainActivity]
2020-10-15 14:43:20.563 25956-25956/dk.swibbid.mz D/InputMethodManager: getNavigationBarColor() -855310
2020-10-15 14:43:20.567 25956-25956/dk.swibbid.mz D/InputMethodManager: prepareNavigationBarInfo() DecorView@b59fc26[MainActivity]
2020-10-15 14:43:20.567 25956-25956/dk.swibbid.mz D/InputMethodManager: getNavigationBarColor() -855310
2020-10-15 14:43:20.567 25956-25956/dk.swibbid.mz D/InputMethodManager: startInputInner - Id : 0
2020-10-15 14:43:20.567 25956-25956/dk.swibbid.mz I/InputMethodManager: startInputInner - mService.startInputOrWindowGainedFocus
2020-10-15 14:43:20.571 25956-25956/dk.swibbid.mz D/InputTransport: Input channel constructed: fd=91
2020-10-15 14:43:20.571 25956-25956/dk.swibbid.mz D/InputTransport: Input channel destroyed: fd=97
2020-10-15 14:43:20.572 25956-25956/dk.swibbid.mz D/ViewRootImpl@29bef01[MainActivity]: stopped(false) old=false
2020-10-15 14:43:20.579 25956-25956/dk.swibbid.mz D/ViewRootImpl@4c90b3a[FacebookActivity]: MSG_WINDOW_FOCUS_CHANGED 0 1
2020-10-15 14:43:20.579 25956-25956/dk.swibbid.mz D/InputMethodManager: prepareNavigationBarInfo() DecorView@1f94c59[FacebookActivity]
2020-10-15 14:43:20.579 25956-25956/dk.swibbid.mz D/InputMethodManager: getNavigationBarColor() -855310
2020-10-15 14:43:20.586 25956-25956/dk.swibbid.mz D/ViewRootImpl@4c90b3a[FacebookActivity]: stopped(true) old=false
2020-10-15 14:43:20.606 25956-26147/dk.swibbid.mz W/libEGL: EGLNativeWindowType 0x770e368010 disconnect failed
2020-10-15 14:43:20.606 25956-26147/dk.swibbid.mz D/OpenGLRenderer: eglDestroySurface = 0x7709bf4300, 0x770e368000
2020-10-15 14:43:20.606 25956-25956/dk.swibbid.mz D/ViewRootImpl@4c90b3a[FacebookActivity]: dispatchDetachedFromWindow
2020-10-15 14:43:20.611 25956-25956/dk.swibbid.mz D/InputTransport: Input channel destroyed: fd=90
2020-10-15 14:43:20.796 25956-25956/dk.swibbid.mz W/System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getVisibility()' on a null object reference
2020-10-15 14:43:20.796 25956-25956/dk.swibbid.mz W/System.err:     at android.view.ViewRootImpl.getHostVisibility(ViewRootImpl.java:1809)
2020-10-15 14:43:20.796 25956-25956/dk.swibbid.mz W/System.err:     at android.view.ViewRootImpl.handleAppVisibility(ViewRootImpl.java:1445)
2020-10-15 14:43:20.796 25956-25956/dk.swibbid.mz W/System.err:     at android.view.ViewRootImpl$ViewRootHandler.handleMessage(ViewRootImpl.java:4829)
2020-10-15 14:43:20.796 25956-25956/dk.swibbid.mz W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:106)
2020-10-15 14:43:20.797 25956-25956/dk.swibbid.mz W/System.err:     at android.os.Looper.loop(Looper.java:214)
2020-10-15 14:43:20.797 25956-25956/dk.swibbid.mz W/System.err:     at android.app.ActivityThread.main(ActivityThread.java:7099)
2020-10-15 14:43:20.797 25956-25956/dk.swibbid.mz W/System.err:     at java.lang.reflect.Method.invoke(Native Method)
2020-10-15 14:43:20.797 25956-25956/dk.swibbid.mz W/System.err:     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
2020-10-15 14:43:20.797 25956-25956/dk.swibbid.mz W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)
2020-10-15 14:43:33.409 25956-26069/dk.swibbid.mz I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-15 14:43:33.409 25956-26069/dk.swibbid.mz I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-15 14:45:01.023 25956-25956/dk.swibbid.mz D/ViewRootImpl@29bef01[MainActivity]: MSG_WINDOW_FOCUS_CHANGED 0 1
2020-10-15 14:45:01.024 25956-25956/dk.swibbid.mz D/InputMethodManager: prepareNavigationBarInfo() DecorView@b59fc26[MainActivity]
2020-10-15 14:45:01.024 25956-25956/dk.swibbid.mz D/InputMethodManager: getNavigationBarColor() -855310
2020-10-15 14:45:03.034 25956-25956/dk.swibbid.mz D/ViewRootImpl@29bef01[MainActivity]: MSG_WINDOW_FOCUS_CHANGED 1 1
2020-10-15 14:45:03.034 25956-25956/dk.swibbid.mz D/InputMethodManager: prepareNavigationBarInfo() DecorView@b59fc26[MainActivity]
2020-10-15 14:45:03.035 25956-25956/dk.swibbid.mz D/InputMethodManager: getNavigationBarColor() -855310

上面的空指针错误不适用于我的代码,必须是 facebook 活动中的某些内容。 这是我的片段中的代码:

class LoginFragment : BaseFragment() {
    lateinit var callbackManager : CallbackManager
    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        return inflater.inflate(R.layout.fragment_login_initial, container, false)
    }
    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
        toolbarSetup()
        setHasOptionsMenu(true)
        setOnClickListeners()

        callbackManager = CallbackManager.Factory.create()

        login_facebook.setOnClickListener {
            login_real_facebook.performClick()
        }
        login_real_facebook.setReadPermissions("email", "public_profile")
        login_real_facebook.registerCallback(callbackManager, object :
            FacebookCallback<LoginResult> {
            override fun onSuccess(loginResult: LoginResult) {
                Log.d("fb", "facebook:onSuccess:$loginResult")
                handleFacebookAccessToken(loginResult.accessToken)
            }

            override fun onCancel() {
                Log.d("fb", "facebook:onCancel")
                // ...
            }

            override fun onError(error: FacebookException) {
                Log.d("fb", "facebook:onError", error)
                // ...
            }
        })
    }
    private fun handleFacebookAccessToken(token: AccessToken) {
        Log.d("fb", "handleFacebookAccessToken:$token")

        val credential = FacebookAuthProvider.getCredential(token.token)
        firebaseAuth.signInWithCredential(credential)
            .addOnCompleteListener(requireActivity()) { task ->
                if (task.isSuccessful) {
                    // Sign in success, update UI with the signed-in user's information
                    Log.d("fb", "signInWithCredential:success")
                    findNavController().navigateUp()

                } else {
                    // If sign in fails, display a message to the user.
                    Log.w("fb", "signInWithCredential:failure", task.exception)
                    Toast.makeText(
                        requireContext(), "Authentication failed.",
                        Toast.LENGTH_SHORT
                    ).show()

                }


            }
    }


    private fun setOnClickListeners() {
        login_create.setOnClickListener {
            findNavController().navigate(R.id.action_loginFragment_to_registerFragment)
        }
        login_swibbid.setOnClickListener {
            findNavController().navigate(R.id.action_loginFragment_to_loginSwibbidFragment)
        }
    }

    private fun toolbarSetup() {
        toolbarService.nothingVisible()
        myToolbar.navigationIcon = null

    }

    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        super.onActivityResult(requestCode, resultCode, data)
        callbackManager.onActivityResult(requestCode, resultCode, data)
    }

}

我已经设置了哈希值,所以不能,这是我使用的依赖项:

implementation 'com.facebook.android:facebook-login:8.0.0'

我也试过使用旧的,但它没有区别仍然是相同的错误。

堆栈跟踪表示某些内容为null ,因此请检查 toobarService 是否不为null或您更改可见性的任何其他元素

这修复了它...

login_real_facebook.fragment = this

真的很烦人,根本没有迹象表明这是问题!!!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM