小编fei*_*ong的帖子

Rxjava Android如何使用Zip运算符

我在为我的android项目理解RxJava中的zip操作符时遇到了很多麻烦.问题我需要能够发送网络请求上传视频然后我需要发送网络请求上传图片最后我需要添加说明并使用前两个请求的响应上传视频和图片的位置网址以及我的服务器的说明.

我认为zip操作符对于此任务是完美的,因为我知道我们可以接受两个可观察量(视频和图片请求)的响应并将它们用于我的最终任务.但我似乎无法让这种情况发生在我想象中.

我正在寻找一个人来回答如何用一些伪代码在概念上完成这个.谢谢

java android rx-java

50
推荐指数
2
解决办法
6万
查看次数

如何正确设置Volley以从URL下载图像

我知道Volley应该简单地下载和缓存图像,但是我一直在努力实现它.我已经浏览了网络以及有关凌空的stackoverflow上的许多文章,但我找到的所有示例似乎都不适合我.

我只想使用volley来下载和缓存来自给定URL的图像,而不是进行任何HTTP JSON REST处理.只需要获取给定的URL,下载位图并将它们设置为imageview,然后将它们添加到缓存中.

这是我迄今为止的最新尝试.如何正确加载和缓存图像?

if (data.getImageUrl() != null) {
        try {

            holder.thumbnail.setTag(data.getImageUrl());

        Cache cache = ImgController.getInstance().getRequestQueue().getCache();
        Cache.Entry entry = cache.get(data.getImageUrl());

            if (entry != null) {
                try {
                    String cImg = new String(entry.data, "UTF-8");
                    LruBitmapCache bitmapCache = new LruBitmapCache();
                    holder.thumbnail.setImageBitmap(bitmapCache.getBitmap(cImg));
                } catch (UnsupportedEncodingException e) {
                    e.printStackTrace();
                }

            } else {

                ImageLoader imageLoader = ImgController.getInstance().getImageLoader();

                imageLoader.get(data.getImageUrl(), new ImageListener() {

                    @Override
                    public void onErrorResponse(VolleyError error) {

                        holder.thumbnail.setImageResource(R.drawable.filler_icon);

                    }

                    @Override
                    public void onResponse(ImageLoader.ImageContainer response, boolean arg1) {
                        if (response.getBitmap() != null) {
                            // …
Run Code Online (Sandbox Code Playgroud)

android caching bitmap android-volley

5
推荐指数
2
解决办法
1万
查看次数

Robolectric 3.0 java.lang.NoSuchMethodException 创建活动

我很高兴听到 android studio 做了一些更新,使单元测试在 android studio 中变得简单,所以我一直在尝试设置 roboelectric,但我无法克服在以下方法中发生的这个错误。

MainActivity = Robolectric.buildActivity(MainActivity.class).create().get();
Run Code Online (Sandbox Code Playgroud)

使用以下堆栈跟踪

引起:java.lang.RuntimeException: java.lang.NoSuchMethodException: java.lang.Object.attach(android.content.Context, android.app.ActivityThread, android.app.Instrumentation, android.os.IBinder, int, android .app.Application, android.content.Intent, android.content.pm.ActivityInfo, java.lang.CharSequence, android.app.Activity, java.lang.String, android.app.Activity$NonConfigurationInstances, android.content.res .Configuration) 在 org.robolectric.util.ReflectionHelpers.traverseClassHierarchy(ReflectionHelpers.java:248) 在 org.robolectric.util.ReflectionHelpers.callInstanceMethod(ReflectionHelpers.java:138) ... 36 更多

为什么会发生这种情况以及我可以做些什么来克服它?

java testing android robolectric

5
推荐指数
0
解决办法
579
查看次数

如何在Android中正确解析Reddit API

所以我一直在尝试解析Reddits r/hot/.json API以获取主题信息的列表视图,但我似乎无法使我的JSON正确.我到处寻找,我似乎找不到如何为reddit做这个的好例子.这是我到目前为止...

JSONObject response = new JSONObject(result);
        JSONObject data = response.getJSONObject("data");
        JSONArray hotTopics = data.getJSONArray("children");

        for(int i=0; i<hotTopics.length(); i++) {
            JSONObject topic = hotTopics.getJSONObject(i);

            String author = topic.getString("author");
            String imageUrl = topic.getString("thumbnail");
            String postTime = topic.getString("created_utc");
            String rScore = topic.getString("score");
            String title = topic.getString("title");

            topicdata.add(new ListData(title, author, imageUrl, postTime, rScore));
            Log.v(DEBUG_TAG,topicdata.toString());
        }
Run Code Online (Sandbox Code Playgroud)

-------编辑可以提供更多详细信息我在" http://www.reddit.com/r/hot/.json?sort=new&count=25 " 上做了一个HttpGet请求当我运行我的代码时站起来我得到以下JSONException

07-06 22:23:11.628 2580-2580/com.google.android.gms.redditviewr.app W/System.err? org.json.JSONException: No value for author 07-06 22:23:11.632 2580-2580/com.google.android.gms.redditviewr.app W/System.err? at org.json.JSONObject.get(JSONObject.java:354) 07-06 22:23:11.632 2580-2580/com.google.android.gms.redditviewr.app W/System.err? at org.json.JSONObject.getString(JSONObject.java:514) 07-06 22:23:11.636 …

java android json reddit

4
推荐指数
1
解决办法
3185
查看次数

Android服务与多个片段进行通信

我有一个具有单个活动的应用程序,该活动在一种自定义导航抽屉设计中托管多个片段。这些片段中的两个依赖于服务以将其返回以显示json信息。我希望能够在启动屏幕上启动该服务以加载所需的数据,然后将json异步传达给这些片段。

我一般都不熟悉android和编程,所以如果我的动作不了解,请原谅,但是我首先尝试将片段注册为接收者,然后简单地广播包含json信息的捆绑包的意图。这似乎不起作用,因为当服务广播意图并错过意图时,有时片段将无法运行。

然后,我决定一意孤行,但这导致了过时的信息,更不用说继承安全性了。

启动服务后,让服务执行后台网络请求并随后通过任何活动或片段显示返回的信息的最佳方法是什么?

java android android-intent android-service android-fragments

2
推荐指数
1
解决办法
2453
查看次数