当前位置: 首页 > news >正文

安卓开发 --实现计步功能

关键代码

@OverridepublicvoidonSensorChanged(SensorEventevent){// 不是系统累计总步数if(event.sensor.getType()!=Sensor.TYPE_STEP_COUNTER)return;// 总步数longtotalSteps=(long)event.values[0];// 检查是否跨天StringcurrentDate=getTodayDate();StringtodayDate=MMKVUtils.decodeRecentUseDate();// 今天之前为止的步数longrecentSteps=MMKVUtils.decodeRecentSteps();// 计算今天的步数longtodaySteps=totalSteps-recentSteps;// 防止负数(设备重启等情况)if(todaySteps<0){// 同一天if(currentDate.equals(todayDate)){longsteps=MMKVUtils.decodeSteps();todaySteps=totalSteps+steps;}else{// 跨天todaySteps=totalSteps;MMKVUtils.encodeRecentUseDate(currentDate);}MMKVUtils.encodeRecentSteps(0);}else{// 跨天if(!currentDate.equals(todayDate)){longsteps=MMKVUtils.decodeSteps();todaySteps=totalSteps-recentSteps-steps;// 指针前移MMKVUtils.encodeRecentSteps(recentSteps+todaySteps);MMKVUtils.encodeRecentUseDate(currentDate);}}// 保存累计步数MMKVUtils.encodeSteps(todaySteps);// 发送广播更新UIsendStepUpdateBroadcast();Log.d(TAG,String.format("总步数: %d, 今日步数: %d",totalSteps,todaySteps));}

分析

总共有四种情况:距离上一次打开应用并第一次移动手机未重启的情况下 是同一天(今天之内此刻之前打开过app) 或 不是同一天(也就是从昨天最后一次使用应用到此刻没有重启过),距离上一次打开应用并第一次移动手机重启过的情况下 是同一天(今天之内此刻之前打开过app并且重启过手机)或 不是同一天(今天之内此刻之前没打开过app且上一次打开app到现在重启过手机)。

图解分析

http://www.jsqmd.com/news/1056744/

相关文章:

  • 2026年跨境支付物流一体化系统推荐:五家优选深度解析 - 科技焦点
  • 语音特征在金融风控中的应用边界:从技术神话到现实困境
  • 六安市吃吊锅哪家好吃?本地人私藏的正宗烟火味 - 速递信息
  • 终极SVGedit指南:5分钟掌握浏览器矢量图形编辑神器
  • IDM试用期重置:永久免费使用下载管理器的技术方案
  • 终极GitHub加速指南:如何让你的下载速度提升100倍
  • 如何快速掌握COMSOL Python自动化:MPh脚本仿真完整指南
  • 2026苏州购宠避坑!正规资质苏州买猫买狗宠物店,拒绝星期宠 - 园友3800037
  • 大语言模型编程效率实测:中文提示词真的比英文更节省Token吗?
  • H2VLR:基于异构超图与视觉语言推理的少样本异常检测方法
  • KendoReact Charts利用图表工具提示嵌入交互式见解
  • 2026年高端定制与普通全屋定制区别解析:黑泽玛德表现如何? - 新闻快传
  • 《龙虾跨网对接外部SaaS的安全落地指南》
  • StarCore DSP栈内存测量实战:水印法与仿真器监控法详解
  • 驻马店市区靠谱装修公司怎么选?装修避坑8条铁律,看完省下好几万 - 新闻快传
  • 宁夏高危工业场景防爆监控系统选型技术规范与服务商参考
  • 低查重AI教材编写工具推荐,让AI快速为你生成专业教材!
  • Photoshop图层批量导出终极指南:如何快速导出所有图层到独立文件
  • M68HC08 ADC编程实战:从原理到代码,掌握嵌入式感官核心
  • 2026年6月最新欧米茄中国官方售后客户服务地址电话网点大全 - 欧米茄服务中心
  • UAssetGUI深度解析:高性能虚幻引擎资产编辑框架与实现原理
  • 本地宠物市场实测探店 苏州老牌宠物店猫犬舍靠谱选择 - 园友3800037
  • i.MX 6接口时序设计:从数据手册到稳定硬件的实战指南
  • 2026电动车托运价格表 各距离收费明细对比 - 快递物流资讯
  • 从 Show HN 96 分的 machine0 说起:把 NixOS flake + 持久 VM 当成可复现开发环境,实际跑了一遍
  • 淮南师范学院的办学历史多久?师资力量整体水平怎么样? - 寻茫精选
  • 5分钟搭建你的终极跨平台游戏串流系统:Sunshine完全指南
  • 手机号查QQ号:30秒快速找回QQ的终极解决方案
  • COM3D2 MaidFiddler 实时女仆编辑器:从入门到精通的完整指南
  • 零基础部署OpenClaw:本地AI工作流搭建实战指南