Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用volley库的my image loader函数出现空指针异常_Java_Android_Android Volley - Fatal编程技术网

Java 使用volley库的my image loader函数出现空指针异常

Java 使用volley库的my image loader函数出现空指针异常,java,android,android-volley,Java,Android,Android Volley,我正在尝试将图像下载并加载到android应用程序中的NetworkImageView中。。但我得到了这个错误 原因:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“com.android.volley.toolbox.ImageLoader com.example.username.socialoid.AppController.getImageLoader()” 不知道发生了什么事。通常,空指针是由于声明错误而发生的,但我在这里没有犯错误。。请帮

我正在尝试将图像下载并加载到android应用程序中的NetworkImageView中。。但我得到了这个错误

原因:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“com.android.volley.toolbox.ImageLoader com.example.username.socialoid.AppController.getImageLoader()”

不知道发生了什么事。通常,空指针是由于声明错误而发生的,但我在这里没有犯错误。。请帮忙

这是我的代码

    // user profile pic
    profilePic.setImageUrl(item.getProfilePic(), imageLoader);
imageloader在另一个类中,如下所示

private RequestQueue mRequestQueue;
private ImageLoader mImageLoader;

public ImageLoader getImageLoader() {
    getRequestQueue();
    if (mImageLoader == null) {
        getLruBitmapCache();
        mImageLoader = new ImageLoader(this.mRequestQueue, mLruBitmapCache);
    }

    return this.mImageLoader;
}
我的LRubitMacache课程

 import com.android.volley.toolbox.ImageLoader.ImageCache;
 import android.graphics.Bitmap;
 import android.support.v4.util.LruCache;

 public class LruBitmapCache extends LruCache<String, Bitmap> implements
    ImageCache {
 public static int getDefaultLruCacheSize() {
    final int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024);
    final int cacheSize = maxMemory / 8;

    return cacheSize;
}

public LruBitmapCache() {
    this(getDefaultLruCacheSize());
}

public LruBitmapCache(int sizeInKiloBytes) {
    super(sizeInKiloBytes);
}

@Override
protected int sizeOf(String key, Bitmap value) {
    return value.getRowBytes() * value.getHeight() / 1024;
}

@Override
public Bitmap getBitmap(String url) {
    return get(url);
}

@Override
public void putBitmap(String url, Bitmap bitmap) {
    put(url, bitmap);
}
}
import com.android.volley.toolbox.ImageLoader.ImageCache;
导入android.graphics.Bitmap;
导入android.support.v4.util.LruCache;
公共类LruBitmapCache扩展了LruCache实现
图像缓存{
公共静态int getDefaultLruCacheSize(){
final int maxMemory=(int)(Runtime.getRuntime().maxMemory()/1024);
最终int cacheSize=maxMemory/8;
返回缓存大小;
}
公共LRubitMacache(){
这个(getDefaultLruCacheSize());
}
公共lrubitMacache(int-sizeInKiloBytes){
超级(sizeInKiloBytes);
}
@凌驾
受保护的int-sizeOf(字符串键、位图值){
返回值.getRowBytes()*value.getHeight()/1024;
}
@凌驾
公共位图getBitmap(字符串url){
返回get(url);
}
@凌驾
公共位图(字符串url、位图){
put(url、位图);
}
}
完整日志::

11-30 15:35:39.635  27827-27827/com.example.hissamyousaf.socialoid E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: com.example.hissamyousaf.socialoid, PID: 27827
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.hissamyousaf.socialoid/com.example.hissamyousaf.socialoid.Home}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.hissamyousaf.socialoid/com.example.hissamyousaf.socialoid.NewsFeed}: java.lang.NullPointerException: Attempt to invoke virtual method 'com.android.volley.toolbox.ImageLoader com.example.hissamyousaf.socialoid.AppController.getImageLoader()' on a null object reference
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2693)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758)
            at android.app.ActivityThread.access$900(ActivityThread.java:177)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:145)
            at android.app.ActivityThread.main(ActivityThread.java:5942)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
     Caused by: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.hissamyousaf.socialoid/com.example.hissamyousaf.socialoid.NewsFeed}: java.lang.NullPointerException: Attempt to invoke virtual method 'com.android.volley.toolbox.ImageLoader com.example.hissamyousaf.socialoid.AppController.getImageLoader()' on a null object reference
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2693)
            at android.app.ActivityThread.startActivityNow(ActivityThread.java:2435)
            at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:135)
            at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:347)
            at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:776)
            at android.widget.TabHost.setCurrentTab(TabHost.java:435)
            at android.widget.TabHost.addTab(TabHost.java:262)
            at com.example.hissamyousaf.socialoid.Home.onCreate(Home.java:42)
            at android.app.Activity.performCreate(Activity.java:6289)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758)
            at android.app.ActivityThread.access$900(ActivityThread.java:177)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:145)
            at android.app.ActivityThread.main(ActivityThread.java:5942)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'com.android.volley.toolbox.ImageLoader com.example.hissamyousaf.socialoid.AppController.getImageLoader()' on a null object reference
            at com.example.hissamyousaf.socialoid.FeedListAdapter.<init>(FeedListAdapter.java:28)
            at com.example.hissamyousaf.socialoid.NewsFeed.onCreate(NewsFeed.java:43)
            at android.app.Activity.performCreate(Activity.java:6289)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)
            at android.app.ActivityThread.startActivityNow(ActivityThread.java:2435)
            at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:135)
            at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:347)
            at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:776)
            at android.widget.TabHost.setCurrentTab(TabHost.java:435)
            at android.widget.TabHost.addTab(TabHost.java:262)
            at com.example.hissamyousaf.socialoid.Home.onCreate(Home.java:42)
            at android.app.Activity.performCreate(Activity.java:6289)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758)
            at android.app.ActivityThread.access$900(ActivityThread.java:177)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:145)
            at android.app.ActivityThread.main(ActivityThread.java:5942)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
11-30 15:35:39.635 27827-27827/com.example.hissamyousaf.socialoid E/AndroidRuntime﹕ 致命异常:主
进程:com.example.hissamyousaf.socialoid,PID:27827
java.lang.RuntimeException:无法启动活动组件信息{com.example.hissamyosaf.socialoid/com.example.hissamyosaf.socialoid.Home}:java.lang.RuntimeException:无法启动活动组件信息{com.example.hissamyosaf.socialoid/com.example.hissamyosaf.socialoid.NewsFeed}:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“com.android.volley.toolbox.ImageLoader com.example.hissamyousaf.socialoid.AppController.getImageLoader()”
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2693)上
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758)上
在android.app.ActivityThread.access$900(ActivityThread.java:177)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448)
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:145)
位于android.app.ActivityThread.main(ActivityThread.java:5942)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
原因:java.lang.RuntimeException:无法启动活动组件信息{com.example.hissamyousaf.socialoid/com.example.hissamyousaf.socialoid.NewsFeed}:java.lang.NullPointerException:尝试调用虚拟方法'com.android.volley.toolbox.ImageLoader.com.example.hissamyousaf.socialoid.AppController.getImageLoader()'在空对象引用上
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2693)上
位于android.app.ActivityThread.startActivityNow(ActivityThread.java:2435)
在android.app.LocalActivityManager.moveToState(LocalActivityManager.java:135)上
在android.app.LocalActivityManager.startActivity(LocalActivityManager.java:347)上
位于android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:776)
位于android.widget.TabHost.setCurrentTab(TabHost.java:435)
位于android.widget.TabHost.addTab(TabHost.java:262)
在com.example.hissamyousaf.socialoid.Home.onCreate(Home.java:42)上
位于android.app.Activity.performCreate(Activity.java:6289)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)上
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758)上
在android.app.ActivityThread.access$900(ActivityThread.java:177)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448)
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:145)
位于android.app.ActivityThread.main(ActivityThread.java:5942)
位于java.lang.reflect.Method.invoke(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
原因:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法'com.android.volley.toolbox.ImageLoader.com.example.hissamyousaf.socialoid.AppController.getImageLoader()'
位于com.example.hissamyousaf.socialoid.FeedListAdapter.(FeedListAdapter.java:28)
在com.example.hissamyousaf.socialoid.NewsFeed.onCreate(NewsFeed.java:43)上
位于android.app.Activity.performCreate(Activity.java:6289)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)上
位于android.app.ActivityThread.startActivityNow(ActivityThread.java:2435)
在android.app.LocalActivityManager.moveToState(LocalActivityManager.ja