标签:
1.传感器的几个概念:
什么是传感器?
通过手机来感受温度,湿度,重力,方向,光线等传感方式。
手机上那些地方运用了传感器?
传感器在手机上广泛的应用,如游戏,微信摇一摇,心率计,计步器等等。
常用的传感器有那些?
SENSOR_TYPE_ACCELEROMETER //加速度
SENSOR_TYPE_MAGNETIC_FIRLD //磁力
SENSOR_TYPE_ORIENTATION //方向
SENSOR_TYPE_GYROSCOPE //陀螺仪
SENSOR_TYPE_LIGHT //光线感应
SENSOR_TYPE_PRESSURE //压力
SENSOR_TYPE_TEMPERATURE //温度
SENSOR_TYPE_PROXIMITY //接近
SENSOR_TYPE_GRAVITY //重力
SENSOR_TYPE_LINEAR_ACCELERATION //线性加速度
SENSOR_TYPE_ROTATION_VECTOR //旋转矢量
2.如何使用传感器:
//第一步,获取SensorManager对象 mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
//第二部,获取传感器对象 mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);@Override //第三步,在onResume时注册 protected void onResume() { super.onResume(); mSensorManager.registerListener(this , mSensor ,SensorManager.SENSOR_DELAY_UI); }//第四步,重写onSensorChanged,onAccuracyChanged两个方法 @Override public void onSensorChanged(SensorEvent event) { if (event.sensor.getType() == Sensor.TYPE_ORIENTATION){ //判断使用哪一种传感方式 float degree = - event.values[0]; RotateAnimation rotateAnimation = new RotateAnimation( //使用一个旋转动画RotateAnimation mStartDegree, degree , Animation.RELATIVE_TO_SELF, 0.5f , Animation.RELATIVE_TO_SELF , 0.5f ); rotateAnimation.setDuration(300); //给一个旋转持续时间 mImageView.startAnimation(rotateAnimation); mStartDegree = degree; } } @Override public void onAccuracyChanged(Sensor sensor, int accuracy) { }@Override //第五步,在onPause时注销 protected void onPause() { super.onPause(); mSensorManager.unregisterListener(this); }
什么是LBS?
那些地方用到了LBS?它是一种基于位置的服务。
微信,QQ,陌陌,饿了吗,美团,携程,去哪儿网等等。
主要使用在那些方面?
签到,定位,导航,周边的生活服务,社交等等。
4.LBS使用方法:
a、到百度地图申请新版本的key,老版本的也可以使用。
http://developer.baidu.com/map/geosdk-android-key.htm
b、在manifes中添加权限,具体参考
<!-- 使用定位所需权限 -->
<permission Android:name="android.permission.BAIDU_LOCATION_SERVICE" >
</permission>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
在manifest中添加定位所需要的service
<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote" >
</service>
在application标签中添加你锁申请的key
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="15xihyx7BjNPAuvrAgade2Wo" />
c、在Activity中代码的实现,具体参考
http://blog.csdn.net/xiaanming/article/details/11380619
标签:
原文地址:http://blog.csdn.net/edcsam/article/details/51350540