准备步骤:
使用步骤:
1.导入XUtils的jar包(直接搜索依赖)
- compile 'org.xutils:xutils:3.3.38'
- import org.xutils.x; //注意不要被自动导入其他包
2.在AndroidManifest配置权限
- <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
3.初始化(第三方SDK都需要初始化)
在MyApplication里操作(//在Activity获取Application的上下文用getApplication())- @Override
- public void onCreate() {
- super.onCreate();
- x.Ext.init(this);
- //x.Ext.setDebug(BuildConfig.DEBUG); // 是否输出debug日志, 开启debug会影响性能.
- ...
- }
访问网站:
- RequestParams params = new RequestParams("http://route.showapi.com/341-3");
- params.addBodyParameter("showapi_appid", "27210");
- params.addBodyParameter("showapi_sign", "9ee801974d5e4f119e69ceb780ac38af");
- x.http().get(params, new Callback.CommonCallback<String>() {
- public void onSuccess(String result) {...} //请求成功
- public void onError(Throwable ex, boolean isOnCallback) {...} //客户端出错,没有连接上网络,或者请求完毕报错
- public void onCancelled(CancelledException cex) {...} //用户取消
- public void onFinished() {...} //请求结束 必备。在此关闭dialog
- });
- params.setAsJsonContent(true);
- params.setBodyContent("json数据");
导入Gson的jar包
例子:
所需数据:
a. 调用接口 showapi《笑话大全》
b. json数据 http://route.showapi.com/341-2?showapi_appid=27210&showapi_sign=9ee801974d5e4f119e69ceb780ac38af
c.
- {
- "showapi_res_body": {
- "allNum": 34961,
- "allPages": 1749,
- "contentlist": [
- {
- "ct": "2016-12-10 14:31:22.925",
- "id": "584ba13a6e368ed797a68445",
- "img": "http://www.zbjuran.com/uploads/allimg/161210/10-1612101402522T.jpg",
- "title": "听说最近两个单身汪弄了个新组合叫:彭胡弯。",
- "type": 2
- },
- .
- .
- .
- {
- "ct": "2016-12-10 10:31:14.192",
- "id": "584b68f26e368ed797a565e2",
- "img": "http://www.zbjuran.com/uploads/allimg/161210/10-161210101606243.jpg",
- "title": "程序员的愤怒",
- "type": 2
- }
- ],
- "currentPage": 1,
- "maxResult": 20,
- "ret_code": 0
- },
- "showapi_res_code": 0,
- "showapi_res_error": ""
- }
步骤:
1.导入jar包xutils、gson
2.在AndroidManifest配置权限
- <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
3.MyApplication.java类,在其中完成初始化
- //在Activity获取Application的上下文用getApplication()
- public class MyApplication extends Application{
- @Override
- public void onCreate() {
- super.onCreate();
- x.Ext.init(this);
- }
- }