Android项目源码精准计步开发小米魅族华为可用
所属分类:其他
开发工具:Java
文件大小:1486KB
下载次数:2
上传日期:2018-04-27 15:44:36
上 传 者:
4385160
说明: Android项目源码精准计步开发小米魅族华为可用
(Andriod project code for mi and meizhu)
文件列表:
Android项目源码精准计步开发小米魅族华为可用 (0, 2016-10-28)
.idea (0, 2016-10-26)
.idea\compiler.xml (686, 2016-10-26)
.idea\copyright (0, 2016-10-26)
.idea\copyright\profiles_settings.xml (74, 2016-10-26)
.idea\encodings.xml (159, 2016-10-26)
.idea\gradle.xml (626, 2016-10-26)
.idea\misc.xml (2226, 2016-10-26)
.idea\modules.xml (365, 2016-10-26)
.idea\runConfigurations.xml (564, 2016-10-26)
.idea\vcs.xml (180, 2016-10-26)
app (0, 2016-10-26)
app\build.gradle (909, 2016-10-26)
app\libs (0, 2016-10-26)
app\libs\lite-orm-1.7.0.jar (123341, 2016-10-26)
app\proguard-rules.pro (653, 2016-10-26)
app\src (0, 2016-10-26)
app\src\androidTest (0, 2016-10-26)
app\src\androidTest\java (0, 2016-10-26)
app\src\androidTest\java\cn (0, 2016-10-26)
app\src\androidTest\java\cn\bluemobi (0, 2016-10-26)
app\src\androidTest\java\cn\bluemobi\dylan (0, 2016-10-26)
app\src\androidTest\java\cn\bluemobi\dylan\step (0, 2016-10-26)
app\src\androidTest\java\cn\bluemobi\dylan\step\ExampleInstrumentedTest.java (748, 2016-10-26)
app\src\main (0, 2016-10-26)
app\src\main\AndroidManifest.xml (2434, 2016-10-26)
app\src\main\java (0, 2016-10-26)
app\src\main\java\cn (0, 2016-10-26)
app\src\main\java\cn\bluemobi (0, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan (0, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan\step (0, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan\step\activity (0, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan\step\activity\HistoryActivity.java (2963, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan\step\activity\MainActivity.java (5165, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan\step\activity\SetPlanActivity.java (5543, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan\step\adapter (0, 2016-10-26)
app\src\main\java\cn\bluemobi\dylan\step\adapter\CommonAdapter.java (1377, 2016-10-26)
... ...
# Android精准计步开发
亲测在小米.魅族.华为上可用
#1.需要在AndroidManifest.xml中添加权限
```xml
```
#2.检测手机是否支持计歩
```java
/**
* 判断该设备是否支持计歩
*
* @param context
* @return
*/
@TargetApi(Build.VERSION_CODES.KITKAT)
public static boolean isSupportStepCountSensor(Context context) {
// 获取传感器管理器的实例
SensorManager sensorManager = (SensorManager) context
.getSystemService(context.SENSOR_SERVICE);
Sensor countSensor = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER);
Sensor detectorSensor = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_DETECTOR);
return countSensor != null || detectorSensor != null;
}
```
#3.功能使用
```java
private boolean isBind = false;
private Messenger mGetReplyMessenger = new Messenger(new Handler(this));
private Messenger messenger;
/**
* 开启计步服务
*/
private void setupService() {
Intent intent = new Intent(this, StepService.class);
isBind = bindService(intent, conn, Context.BIND_AUTO_CREATE);
startService(intent);
}
/**
* 从service服务中拿到步数
*
* @param msg
* @return
*/
@Override
public boolean handleMessage(Message msg) {
switch (msg.what) {
case Constant.MSG_FROM_SERVER:
cc.setCurrentCount(10000, msg.getData().getInt("step"));
break;
}
return false;
}
/**
* 用于查询应用服务(application Service)的状态的一种interface,
* 更详细的信息可以参考Service 和 context.bindService()中的描述,
* 和许多来自系统的回调方式一样,ServiceConnection的方法都是进程的主线程中调用的。
*/
ServiceConnection conn = new ServiceConnection() {
/**
* 在建立起于Service的连接时会调用该方法,目前Android是通过IBind机制实现与服务的连接。
* @param name 实际所连接到的Service组件名称
* @param service 服务的通信信道的IBind,可以通过Service访问对应服务
*/
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
try {
messenger = new Messenger(service);
Message msg = Message.obtain(null, Constant.MSG_FROM_CLIENT);
msg.replyTo = mGetReplyMessenger;
messenger.send(msg);
} catch (RemoteException e) {
e.printStackTrace();
}
}
/**
* 当与Service之间的连接丢失的时候会调用该方法,
* 这种情况经常发生在Service所在的进程崩溃或者被Kill的时候调用,
* 此方法不会移除与Service的连接,当服务重新启动的时候仍然会调用 onServiceConnected()。
* @param name 丢失连接的组件名称
*/
@Override
public void onServiceDisconnected(ComponentName name) {
}
};
```
近期下载者:
相关文件:
收藏者: