猿问

尝试调用虚拟方法 Volley Android Api

我正在为 Android App Login 编写代码。应用程序将使用 volley 库从网站 api 发出请求。一切似乎都很好,但是当我在登录框中输入电子邮件和密码并单击登录按钮时,应用程序崩溃了。Logcat 显示尝试调用虚拟方法。我试图弄清楚一整天,但没有任何解决方案

这就是 Logcat 显示的内容


java.lang.NullPointerException: Attempt to invoke virtual method 'void my.afamily.rrmn.app.AppController.addToRequestQueue(com.android.volley.Request, java.lang.String)' on a null object reference

at my.afamily.rrmn.LoginActivity.checkLogin(LoginActivity.java:174)

    at my.afamily.rrmn.LoginActivity.access$200(LoginActivity.java:30)

    at my.afamily.rrmn.LoginActivity$1.onClick(LoginActivity.java:75)

    at android.view.View.performClick(View.java:6325)

    at android.view.View$PerformClick.run(View.java:25098)

    at android.os.Handler.handleCallback(Handler.java:790)

    at android.os.Handler.dispatchMessage(Handler.java:99)

    at android.os.Looper.loop(Looper.java:192)

    at android.app.ActivityThread.main(ActivityThread.java:6717)

    at java.lang.reflect.Method.invoke(Native Method)

    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:445)

    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:875)

这是 AppController 类的代码


import android.app.Application;

import android.text.TextUtils;


import com.android.volley.Request;

import com.android.volley.RequestQueue;

import com.android.volley.toolbox.Volley;


public class AppController extends Application {


public static final String TAG = AppController.class.getSimpleName();


private RequestQueue mRequestQueue;


private static AppController mInstance;


@Override

public void onCreate() {

    super.onCreate();

    mInstance = this;

}


public static synchronized AppController getInstance() {

    return mInstance;

}


public RequestQueue getRequestQueue() {

    if (mRequestQueue == null) {

        mRequestQueue = Volley.newRequestQueue(getApplicationContext());

    }


    return mRequestQueue;

}


aluckdog
浏览 85回答 1
1回答

忽然笑

这条线AppController.getInstance().addToRequestQueue(strReq, tag_string_req);class AppController在这里,您正在调用extends的实例Application,您需要在 else 中添加此类AndroidManifest.xml,它将返回NullException所以添加这个manifest file<application android:name="package.AppController"&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;android:allowbackup="true"&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;android:icon="@drawable/ic_launcher"&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;android:label="@string/app_name"&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;android:theme="@style/AppTheme">另请参阅此以获取更多信息
随时随地看视频慕课网APP

相关分类

Java
我要回答