Android手机硬件的使用

MediaPlayer使用:1、源文件中读取MediaPlayer meidap=new MediaPlayer.create(this,资源文件名字)//创建了对象
MediaPlayer.start()、MediaPlayer.release()//释放资源、MediaPlayer.pause()与MediaPlayer.stop()
在播放时,必须设置OnCompletionListener() 与OnErrorListener()监听,如果放完或者发生错误,都需要进行MediaPlayer.relense(),释放资源。
2、系统中播放文件:MediaPlayer meidap=new MediaPlayer();meidap.setDataSource(“文件路径”)
setDataSource (String path)
setDataSource (FileDescriptor fd)
setDataSource (Context context, Uri uri)//基本上需要调用Uri.parse(path),较少使用
setDataSource (FileDescriptor fd, long offset, long length)

其中使用FileDescriptor时,需要将文件放到与res文件夹平级的assets文件夹里,然后使用:
AssetFileDescriptor fileDescriptor = getAssets().openFd(“rain.mp3”);
m_mediaPlayer.setDataSource(fileDescriptor.getFileDescriptor(),fileDescriptor.getStartOffset(), fileDescriptor.getLength());
MediaRecorder实现录音:
MediaRecorder.setAudioSource();
MediaRecorder.setOutputFormat();
MediaRecorder.setAudioEncoder();
MediaRecorder.setOutputFile(path);
摄像头使用-Camera
1、通过硬件的Camera,与surfaceview结合实现预览,camera.setParameters();//设置预览参数
camera.setPreviewDisplay(surfaceview对象)//设置预览
camera.startPreview()//开始预览
2、通过Intent(action.IMAGE_CAPTURE)
基本操作
电话功能
1、Intent.ACTION_CALL,需要添加权限:permission.CALL_PHONE//允许程序初始化拨号而不需要通过用户界面确定的权限。//直接就打出去了,跳转到通话界面
2、Intent.ACTION_DIAL,不需要任何权限即可拨号。
Intent intent = new Intent(Intent.ACTION_DIAL,Uri.parse(“tel:10086”);
or intent.setData(uri)//这样传入号码
startActivity(intent);//跳转到拨号的界面,还需要按拨打键
短信消息:android提高了发短信的类SmsManager,需要的3个权限为:permission.SEND_SMS/READ_SMS/RECEIVE_SMS
SmsManager sma=SmsManager.getDefault();//初始化一个smsmanager
sentTextMessage()方法实现发短信,5个参数需要传进去。依次为收件地址(string)、发送人地址(string)、正文内容(string)、发送服务(pendingintent)、送达服务(pendongIntent)
pendingIntent对象,使用方法类的静态方法 :
getActivity(Context, int, Intent, int)------->跳转到一个activity组件、
getBroadcast(Context, int, Intent, int)------>打开一个广播组件
getService(Context, int, Intent, int)-------->打开一个服务组件

    @Override
    public void onReceive(Context context, Intent intent) {        //短信一般通过广播机制实现
        Bundle bundle = intent.getExtras();  //可以增加判断(intent.getAction().equals(SMS_RECEIVED))是否有短信接收触发的重写。
        SmsMessage smsMessage;
        if (null != bundle) {
            Object[] smsObj = (Object[]) bundle.get("pdus");
            for (Object object : smsObj) {
                smsMessage = SmsMessage.createFromPdu((byte[]) object);
                String content = smsMessage.getDisplayMessageBody(); //获取短信内容
                String from = smsMessage.getOriginatingAddress();  //获取发件人的地址

蓝牙服务BlueTooth:BluetoothAdapter ba= BluetoothAdapter.getDefaultAdapter();
ba.disable()/enable()/getAddress()/gerName()关闭/打开蓝牙
通过询问的方式,跳转蓝牙打开:
Intent in= new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE)
startActivity(in)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值