‘壹’ android开发计步器,要实现后台计步。计步器写了但是要被后台杀死,请问有什么方法能比较准备的记录吗
用C语言检测是否被杀死,被kill就启动。这样就不会被后台杀了,不过还没试过有兴趣可以研究下
‘贰’ Android开发计步器,求解释代码、、、求大神!
着急的计算,是走动时手机的颤动,这是根据重力感应计算
‘叁’ android计步器原理
因该是使用加速度感应器实现的,通过监听加速度的变化判断运动状态。
‘肆’ Android计步(简单Demo)
18.03.01
附上Demo链接,欢迎探讨撕咬~ Pedometer
18.02.23
最近接了个测试各大手机厂商计步芯片的活儿,所以简单弄了个计步器的小Demo,搞搞测试。后续会把测试的结果一起发上来,造福乡亲们: 我就是结果 😊😊
实时显示从系统StepCounter芯片获取的步数。
‘伍’ mid一android4.2一4.4
Android 4.2是谷歌新一代移动操作系统,谷歌原定于10月30日通过其官方博客发布了全新的Android 4.2系统,同时还发布了基于这种操作系统的Nexus 4智能手机和Nexus 10平板电脑。
Android 4.2沿用了4.1版“果冻豆”(Jelly Bean)这一名称,最新操作系统与Android 4.1相似性很高,但仍在细节之后做了一些改进与升级,比较重要的包括:Photo Sphere全景拍照;键盘手势输入;Miracast无线显示共享;手势放大缩小屏幕,以及为盲人用户设计的语音输出和手势模式导航功能等;
Android 4.2操作系统的亮点是支持行业标准的WiFi显示共享工具Miracast,这个工具允许Nexus 4向电视流传输音频和视频。
本次网上发布的还有谷歌Nexus系列第四代手机LG Nexus 4,它配备了4.7英寸1280*768分辨率屏幕,采用LG True HD屏幕显示技术,表面为康宁大猩猩2代强化玻璃,并搭载高通骁龙S4 Pro四核处理器以及2GB RAM,后置800万像素摄像头,支持无线充电。
谷歌与三星合作的平板电脑Nexus 10,外形采用弧线设计,采用最新的Android 4.2系统,屏幕分辨率为2560x1600像素,像素密度达300ppi,是目前市售平板电脑中分辨率最高的产品。硬件方面,它采用Cortex A15架构1.7GHz主频Exynos 5250处理器、2GB RAM。摄像头为500万像素,并支持NFC、Wi-Fi、蓝牙等功能。
北京时间2013年7月25日凌晨,谷歌在美国旧金山的新品发布会上,发布了在安卓4.2版本基础上的升级版本Android 4.3,谷歌的Nexus系列手机和平板电脑已率先推送升级。业内预计,三星和HTC也将很快得到更新。
相比于Android 4.2,新版系统并未在用户界面上做出过多改变,保持了果冻豆(Jelly Bean)系列统一的Holo风格。Android 4.3虽然没有加入颠覆性的新功能,但实际上在系统内部进行了一系列提升。根据最新的AOSP格式更新日志显示,Android 4.3系统已悄然改进了超过3.5万项内容,大大增强了其安全性、易用性和拓展性。
多用户切换:在上一版本系统(Android 4.2)中,平板系统加入了多用户(multi-user)的功能,它允许同一台设备拥有最多8个独立的用户空间,并且可以保持3个账户的活跃状态;而新版系统优化了锁屏界面的用户切换速度,再多用户也无压力。
受限账户:Android 4.3系统在此基础上引入“保密文档”( Restricted profiles)功能,根据不同的受限账户情况(儿童、访客和零售商店等),设备所有者可以进一步指派哪些应用有权使用所有者的身份和设置,更能够简单地禁用或隐藏他们;此外,单独应用的特定功能还能够在API级别上进行限制,比如定位或应用内购。
Android 4.4,是由Google公司制作和研发的代号为KitKat的手机操作系统,于北京时间2013年9月4日凌晨对外公布了该Android新版本的名称,为Android 4.4(代号 KitKat 奇巧)。
据悉,该代号来自雀巢的KitKat巧克力。“Kit Kat”原本是雀巢公司的一款巧克力名称。谷歌表示,非常感谢雀巢授权使用该名称,但使用的时候会将中间的空格去掉
优化了RenderScript计算和图像显示,取代OpenCL
支持两种编译模式
除了默认的 Dalvik 模式,还支持 ART 模式。
ART模式
RAM优化
Android 4.4 KitKat针对RAM占用进行了优化,甚至可以在一些仅有512MB RAM的老款手机上流畅运行。它也进一步优化了系统在低配硬件上的运行效果, 支持内核同页合并 KSM,zRAM 交换,似乎是为了更好地在众多智能穿戴设备上运行。
新图标、锁屏、启动动画和配色方案
之前蓝绿色的配色设计被更换成了白/灰色,更加简约,另外图标风格也进一步扁平化,还内置了一些新的动画,整体来说界面更漂亮、占用资源更少。另外,还加入了半透明的界面样式,以确保状态栏和导航栏在应用中发挥更好的效果。
新的拨号和智能来电显示
首先,新的拨号程序会根据使用习惯,自动智能推荐常用的联系人,方便快速拨号;同时,一些知名企业或是服务号码的来电,会使用谷歌的在线数据库进行匹配自动显示名称,即使你的手机中没有存储它们。
加强主动式语音功能
在Nexus 5上,可以通过说“OK,Google”来启动语音功能,而不需要触碰任何按键或是屏幕,但并非支持所有机型。另外,语音搜索功能的精度也提升了25%,更加准确,还支持买电影票等新功能。
集成Hangouts IM软件
集成GMS的Android 4.4内置了Hangouts IM软件,类似于国内的微信,可以实现跨平台的文字、语音聊天功能,也能够传输图片、视频等各种文件。
全屏模式
不论是在看电子书、或是使用任何应用程序,都能够方便地进入到全屏模式,隐藏虚拟按键,带来更投入的使用体验。只需滑动屏幕边缘,便可找回按键,也十分方便。
支持Emoji键盘
终于,Android也能够支持丰富有趣的Emoji输入了,可以让邮件或是信息更加个性化。
轻松访问在线存储
你可以直接在手机或平板电脑中打开存储在Google Drive或是其他云端存储的文件,支持相册或是QuickOffice等软件,十分方便。
无线打印
可以使用谷歌Cloud Print无线打印手机内的照片、文档或网页,其他打印机厂商也将迅速跟进,发布相关应用。
屏幕录像功能
Android 4.4增加了屏幕录像功能,你可以将所有在设备上的操作录制为一段MP4视频,并选择长宽比或是比特率,甚至是添加水印。
内置字幕管理功能
在播放视频时可自行添加字幕。
计步器应用
Android 4.4内置了计步器等健身应用,谷歌也在加紧与芯片制造商的合作,为未来的智能手表做准备。
低功耗音频和定位模式
Android 4.4加入了低功耗音频和定位模式, 进一步减少设备的功耗。
新的接触式支付系统
虽然谷歌钱包还没正式推出,但是Android 4.4中已经加入了新的接触式支付功能,通过 NFC 和智能卡,可以在手机端轻松完成支付。
新的蓝牙配置文件和红外兼容性
Android 4.4内置了两个新的蓝牙配置文件,可以支持更多的设备,功耗也更低,包括鼠标、键盘和手柄,还能够与车载蓝牙交换地图。另外,新的红外线遥控接口可以支持更多设备,包括电视、开关等等。
‘陆’ 利用Android的加速度传感器开发计步器时遇到的问题
没有研究过步行时候加速度的变化,加速度方向肯定只有一个,但用三个方向表示
SersorEvent.values中三个值放到坐标系上就能得到这个方向,貌似得用到高中数学啊,忘记了
‘柒’ Android中怎样使用计步器传感器 "TYPE
Initialize Sensor
We have to get a Sensor's Object from SensorManager.
Set the type "Sensor.TYPE_STEP_DETECTOR".
[java] view plain
public class StepCounterActivity extends Activity {
private SensorManager mSensorManager;
private Sensor mStepSensor;
private TextView mTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextView = (TextView) findViewById(R.id.text_step);
mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
mStepSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_STEP_DETECTOR);
}
protected void onResume() {
super.onResume();
mSensorManager.registerListener(mSensorEventListener, mStepSensor,
SensorManager.SENSOR_DELAY_NORMAL);
}
protected void onPause() {
super.onPause();
mSensorManager.unregisterListener(mSensorEventListener);
}
Create a SensorListener
We can get a trigger from onSensorChanged.
[java] view plain
private SensorEventListener mSensorEventListener = new SensorEventListener() {
private int mStep;
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
@Override
public void onSensorChanged(SensorEvent event) {
if (event.values[0] == 1.0f) {
mStep++;
}
mTextView.setText(Integer.toString(mStep));
}
};
‘捌’ android app怎么计步器功能测心率功能怎么实现
主要是开始跑步时的步数不要记录,比较乱。所以把开始时的一段平均速度记录下载,得到后面的这一速度时的步伐频率,模拟出开始时的步数。
‘玖’ 我要用计步功能,如何实现
计步器读取手机传感器(读取三轴陀螺仪数据)收集的数据,进行二次解读和算法的过程。因为行走时人体做垂直运动,就会有个加速度,检测加速度峰值从而记步。至于准确与否取决于传感器灵敏度及软件分析 重力传感器: 原理:利用压电效应实现,传感器内部一块重物和压电片整合在一起,通过正交两个方向产生的电压大小,来计算出水平方向。 用途:手机横竖屏智能切换、拍照照片朝向、重力感应类游戏(如滚钢珠)。 加速度传感器 原理:与重力传感器相同,也是压电效应,通过三个维度确定加速度方向,但功耗更小,但精度低。 用途:计步、手机摆放位置朝向角度。 个人使用过魅族MX4、PRO6,两款都支持计步。华为P7不支持计步。从参数上看,计步功能是霍尔传感器的功劳? P7:重力感应器,光线传感器,距离传感器,陀螺仪 MX4:重力感应器,光线传感器,触摸感应器,环境色温感应器,霍尔磁感应器,红外距离感应器,陀螺仪,电子罗盘 PRO6:霍尔磁感应、 重力感应、红外距离感应、陀螺仪、环境光度感应、触摸感应、电子罗盘、气压计(支持高度) 拿陀螺仪计步的是比较低级的计步功能,具体表现就是把手机拿在手里摇一摇也会计步。 高级一些的是拿“加速度计”来采集数据,准确度会有所提高。当然最好的还是两者结合使用,单独使用各有利弊。 多说一点:安卓手机因为系统原因,锁屏的时候可能将后台的进程(应用)杀死,所以有时候锁屏的时候,没有计上就是这个原因。 其实手机计步器也没有什么特殊的,它只是在手机中作为一类传感器进行使用,下面给你列出计步算法相关的传感器: 1、Sensor_ TYPE_ACCELEROMETER 加速度传感器,单位是m/s2,测量应用于设备X、Y、Z轴上的加速度 传感器类型值(Sensor Type):1 (0x00000001) 2、Sensor_ TYPE_STEP_DETECTOR 步行检测传感器,用户每走一步就触发一次事件 传感器类型值(Sensor Type):18 (0x00000012) 3、Sensor_ TYPE_STEP_COUNTER 计步传感器 传感器类型值(Sensor Type):19 (0x00000013) 一般来说,如何判断某款手机是否支持自带计步器,一个方法即可实现: /** * Returns true if this device is supported. It needs to be running Android KitKat (4.4) or * higher and has a step counter and step detector sensor. * This check is useful when an app provides an alternative implementation or different * functionality if the step sensors are not available or this code runs on a platform version * below Android KitKat. If this functionality is required, then the minSDK parameter should * be specified appropriately in the AndroidManifest. * * @return True iff the device can run this sample */public static boolean isKitkatWithStepSensor(Context cxt) { // Require at least Android KitKat int currentApiVersion = android.os.Build.VERSION.SDK_INT; // Check that the device supports the step counter and detector sensors PackageManager packageManager = cxt.getPackageManager(); return currentApiVersion >= android.os.Build.VERSION_CODES.KITKAT&& packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_STEP_COUNTER) && packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_STEP_DETECTOR); } 根据Google官方发布的Androd版本,在Android4.4以后的版本应该要封装StepListener,至于为什么有的国产手机在测试时出现的种种问题,我只在实事求是的这里说明一下,并不针对某个品牌! 测试结果: 华为P9:不带计步器,不能使用Sensor_DETECTOR或者Sensor_COUNTER进行计步,并不知道为什么华为手机里面自带的计步软件为何使用正常,估计是把接口封死了,只能自己的应用使用! 魅族MX4-Pro:虽然自带计步器,但是Sensor_DETECTOR中去取vales[0]时,正常应返回1.0,代表正常走一步,但是测试时一直返回0.0,注意:这不是表情,这是0,一直为0!现象比较奇怪吧,所以我又换成Sensor_COUNTER,返回值有时为:第100步,返回100;第101步,返回90;第102步,返回91,然后又恢复正常累加。 三星S7-Edge:自带计步器,且计步相对准确,两种计步方式都可以使用,一直以它为其他手机的参考。 Google Nexus6:自带计步器,准确度与三星的基本保持一致,未出现特殊错误。 以上为手机的测试结果,因为手里就这几块手机,所以测试的宽容度有点低,也希望大家能够了解计步器这个东东也没有什么特殊的,只是一个传感器而已,里面专门对走路的数据进行封装最后传递出来,不用我们自己通过三轴陀螺仪测波峰波谷来判断是否为一个有效的一步,这就大大简化了我们开发者的工作。 还是希望全部的手机厂商能够按照Google的设计来,如果把某些接口封了,你可以给一个说明什么的吧,什么也不说,什么也不给,这种态度有点问题 再次确认:华为P9只携带StepCounter,没有StepDetector。而且在屏幕关闭后StepCounter不会继续工作,估计是为了省电,现在项目里面华为手机全部为模拟计步了。
‘拾’ 求推荐比较准确的计步器APP(Android系统的~),嗯,另外问一下,是不是所有计步器软件都必须
对,得联网,他得定位才行。