[android] 两种异步方式
2023-02-18 15:47:22 时间
使用AsyncTask开启子线程获取服务器数据,更新界面UI
/** * 异步任务 * * @author taoshihan * */ public class HttpAsyncTask extends AsyncTask<String, Void, String> { /** * 在执行后台任务之前执行 */ @Override protected void onPreExecute() { String netInfo = NetUtils.getNetworkInfo(context); if ("no".equals(netInfo)) { Toast.makeText(context, "网络连接失败", 0).show(); } else if ("wifi".equals(netInfo)) { Toast.makeText(context, "wifi连接", 0).show(); } else if ("mobile".equals(netInfo)) { Toast.makeText(context, "手机流量连接", 0).show(); } } /** * 后台运行,耗时的操作都放在这里,相当于Thread的run方法 */ @Override protected String doInBackground(String... params) { // TODO Auto-generated method stub return null; } /** * 在执行后台任务之后,可以在这更改UI界面,相当于Handler里面的处理方法 */ @Override protected void onPostExecute(String result) { // TODO Auto-generated method stub super.onPostExecute(result); } }
使用Thread和Handler异步获取信息
/** * 使用线程和Handler * @author taoshihan * */ public class HttpHandler extends Handler{ @Override public void handleMessage(Message msg) { //处理Message } } public class HttpThread extends Thread{ @Override public void run() { //发送Message new HttpHandler().sendMessage(new Message()); } }
new HttpThread().start(); new HttpAsyncTask().execute("htp://www.baidu.com");
相关文章
- axios&spring前后端分离传参规范总结
- 【小程序专栏】个人及企业资质分别该如何注册小程序
- OpenHarmony移植案例与原理:如何适配服务启动引导部件bootstrap_lite
- OpenHarmony移植案例:如何适配服务启动引导部件bootstrap_lite
- BootstrapTable 行内编辑解决方案:bootstrap-table-editor
- 网站在线客服系统源码 | 全渠道在线客服代码下载 (最新版支持外贸商城/H5/小程序/公众号对接)
- 前端vue2+vue-router3+ElementUI+axios综合使用代码教程登录页案例
- 在线客服系统对接微信小程序(客服消息推送)
- 【小程序】同一微信号在微信开发工具上怎么切换小程序
- 【小程序】微信公众号模板消息跳转小程序发送失败:errcode=40013 , errmsg=invalid appid rid:
- 【小程序】微信小程序报错47001 - data format error hint
- 【小程序】微信小程序报错:用户绑定的手机需要进行验证,请在客户端完成短信验证
- 【小程序】微信小程序设置globalData全局数据
- 【小程序】获取手机号报错:getPhoneNumber:fail no permission
- 【小程序】小程序webview不支持打开非业务域名请重新配置
- 【uniapp】uniapp微信小程序开发:启动微信开发者工具提示no such file or directory错误
- 【小程序】uniapp发行微信小程序上传失败Error: Error: {"errCode":-10008,"errMsg":"invalid ip
- 【小程序】如何获取微信小程序代码上传密钥?
- [前端] 前端bootstrap col-xs-6 col-md-3的布局意思
- [PHP] laravel框架注意bootstrap/cache