Android 中门磁自动警报实例总结。。。。
来源:互联网 发布:知乐百度网盘 编辑:程序博客网 时间:2024/04/30 22:13
在这个例子中主要的就是有一个门磁警报系统,简单的说,门打开 警报就会响。
废话不多说 直接上代码:
这是核心方法代码:
Anfang.class
private void init() {rg_securityMode = (RadioGroup) getActivity().findViewById(R.id.rg_securityMode);modesharedpreference = getActivity().getSharedPreferences("UserSP",Context.MODE_PRIVATE);final SharedPreferences.Editor editor = modesharedpreference.edit();if (modesharedpreference.getBoolean("Mode", false)) {rg_securityMode.check(R.id.bt_bufang);} else {rg_securityMode.check(R.id.bt_chefang);}rg_securityMode.setOnCheckedChangeListener(new OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(RadioGroup v, int childChecked) {switch (childChecked) {case R.id.bt_bufang: {editor.putBoolean("Mode", true);editor.commit();}break;case R.id.bt_chefang: {editor.putBoolean("Mode", false);editor.commit();}break;}}});}
在mian方法里面去调用上面那个类的方法所传递出来的信息。当你这个APP运行的时候 就会收到信息。
MianActivity.classList<String> WarningList = new ArrayList<String>();Handler refreshMagneticHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {if (msg.what == 123) {SharedPreferences modesharedpreference = getSharedPreferences("UserSP", Context.MODE_PRIVATE);if (modesharedpreference.getBoolean("Mode", false)) {if (msg.obj != (null)) {JSONArray jsonAray = (JSONArray) msg.obj;try {JSONObject jsonObj = jsonAray.getJSONObject(0);boolean isWarning = false;String WarningInfo = "";if (jsonObj.has("value")) {if (jsonObj.getString("value").equals("ffff"))isWarning = true;if (jsonObj.getString("value").equals("0000"))isWarning = false;System.out.println("01234567895132" + isWarning);}if (jsonObj.has("WarningInfo")) {WarningInfo = jsonObj.getString("WarningInfo");if (isWarning) {if (!WarningList.contains(WarningInfo)) {WarningList.add(WarningInfo);final MediaPlayer mp = MediaPlayer.create(MainActivity.this,R.raw.alarm);try {if (mp != null)mp.stop();mp.prepare();mp.start();} catch (Exception e) {e.printStackTrace();}// 播放mp3try {new AlertDialog.Builder(MainActivity.this).setTitle(WarningInfo).setPositiveButton(acroMultiGlobal.getDisplayValue(getString(R.string.OK)),new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface arg0,int arg1) {// TODO// Auto-generated// method// stubmp.stop();}}).show();} catch (Exception e) {e.printStackTrace();}// 弹窗}} else if (!isWarning) {WarningList.remove(WarningInfo);}}} catch (JSONException e) {e.printStackTrace();}}} else if (!modesharedpreference.getBoolean("Mode", false))WarningList.removeAll(WarningList);super.handleMessage(msg);}}};Timer timer_refreshMagneticWindowTask = new Timer();TimerTask refreshMagneticWindowTask = new TimerTask() {@Overridepublic void run() {Message msg = new Message();msg.what = 123;msg.obj = new Security(MainActivity.this).GetSecurity();refreshMagneticHandler.sendMessage(msg);}};public void initTimer_Window() {try {timer_refreshMagneticWindowTask.schedule(refreshMagneticWindowTask,3000, 3000);} catch (Exception e) {e.printStackTrace();}}最后。就是在 onCreate()方法里面去执行
initTimer_Window()方法即可。
上面的例子中用到了
SharedPreferences存储数据。用到了handler方法传递数据。用到了Timer定时器的方法。如果有什么不理解这些方法。可以去百度或者后面我会继续更博我前面的文章,有这些方法的介绍。欢迎大家互相学习互相讨论。
0 0
- Android 中门磁自动警报实例总结。。。。
- BIOS警报声总结
- android之LeftTORight 警报
- Android全球定位系统GPS邻近警报-Oak先生
- [Android实例] BLE总结
- [Android实例] android 应用客户端自动升级
- 4.UIAlertView和UIActionSheet(警报视图)知识总结
- android学习实例总结1
- android web开发实例总结
- android多线程实例及总结
- Android多线程总结与实例
- Android倒计时+警报[最简单的实现方式]
- 第37节 自动发邮件总结及实例说明
- 开机花屏,机子无缘无故死机,自动重启,重装系统Ghost发出警报怎么回事呢?
- 报表警报
- 报表警报
- 警报协议
- [Android实例] Android实现开机自动运行程序
- String 转 Enum 对象关键字 Java
- ubuntu 14.04 64bit Qt5.4.2 Android error:Android build platform: android--1
- 【OpenCV 2.4.9 用户指南之一】图像读写、显示、基本操作
- Oracle BIEE 11G 嵌入Iframe
- Eclipse +Tomcat配置JNDI数据源
- Android 中门磁自动警报实例总结。。。。
- abap 知识点总结
- Acperience
- 【nyoj 1291 ABS 】
- [ATL/WTL]_[初级]_[Windows消息循环初解]
- osgearth学习之一 类库介绍
- oracle分区表详解
- 安装oracle11版本报错此先决条件将测试系统物理内存总量是否至少为 922MB
- idea15注册码