应用程序在Facebook登录中获取nullPointerException时崩溃

奥雅斯瓦·in那(Ojasva Jain)

我有一个启动活动,之后一个活动打开,其中包含Facebook登录。启动活动完成后,应用程序立即崩溃。这是堆栈跟踪

    06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime: Process: com.android.dride.dride, PID: 28595
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime: java.lang.NullPointerException: Argument 'context' cannot be null
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.internal.Validate.notNull(Validate.java:76)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.internal.Utility.getMetadataApplicationId(Utility.java:594)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.appevents.AppEventsLogger.<init>(AppEventsLogger.java:757)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.appevents.AppEventsLogger.<init>(AppEventsLogger.java:732)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.appevents.AppEventsLogger.newLogger(AppEventsLogger.java:400)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.FacebookButtonBase.logButtonCreated(FacebookButtonBase.java:225)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.FacebookButtonBase.onAttachedToWindow(FacebookButtonBase.java:136)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.facebook.login.widget.LoginButton.onAttachedToWindow(LoginButton.java:452)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.View.dispatchAttachedToWindow(View.java:13795)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2828)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2828)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2828)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2828)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2828)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2828)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1602)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1343)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6853)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:825)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.Choreographer.doCallbacks(Choreographer.java:619)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.Choreographer.doFrame(Choreographer.java:579)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:811)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.os.Handler.handleCallback(Handler.java:815)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:104)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:214)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:6102)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
06-17 19:56:02.550 28595-28595/com.android.dride.dride E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)

令人困惑的是,即使我没有对登录活动的代码进行任何更改,也已经开始出现此问题。请帮忙。

我了解什么是nullPointerException。在过去的1个月中,它一直运行良好。现在,我开始无处解决这个问题,这很奇怪。

public class LoginActivity extends AppCompatActivity{

    private CallbackManager callbackManager;
    private LoginButton loginButton;
    private ImageView b_fb_login;


    //loader related
    private CustomProgress progressDialog;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //initialize facebook sdk

        FacebookSdk.sdkInitialize(LoginActivity.this);


        setContentView(R.layout.activity_login);





        //logout previously logged in accounts
        //for fb
        Log.i("check","here");
        LoginManager.getInstance().logOut();
        Log.i("check","there");





        //loader related
        progressDialog = new CustomProgress(this);

    }

    @Override
    protected void onResume() {
        super.onResume();

        //checking if user is logged in



        Log.i("check","resume");
       if (PrefUtils.getCurrentUser(LoginActivity.this) != null) {

            Intent intent = new Intent(LoginActivity.this, XYZActivity.class);

            startActivity(intent);
            overridePendingTransition(R.anim.enter, R.anim.exit);
            finish();
        }





        callbackManager = CallbackManager.Factory.create();

        loginButton = (LoginButton) findViewById(R.id.login_button);
        loginButton.setReadPermissions("public_profile", "email", "basic_info");

        b_fb_login = (ImageView) findViewById(R.id.b_fb_login);
        Log.i("check", "1");
        b_fb_login.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if (isInternetAvailable()) {

                    loginButton.performClick();

                    loginButton.setPressed(true);

                    loginButton.invalidate();

                    loginButton.registerCallback(callbackManager, mCallBack);

                 //   loginButton.setPressed(false);

                    loginButton.invalidate();

                } else {
                    Toast.makeText(getApplicationContext(), getStringFromId(R.string.no_internet), Toast.LENGTH_LONG).show();
                }
            }
        });

    }

       @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);


            progressDialog.show();
            callbackManager.onActivityResult(requestCode, resultCode, data);
        }
    }


    private FacebookCallback<LoginResult> mCallBack = new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {

            // App code
            GraphRequest request = GraphRequest.newMeRequest(
                    loginResult.getAccessToken(),
                    new GraphRequest.GraphJSONObjectCallback() {
                        @Override
                        public void onCompleted(
                                JSONObject object,
                                GraphResponse response) {


                            Log.e("response: ", response + "");
                            try {

                                String email = object.getString("email");
                                String name = object.getString("name");
                                String gender = object.getString("gender");
                                String id = object.getString("id");
                       //         Toast.makeText(getApplicationContext(),object.getString("gender")+object.getString("id"),Toast.LENGTH_LONG).show();
                                nextScreen(email, getStringFromId(R.string.login_type_facebook), name,id);

                            } catch (Exception e) {
                                e.printStackTrace();
                            }
                        }

                    });

            Bundle parameters = new Bundle();
            parameters.putString("fields", "name,email,gender,id");
            request.setParameters(parameters);
            request.executeAsync();
        }

        @Override


        public void onCancel() {

            progressDialog.cancel1();
            Toast.makeText(getApplicationContext(), getStringFromId(R.string.unable_login), Toast.LENGTH_LONG).show();

        }

        @Override

        public void onError(FacebookException e) {  //when no internet connection

            progressDialog.cancel1();
            Toast.makeText(getApplicationContext(), getStringFromId(R.string.unable_login), Toast.LENGTH_LONG).show();

        }};

        public void nextScreen(String email, String login_type, String name,String login_id) {

            progressDialog.cancel1();
            Intent intent = new Intent(LoginActivity.this, GetMobileActivity.class);
            intent.putExtra("login_type", login_type);
            intent.putExtra("email", email);
            intent.putExtra("name", name);
            intent.putExtra("login_id",login_id);
            startActivity(intent);
            overridePendingTransition(R.anim.enter, R.anim.exit);

        }









}
里卡多·穆蒂(Ricardo Mutti)

进行gradle并执行以下操作:

from: compile 'com.facebook.android:facebook-android-sdk:4.+
to:   compile 'com.facebook.android:facebook-android-sdk:4.12.1'

在这里回答:“参数'context'不能为空”

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

应用程序在Facebook注销时崩溃,NullPointerException

来自分类Dev

Android应用程序在Facebook登录时崩溃

来自分类Dev

应用程序在 getWritableDatabase 时崩溃:NullPointerException

来自分类Dev

Android应用程序因Facebook登录而崩溃

来自分类Dev

Android应用程序因Facebook登录而崩溃

来自分类Dev

应用程序崩溃。...NullPointerException

来自分类Dev

Android应用程序在启动时崩溃:ContactsFragment中的SQLite NullPointerException

来自分类Dev

通过 google plus ios 登录时应用程序崩溃

来自分类Dev

如何获取特定登录名的公共Facebook页面数据(应用程序)到我的android应用程序中?

来自分类Dev

由于custon ListView中的NullPointerException而导致应用程序崩溃

来自分类Dev

(Xamarin Forms) 启动时应用程序崩溃(使用应用程序属性登录/注销)

来自分类Dev

尝试实现Facebook登录时无效的应用程序ID

来自分类Dev

如果用户取消登录,Swift iOS Facebook登录将使应用程序崩溃

来自分类Dev

Android应用程序中的Facebook RSS Feed崩溃

来自分类Dev

从微调框获取项目时,应用程序崩溃-android

来自分类Dev

当我的android应用程序崩溃时获取通知

来自分类Dev

从用户获取 uri 时我的应用程序崩溃

来自分类Dev

NullPointerException使Android应用程序崩溃

来自分类Dev

由于NullPointerException而导致应用程序崩溃

来自分类Dev

从相机获取图像时,Android应用程序仅在三星设备中崩溃

来自分类Dev

在 5.0 版中从收件箱获取短信时应用程序崩溃。在 onViewCreated() 方法中崩溃

来自分类Dev

Facebook登录使用java.lang.ClassCastException使应用程序崩溃:LoginActivity必须实现OnFragmentInteractionListener

来自分类Dev

Facebook登录使用java.lang.ClassCastException使应用程序崩溃:LoginActivity必须实现OnFragmentInteractionListener

来自分类Dev

我按下“使用Facebook登录”后,我的应用程序崩溃React-native fbsdk

来自分类Dev

android Facebook SDK崩溃的应用程序?

来自分类Dev

使用setShadowLayer()时,应用程序仅在4.4.2中崩溃

来自分类Dev

从应用程序委托中检索managedObjectContext时崩溃

来自分类Dev

BluetoothChat应用程序在Android 4.4中的onDestroy()时崩溃

来自分类Dev

将NSArray存储在NSUserDefaults中时,应用程序崩溃

Related 相关文章

  1. 1

    应用程序在Facebook注销时崩溃,NullPointerException

  2. 2

    Android应用程序在Facebook登录时崩溃

  3. 3

    应用程序在 getWritableDatabase 时崩溃:NullPointerException

  4. 4

    Android应用程序因Facebook登录而崩溃

  5. 5

    Android应用程序因Facebook登录而崩溃

  6. 6

    应用程序崩溃。...NullPointerException

  7. 7

    Android应用程序在启动时崩溃:ContactsFragment中的SQLite NullPointerException

  8. 8

    通过 google plus ios 登录时应用程序崩溃

  9. 9

    如何获取特定登录名的公共Facebook页面数据(应用程序)到我的android应用程序中?

  10. 10

    由于custon ListView中的NullPointerException而导致应用程序崩溃

  11. 11

    (Xamarin Forms) 启动时应用程序崩溃(使用应用程序属性登录/注销)

  12. 12

    尝试实现Facebook登录时无效的应用程序ID

  13. 13

    如果用户取消登录,Swift iOS Facebook登录将使应用程序崩溃

  14. 14

    Android应用程序中的Facebook RSS Feed崩溃

  15. 15

    从微调框获取项目时,应用程序崩溃-android

  16. 16

    当我的android应用程序崩溃时获取通知

  17. 17

    从用户获取 uri 时我的应用程序崩溃

  18. 18

    NullPointerException使Android应用程序崩溃

  19. 19

    由于NullPointerException而导致应用程序崩溃

  20. 20

    从相机获取图像时,Android应用程序仅在三星设备中崩溃

  21. 21

    在 5.0 版中从收件箱获取短信时应用程序崩溃。在 onViewCreated() 方法中崩溃

  22. 22

    Facebook登录使用java.lang.ClassCastException使应用程序崩溃:LoginActivity必须实现OnFragmentInteractionListener

  23. 23

    Facebook登录使用java.lang.ClassCastException使应用程序崩溃:LoginActivity必须实现OnFragmentInteractionListener

  24. 24

    我按下“使用Facebook登录”后,我的应用程序崩溃React-native fbsdk

  25. 25

    android Facebook SDK崩溃的应用程序?

  26. 26

    使用setShadowLayer()时,应用程序仅在4.4.2中崩溃

  27. 27

    从应用程序委托中检索managedObjectContext时崩溃

  28. 28

    BluetoothChat应用程序在Android 4.4中的onDestroy()时崩溃

  29. 29

    将NSArray存储在NSUserDefaults中时,应用程序崩溃

热门标签

归档