首先导入依赖:

    compile 'com.squareup.retrofit2:retrofit:2.0.1'compile 'com.squareup.retrofit2:converter-gson:2.0.1'compile 'com.squareup.retrofit2:adapter-rxjava:2.0.1'compile 'io.reactivex:rxandroid:1.1.0'compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'compile 'com.squareup.okhttp3:logging-interceptor:3.4.1'compile 'com.android.support:mediarouter-v7:25.0.0'compile 'com.android.support:appcompat-v7:25.0.0'compile 'com.android.support:recyclerview-v7:25.0.0'compile 'com.android.support:appcompat-v7:23.4.0'compile 'com.facebook.fresco:fresco:0.11.0'

主Main


import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;import retrofit2.Retrofit;
import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;
import retrofit2.converter.gson.GsonConverterFactory;
import rx.Observable;
import rx.Observer;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;public class MainActivity extends AppCompatActivity {private HomeAdapter mAdapter;private RecyclerView mRecyclerView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mRecyclerView  = (RecyclerView) findViewById(R.id.id_recyclerview);getUrljson1();}private void getUrljson1(){Retrofit retrofit = new Retrofit.Builder().baseUrl(Api.Urljson1).addConverterFactory(GsonConverterFactory.create()).addCallAdapterFactory(RxJavaCallAdapterFactory.create()).build();ApiService apiService = retrofit.create(ApiService.class);Observable<Users> muser = apiService.getUser();muser.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer<Users>() {@Overridepublic void onCompleted() {}@Overridepublic void onError(Throwable e) {}@Overridepublic void onNext(Users users) {mRecyclerView.setLayoutManager(new LinearLayoutManager(MainActivity.this));mRecyclerView.setAdapter(mAdapter = new HomeAdapter(users.getNewslist(),MainActivity.this));}});};}

Api类

public class Api {public static final String Urljson1 = "https://api.tianapi.com/wxnew/";
//    public static final String Urljson2="https://api.tianapi.com/wxnew/?key=8d6e3228d25298f13af4fc40ce6c9679&num=10";
//    public static final String Urljson3="http://www.yulin520.com/a2a/impressApi/news/mergeList?sign=C7548DE604BCB8A17592EFB9006F9265&pageSize=10&gender=2&ts=1871746850&page=1";
}

ApiService 类


import retrofit2.http.GET;
import rx.Observable;/*** Created by wangjiao on 2017/11/3.*/public interface ApiService {@GET("?key=8d6e3228d25298f13af4fc40ce6c9679&num=20&page=")Observable<Users> getUser();
}

HomeAdapter 适配器


import android.content.Context;
import android.net.Uri;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.drawee.interfaces.DraweeController;
import com.facebook.drawee.view.SimpleDraweeView;import java.util.List;/*** Created by wangjiao on 2017/11/3.*/public class HomeAdapter extends RecyclerView.Adapter<HomeAdapter.MyViewHolder>
{List<Users.NewslistBean> userses;Context context;public HomeAdapter(List<Users.NewslistBean> userses, Context context) {this.userses = userses;this.context = context;}SimpleDraweeView image;@Overridepublic MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType){MyViewHolder holder = new MyViewHolder(LayoutInflater.from(context).inflate(R.layout.item_home, parent, false));return holder;}@Overridepublic void onBindViewHolder(MyViewHolder holder, int position){holder.tv.setText(userses.get(position).getTitle());Uri uri =  Uri.parse(userses.get(position).getPicUrl());DraweeController controller = Fresco.newDraweeControllerBuilder().setUri(uri).setAutoPlayAnimations(true).build();image.setController(controller);}@Overridepublic int getItemCount(){return userses.size();}class MyViewHolder extends RecyclerView.ViewHolder{TextView tv;public MyViewHolder(View view){super(view);tv = (TextView) view.findViewById(R.id.text);image = (SimpleDraweeView) view.findViewById(R.id.image);}}
}

MyApp类

import android.app.Application;import com.facebook.drawee.backends.pipeline.Fresco;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;/*** 1. 类的用途* 2. @author forever* 3. @date 2017/9/8 12:33*/public class MyApp extends Application {public static MyApp mInstance;@Overridepublic void onCreate() {super.onCreate();mInstance = this;ImageLoaderConfiguration aDefault = ImageLoaderConfiguration.createDefault(getApplicationContext());ImageLoader.getInstance().init(aDefault);//必须初始化Fresco,不然加载不出来图片Fresco.initialize(this);}public static MyApp getInstance() {return mInstance;}}

封装User类


import java.util.List;/*** Created by wangjiao on 2017/11/3.*/public class Users {/*** code : 200* msg : success* newslist : [{"ctime":"2017-11-03","title":"长沙3名市管干部受到党纪重处分","description":"红网","picUrl":"https://t1.qpic.cn/mblogpic/48da2c609d0a7f9d083e/2000","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509706512&signature=Te*2gO2rGnYcmIDbSqr3PEmTOvtepT3IDW6HMlkuRmTulEwyaSil9G-1CNWlu2fu8HVpkb5NAhHUgiYujzEzowfSLLHSVnAZ97zau5MaFHA="},{"ctime":"2017-11-03","title":"九旬老人突然走失,附近新村居民一起帮家属寻找!你见过他么?","description":"社会传真","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-28950100.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509706512&signature=zJekcz1RjF6mOhoCfKHnYXaBdPUjgTQoQRyLXCsD8zDxGfP09iql*7ce2*8tohODUdZFXoOXGCAA5n3AoFdFGzbWrlJKU4NlL7oFshssl2k="},{"ctime":"2017-11-03","title":"【行摄金秋】时光荏苒你最美好,一同走进临安指南村,探访华东最美古村落,赏醉美五彩秋景(11月11日)","description":"余姚新闻网","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57192418.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509706511&signature=FWiU9-FL1CSsACLfxR0AqxPotSv-YQDguAI*e8sXMUFqxe778DiRIpqx5nZc2BEKs839ifICzXKBanlGV2XGrdVmC1Gn3rm60Btm3YRE*gY="},{"ctime":"2017-11-03","title":"快看!省属事业单位招聘职位表出炉 在苏岗位有哪些?","description":"社会传真","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-28950100.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509706511&signature=upIvz1GERXXUSRjx9x7N8yBRzRfGUO5Q3vlT*MiZID9MnXDKlo1c5YkXsze20xlCKFWBs*WFWP54JvC2tOUzlc5FeYI70nIcAMZcWvdTBV0="},{"ctime":"2017-11-03","title":"直降7℃+7级大风,明后两天冷空气又要来巢湖搞事情!冷到你想哭\u2026","description":"巢湖发布","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57192651.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509706511&signature=qx2JHW7bGLljb*wUyo6JeW-zoEa*LR9HT8b4csB3vjYVuEHdq5cGMWkc5yWcE5XUHoj41eEpYsSIN2P*0TKBkPZ9xGapf2Md819ESEbMyz8="},{"ctime":"2017-11-03","title":"汉族语言特点","description":"大雅古琴网","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-33867854.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703241&signature=Odk06F8xCCb61fgU6kg97K714fLfPkNxIxOng-i12EftI7m08Oghodex6fBUTPg0m*yO6jk4PdX-xmVHBtsxOWppKTnonsvtt1CxjHIBqJM="},{"ctime":"2017-11-03","title":"江云祥新作:问君何能尔,心远地自偏","description":"青藤艺术","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57107113.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703240&signature=pBkTxif8j0Bd8wmc9UI99QN7gHv7K4l3HRzGu6vqMaQBRafN1zbcIiqLjY58SHkgBRo9FmI7yh1DQ1sD4bK5HmhicHpYMU8Rax2M9og2pPo="},{"ctime":"2017-11-03","title":"恽寿平:绘画的最高境界在于传神","description":"青藤艺术","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57107118.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703240&signature=qKsqZVxzt1wRNwJ1VW68nQ*JUrWnvsxQkYNH0aO-NcnyXJiYc2W1noYc75xgKaYi5zkSSbSFIJeVelIQxBTfjh2faIGM5PIxvKmUBjzdfwY="},{"ctime":"2017-11-03","title":"老北京话\u201c猫儿腻\u201d和猫有关吗?","description":"皇城根儿胡同串子","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57098183.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703240&signature=ARKNC7eteib70HYKeQsL2dHnHg7P9IAgm0RwAi0i9Q*lPN8ruQlvSMrr9Fe6OewbNpAwK7h0cWr*rtSX3COklRP-4quK0N3bLsfUuP7f8QA="},{"ctime":"2017-11-03","title":"市场:四轮生肖邮品目前市场价格","description":"集邮杂志","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-37619088.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703239&signature=1vntbXeWNaeRPxzOSjCeuNYKCZA9aE2bD9WtGxoDqM8N*OaxuhNQBte7aVmrkarEapEhi8Vi8GHR9*hobnZSCsQEDO7aSwvXE1WOKF2Ch5s="},{"ctime":"2017-11-03","title":"明年不是二胎了","description":"集邮杂志","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-37619088.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703239&signature=KVYbYj4oNUKtYIgvp54xC2hQ82PfKCLi3AH*Y1aJnO2K3m2sysg9CzPxkmazlJ8cV8bbBND32ykUdsQAneQL7dMVYyyLEJnFO*lntbSyB-E="},{"ctime":"2017-11-03","title":"名著也可以如此有趣?四大名著中的歇后语汇总!","description":"湖南考试招生","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-37622005.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703239&signature=dOxOP82Uk5h39lVgBUMPVES0hce2z7MSQlq1X2hI*z2Vo572M9XavK-ZerBaiyZDZxNfLrUvQFq*OJzQ0VFLK6k7uNiY4Nn2W0g3f4mc-Qg="},{"ctime":"2017-11-03","title":"我们仨的读书会","description":"新东方","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57090684.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703238&signature=TJrptke1WIEWtWjlaIe5dkLajvlJxxoyP3yQ5syUzoXe0wHI9u3cTMQvKQqwSxE1hBQ3mA*JwGSnZA5D8YEjqrfZcD8WwD*o4pf2ikZFizI="},{"ctime":"2017-11-03","title":"诺奖得主石黑一雄:真诚,是通往人心的最好途径","description":"新东方","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57090644.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703238&signature=5MjlmhDN7XtAHm9*v5mJf90BGvoWpxSZTTL9cM0*ndfwRwHLZIm1UT6EFv5Xb*lxbTwAnQ*OBCYHyTrLC9lvUSwzewwZj-oRaSt7HeUkPvI="},{"ctime":"2017-11-03","title":"禅意竹雕,换个方式惊世骇俗!","description":"植物网","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-56636068.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703238&signature=DCh0rnBdLB09YzVoSRoKTBp64FJ49R2laUJSquWmennH4DSnKkr-3i4pfpS*rtAAHoDwXIeVlCCrnsN25GRup5QCfPdAcAOZWidhgSxkFTY="},{"ctime":"2017-11-03","title":"广购跨省开分店,书店转型升级还能这么玩?","description":"出版商务周报","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-29259560.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703237&signature=n0RNWL5Nmtl3K5Yl9Sk-iDDBE47j-piNc9mZkKoZ6licvHa5mUP-pbRxsyMpTELrh*X6ATHgtAI1YXkxAlnt*gUSu23OJDzmhTusyBkAwXQ="},{"ctime":"2017-11-03","title":"荐馆 | 有的地方暖心,这个博物馆暖\u2026\u2026脚","description":"蝌蚪五线谱","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-30961035.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703237&signature=Qc*06*bx6ZdCbJY8JVnu-JKQFaigqaYddi4shuCG30W29aOXkzu7rjZ2ecolQwAAjaKM01d4wZiMXeZXc7chg-N3XVJSfzJ7St-2dkYRmkw="},{"ctime":"2017-11-03","title":"崖柏火了,老外们都不淡定了!!!","description":"崖柏","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-57086563.jpg/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703237&signature=NOwGF4TQNzSim*YZ9BdiwM7lEJGvlen0jNda63w5G8rE3jEnkvPoCD8lIpk*fBVPwyL-QtOQcEbDuJ9wjt-LHHYyss--B8VRv3DsnS-fRbw="},{"ctime":"2017-11-03","title":"【热门报价】11月3日中国集币在线钱币报价","description":"集币在线","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-37625028.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703236&signature=uGBF2dWkxriTOnzV19lPggtr47*A6JLgIPiOy00JCSFOWKbjU14Zj2LfHgnemRl9MR1LpPmZvfHZghwqEVMsHbQZJ8mx9*IpGDvw6nTS*Sg="},{"ctime":"2017-11-03","title":"【纸币】第二套人民币图文详解,用过的人都老了!","description":"集币在线","picUrl":"https://zxpic.gtimg.com/infonew/0/wechat_pics_-37625028.static/640","url":"https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509703236&signature=1hmsAo3dQfR96BiJRpJ3GAY2rnVc4i4XWnkYSHAB2srhA0TTtdKj68XpOvSSKwe1VsUWFopIROi0DD8rjExM6qKpoP-qfzRnn3HjTlKGfcE="}]*/private int code;private String msg;private List<NewslistBean> newslist;public int getCode() {return code;}public void setCode(int code) {this.code = code;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public List<NewslistBean> getNewslist() {return newslist;}public void setNewslist(List<NewslistBean> newslist) {this.newslist = newslist;}public static class NewslistBean {/*** ctime : 2017-11-03* title : 长沙3名市管干部受到党纪重处分* description : 红网* picUrl : https://t1.qpic.cn/mblogpic/48da2c609d0a7f9d083e/2000* url : https://mp.weixin.qq.com/s?src=16&ver=466&timestamp=1509706512&signature=Te*2gO2rGnYcmIDbSqr3PEmTOvtepT3IDW6HMlkuRmTulEwyaSil9G-1CNWlu2fu8HVpkb5NAhHUgiYujzEzowfSLLHSVnAZ97zau5MaFHA=*/private String ctime;private String title;private String description;private String picUrl;private String url;public String getCtime() {return ctime;}public void setCtime(String ctime) {this.ctime = ctime;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getDescription() {return description;}public void setDescription(String description) {this.description = description;}public String getPicUrl() {return picUrl;}public void setPicUrl(String picUrl) {this.picUrl = picUrl;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}}
}

Main.xml

    <android.support.v7.widget.RecyclerViewandroid:id="@+id/id_recyclerview"android:layout_width="wrap_content"android:layout_height="wrap_content" />

item布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"xmlns:fresco="http://schemas.android.com/apk/res-auto">//这里SimpleDraweeView可以实现图片加载错误显示默认图片<com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/image"android:layout_margin="5dp"android:layout_width="100dp"android:layout_height="100dp"fresco:actualImageScaleType="focusCrop"fresco:placeholderImage="@mipmap/ic_launcher"fresco:placeholderImageScaleType="focusCrop"fresco:progressBarImage="@mipmap/ic_launcher"fresco:progressBarImageScaleType="focusCrop"fresco:progressBarAutoRotateInterval="5000"fresco:failureImage="@mipmap/ic_launcher"fresco:failureImageScaleType="focusCrop"fresco:retryImage="@mipmap/ic_launcher"fresco:retryImageScaleType="focusCrop"fresco:fadeDuration="5000"fresco:backgroundImage="@android:color/holo_orange_light"fresco:roundAsCircle="true"fresco:roundedCornerRadius="30dp"fresco:roundTopLeft="true"fresco:roundTopRight="true"fresco:roundBottomLeft="true"fresco:roundBottomRight="true"fresco:roundingBorderWidth="5dp"fresco:roundingBorderColor="#008dd7"/><TextView
        android:id="@+id/text"android:layout_width="wrap_content"android:layout_height="100dp" />
</LinearLayout>

最后记得在AndroidManifest.xml中添加网络权限与android:name=”.MyApp”

简单实现Rectrofit+RXJAVA+Fresco相关推荐

  1. android RxJava(RxAndroid)的简单使用

    今天,简单讲讲android里如何使用RxJava(RxAndroid). Android框架系列: 一.android EventBus的简单使用 二.android Glide简单使用 三.and ...

  2. Fresco入门使用及简单特性介绍

    概述 随着摄影技术的不断发展和普及,我们的应用程序大多数都具有显示图片这样的需求,在Android移动设备上,由于平台计算能力的差异.设备硬件的差异,我们很难将图片在不同的设备上完美地显示,经常出现的 ...

  3. RxJava使用(一)基本使用

    前言 RxJava及RxAndroid比较详细的介绍可以参考该文档<给 Android 开发者的 RxJava 详解> 基本介绍 ReactiveX 及 RxJava使用大部分来自和参考& ...

  4. RxJava 从源码到使用

    几个关键类: io.reactivex.rxjava3.core.ObservableSource public interface ObservableSource<@NonNull T> ...

  5. RxJava 在Android中的应用(一)

    RxJava 在Android中的应用 RxJava 是什么, 能解决什么问题 对比其他技术理解为什么要选择RxJava RxJava的相关API RxJava在Android中的典型使用场景 RxJ ...

  6. RxJava初级解析(一)

    扔物线大大的文章确实写的牛 扔物线,看了他的文章受益匪浅,文中很多会引用到他的一些分析,没有看过他的文章的建议先看一下. 一.概述 先简单介绍一下RxJava的思想 RxJava 有四个基本概念:Ob ...

  7. Android--Retrofit+RxJava(二)

    1,现在响应式编程也是越来越多在项目中使用了,刚好上篇我们简单了介绍了一下Retrofit,那么我们来开始试着两个一起用吧,不过不了解RxJava的同学可以先去看一看这个文章(挺好的):http:// ...

  8. Java中expecial,RxJava 学习笔记 (一)

    作者: 一字马胡 转载标志 [2017-12-13] 更新日志 日期 更新内容 备注 2017-12-13 RxJava学习笔记系列 系列笔记 (一) 2017-12-15 增加系列笔记(二) 201 ...

  9. rxjava 背压_背压加载文件– RxJava常见问题解答

    rxjava 背压 事实证明,将文件作为流进行处理非常有效且方便. 许多人似乎忘记了,自Java 8(3年以上!)以来,我们可以很容易地将任何文件变成一行代码: String filePath = & ...

  10. 背压加载文件– RxJava常见问题解答

    事实证明,将文件作为流进行处理非常有效且方便. 许多人似乎忘记了,自Java 8(3年多!)以来,我们可以很容易地将任何文件变成一行代码: String filePath = "foobar ...

最新文章

  1. 2022-2028年中国PGA树脂行业全景调研及投资前景展望报
  2. 8位图像的双边滤波器实现
  3. 中国是全球AI停车最大市场
  4. Python学习笔记之基础(二)变量和类型
  5. IAR 使用小技巧--持续更新
  6. aspose 生成word 简单的文档操作
  7. PCA、SVD、ZCA白化理论与实现
  8. 3行代码Python搞定图片清晰度识别,原来我们看到不一定是这样的
  9. 如何在JAVA编程语言程序开发中更好的利用数据库中2两张表?
  10. Redis 最大连接数查询与设置、释放超时链接
  11. X265源码下载地址
  12. 拯救安卓手机的数据(无法进入系统只能打开recovery)
  13. Date类型之组件方法
  14. UGUI制作Tab标签页
  15. 设计模式-解释器模式
  16. php 修改文件的权限_授予PHP写入文件和文件夹的权限
  17. growup怎么读_growup_grow 和grow up 的区别
  18. 20 《叫魂 : 1768年中国妖术大恐慌》 -豆瓣评分9.2
  19. 解决minicom串口被锁Device /dev/ttyS? is locked
  20. W3school:CSS基础:CSS注释、颜色(颜色、RGB、HEX、HSL)、背景(背景、背景图像、背景重复、背景附着、简写背景属性)

热门文章

  1. spring中 allowBeanDefinitionOverriding(spring.main.allow-bean-definition-overriding)原因分析、解决办法
  2. Win11更改用户文件夹名
  3. 手机无法打开html文件夹,手机网站在电脑上无法打开的解决办法
  4. BZOJ 3162 独钓寒江雪
  5. 【寒江雪】Go实现代理模式
  6. 终端上网_家里wifi上网很慢怎么办?通过这4招,让网速快到飞起来
  7. 机器学习推荐算法之关联规则(Apriori)——支持度;置信度;提升度
  8. Web Directions South 2012的四个大创意
  9. HIVE厂牌艺人_北京音乐节-北京音乐节全攻略 - 马蜂窝
  10. 大数据处理的四大步骤