前置小米5x摄像头传感器和距离传感器在听筒右边的手机有哪些

8066人阅读
android(54)
我们在使用微信听声音时,当手机贴近耳朵,声音就由手机听筒里发出来,当我们将手机离开耳朵时,扬声器里则发出声音。还有,我们在通电话时,当手机贴近耳朵时,屏幕就自动关闭,离开时,屏幕就自动打开了。
这里利用到了手机的距离传感器功能;下面我们来实现此功能;
布局XML(四个按钮,实则只用到了两个):
&?xml version=&1.0& encoding=&utf-8&?&
&LinearLayout xmlns:android=&/apk/res/android&
xmlns:tools=&/tools&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent&
android:orientation=&vertical&
tools:context=&.SensorTestActivity& &
&LinearLayout
android:layout_width=&fill_parent&
android:layout_height=&wrap_content&
android:orientation=&horizontal& &
android:id=&@+id/btn_start&
android:layout_width=&fill_parent&
android:layout_height=&wrap_content&
android:layout_weight=&1&
android:text=&播放& /&
android:id=&@+id/btn_stop&
android:layout_width=&fill_parent&
android:layout_height=&wrap_content&
android:layout_weight=&1&
android:text=&停止& /&
android:id=&@+id/btn_open&
android:layout_width=&fill_parent&
android:layout_height=&wrap_content&
android:layout_weight=&1&
android:text=&打开扬声器& /&
android:id=&@+id/btn_close&
android:layout_width=&fill_parent&
android:layout_height=&wrap_content&
android:layout_weight=&1&
android:text=&关闭扬声器& /&
&/LinearLayout&
&/LinearLayout&
实现的代码:
package sensor.
import java.io.IOE
import android.app.A
import android.content.C
import android.hardware.S
import android.hardware.SensorE
import android.hardware.SensorEventL
import android.hardware.SensorM
import android.media.AudioM
import android.media.MediaP
import android.os.B
import android.util.L
import android.view.V
import android.view.View.OnClickL
import android.widget.B
public class SensorTestActivity extends Activity implements OnClickListener,
SensorEventListener {// 这里实现传感器监听
/** Called when the activity is first created. */
Button btn_start =
Button btn_stop =
Button btn_close =
Button btn_open =
// /mediaplaer
MediaPlayer _mediaPlayer = // 音乐播放管理器
AudioManager audioManager = // 声音管理器
SensorManager _sensorManager = // 传感器管理器
Sensor mProximiny = // 传感器实例
float f_ // 当前传感器距离
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn_start = (Button) findViewById(R.id.btn_start);
btn_start.setOnClickListener(this);
btn_stop = (Button) findViewById(R.id.btn_stop);
btn_stop.setOnClickListener(this);
btn_close = (Button) findViewById(R.id.btn_close);
btn_close.setOnClickListener(this);
btn_open = (Button) findViewById(R.id.btn_open);
btn_open.setOnClickListener(this);
_mediaPlayer = new MediaPlayer();
audioManager = (AudioManager) this
.getSystemService(Context.AUDIO_SERVICE);
_sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mProximiny = _sensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
// 注册传感器
_sensorManager.registerListener(this, mProximiny,
SensorManager.SENSOR_DELAY_NORMAL);
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
// 取消注册传感器
_sensorManager.unregisterListener(this);
private void playerMusic(String path) {
// 重置播放器
_mediaPlayer.reset();
// 设置播放路径
_mediaPlayer.setDataSource(path);
// 准备播放
_mediaPlayer.prepare();
// 开始播放
_mediaPlayer.start();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
private void stopPlayerMusic() {
// 停止播放
if (_mediaPlayer.isPlaying()) {
_mediaPlayer.reset();
* (non-Javadoc)
* @see android.view.View.OnClickListener#onClick(android.view.View)
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.btn_close:
audioManager.setMode(AudioManager.MODE_NORMAL);
case R.id.btn_open:
audioManager.setMode(AudioManager.MODE_IN_CALL);
case R.id.btn_start:// 音乐取自于Sd卡上的音乐
playerMusic(&/mnt/sdcard/mp3/我很快乐.mp3&);
case R.id.btn_stop:
stopPlayerMusic();
* 实现SensorEventListener需要实现的两个方法。
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
f_proximiny = event.values[0];
Log.v(&tag&,
& + f_proximiny + &
& + mProximiny.getMaximumRange());
if (f_proximiny == mProximiny.getMaximumRange()) {
audioManager.setMode(AudioManager.MODE_NORMAL);
audioManager.setMode(AudioManager.MODE_IN_CALL);
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
到此项目完成,当我们点击播放时,则播放音乐。点击停止时,停止播放音乐。点击打开扬声器时,这里切换到用听筒听声音,点击关闭扬声器时,这里用扬声器来听声音。
同时,当我们把手机贴近耳朵时,会从听筒里听到声音,当手机离开耳朵时,切用扬声器来听声音;
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:481064次
积分:3587
积分:3587
排名:第9056名
原创:22篇
转载:58篇
评论:40条
(1)(1)(3)(2)(2)(1)(1)(4)(5)(2)(1)(3)(1)(2)(5)(8)(4)(21)(4)(1)(1)(3)(2)(1)(1)想问一下。。。手机正面听筒旁边的两个点点干嘛的?【三星s5830i吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:27,104贴子:
想问一下。。。手机正面听筒旁边的两个点点干嘛的?收藏
是不是摄像头。。怎么用、、、、~?
不是。。三星S5830i是没有前置摄像头的
距离传感器
那俩空空 一个是光线感应器 一个是距离感应器 作用是打手机是屏幕自己变黑
什么导航用到的把。
应该是重力感应器
好吧,反正我都没用过,摆看的。。
距离传感器
距离传感器
说明书都有说明的。。。什么都问。。。
「国美在线」手机816元优惠券免费领,豪礼送不停,优惠不限时!「国美在线」网购 816 国美携品牌手机,优惠大放送!
我买的黑色,以前都不知道还有这么个东西。。。。
我以为前摄像头呢,怪不得在相机里找了半天自拍也没找到
自拍哈哈!那是一个光线传感器一个距离传感器但是这款机子没有光线传感器我们又被坑了
不对啊 三星手机是不能自己调教光线的啊
你们的怎么调教?
一个是光线,一个是距离。都是传感器
这么老的帖子都被挖出来了
那个是距离感应器。。
距离传感器,没有前摄像头
登录百度帐号推荐应用亲们,你们的荣耀9光感应器(前置摄像头和听筒中间的圆圈位置)仔细看是红色的吗?里面像是有个小红灯一样_荣耀9吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:33,973贴子:
亲们,你们的荣耀9光感应器(前收藏
亲们,你们的荣耀9光感应器(前置摄像头和听筒中间的圆圈位置)仔细看是红色的吗?里面像是有个小红灯一样,你们的这样吗?
苏宁易购荣耀9,给力大促,狂欢到底,全国联保,服务一站式,体验心动购物!苏宁易购荣耀9,支持货到付款,让您省钱更省心!
有什么问题吗
登录百度帐号推荐应用联想K800到底有没光线、距离传感器?正面上部除了前置摄像头、听筒,怎么看不到它们?
已有1个回答
内容为广告/垃圾,我要举报!
特聘专家具有协助内容审核的特权
举报后内容将不能在前台展示
错乱举报会导致该权利被剥夺
选择举报原因×
擅长领域:
参与话题:
& & 你好,光线、距离感应器都有的!欢迎关注页面右边ZOL问答堂、官方微博更多手机问题,欢迎关注希望以上内容能够帮助到你!
留下你的评论
微信公众账号ZOL问答堂
关注微信,随时随地解答您的疑惑
ZOL问答堂官方微博@ZOL问答堂
关注成功!该问题被回答后,将给您发送站内短信。
您也可以通过关注问答堂微信,及时获得您关注问题的回答。
微信关注问题方法“”

我要回帖

更多关于 小米5x摄像头传感器 的文章

 

随机推荐