关山初度尘未洗,策马扬鞭再奋蹄!这篇文章主要讲述Android 手机卫士--弹出对话框相关的知识,希望能为你提供帮助。
在《Android 手机卫士--解析json与消息机制发送不同类型消息》一文中,消息机制发送不同类型的信息还没有完全实现,在出现异常的时候,应该弹出吐司提示异常,代码如下:
private Handler mHandler = new Handler() { // public void handleMessage(android.os.Message msg) { switch (msg.what) { case UPDATE_VERSION: //弹出对话框,提示用户更新 //showUpdateDialog(); break; case ENTER_HOME: //进入应用程序主界面,activity跳转过程 enterHome(); break; case URL_ERROR: ToastUtil.show(getApplicationContext(), "url异常"); enterHome(); break; case IO_ERROR: ToastUtil.show(getApplicationContext(), "读取异常"); enterHome(); break; case JSON_ERROR: ToastUtil.show(getApplicationContext(), "json解析异常"); enterHome(); break; default: break; } }; };
因为弹出吐司操作比较常见,于是将其写成工具类进行简单的封装,方便以后调用。
本文地址:http://www.cnblogs.com/wuyudong/p/5902161.html,转载请注明源地址。
于是新建工具类:ToastUtil.java
package com.wuyudong.mobilesafe.Utils; import android.content.Context; import android.widget.Toast; public class ToastUtil { // 打印吐司/** * @param context上下文环境 * @param message打印文本内容 */ public static void show(Context context, String message) { Toast.makeText(context, message, 0); } }
如果当前版本号< 服务器版本号,则出现对话框提示更新
/** * 弹出对话框,提示用户更新 */ protected void showUpdateDialog() { System.out.println("showUpdateDialog"); //对话框,是依赖于activity存在的 Builder builder = new AlertDialog.Builder(this); //设置左上角图标 builder.setIcon(R.drawable.ic_launcher); builder.setTitle("版本更新"); //设置描述内容 builder.setMessage(mVersionDes); //积极按钮,立即更新 builder.setPositiveButton("立即更新", new OnClickListener() {@Override public void onClick(DialogInterface dialog, int which) { //下载apk,apk链接地址,downloadUrl downloadApk(); } }); builder.setNegativeButton("稍后再说", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //取消对话框,进入主界面 enterHome(); } }); builder.show(); }
实现的效果如下:
文章图片
【Android 手机卫士--弹出对话框】其中downloadApk()函数在下篇文章中实现
推荐阅读
- 搭建Android开发环境附图详解+模拟器安装(JDK+Eclipse+SDK+ADT)
- Android加壳原理分析
- android千变万化的ViewPager之三
- Android利用HttpURLConnection实现模拟登录
- html块级元素和内联元素 – HTML教程
- 算法设计(与输入顺序相同的下一个更大的元素)
- Python中的OrderedDict介绍和用法指南
- 如何为Microsoft软件开发工程面试做准备()
- AngularJS ng类指令用法详细介绍