java – 使用Singleton模式的Android Volley错误
我试图按照
this guide关于如何使用Singleton与Volley一起工作.目标是使用此Singleton将我的RequestQueue放在Application上下文中,这样它就不会受到从landscape到portrait等的影响.
但是我收到以下错误:
它指向这一行:
我不确定这里有什么问题,因为我在代码中可以看到VolleySingleton.java中的getInstance()方法不应该 VolleySingleton.java public class VolleySingleton { private static VolleySingleton mInstance = null; private RequestQueue mRequestQueue; private ImageLoader mImageLoader; private VolleySingleton(){ mRequestQueue = Volley.newRequestQueue(HelperApplication.getAppContext()); mImageLoader = new ImageLoader(this.mRequestQueue,new ImageLoader.ImageCache() { private final LruCache<String,Bitmap> mCache = new LruCache<String,Bitmap>(10); public void putBitmap(String url,Bitmap bitmap) { mCache.put(url,bitmap); } public Bitmap getBitmap(String url) { return mCache.get(url); } }); } public static VolleySingleton getInstance(){ if(mInstance == null){ mInstance = new VolleySingleton(); } return mInstance; } public RequestQueue getRequestQueue(){ return this.mRequestQueue; } public ImageLoader getImageLoader(){ return this.mImageLoader; } } HelperApplication.java public class HelperApplication extends Application{ private static HelperApplication mInstance; private static Context mAppContext; @Override public void onCreate() { super.onCreate(); mInstance = this; this.setAppContext(getApplicationContext()); } public static HelperApplication getInstance(){ return mInstance; } public static Context getAppContext() { return mAppContext; } public void setAppContext(Context mAppContext) { this.mAppContext = mAppContext; } } 这是我在实施Singlton之前从Volley使用的代码行,它完美地工作但不满足我的需求:
我在Genymotion上调试.
我需要帮助才能传递此错误. 解决方法
如果您阅读了代码链接到的
Github repo的自述文件,具体提到,则需要将其添加到清单XML中.
<application android:name="com.company.MyApplication"> </application> 在您的情况下,将com.company.MyApplication更改为xxx.yyy.HelperApplication. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |