




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Android应用程序开发 移动多媒体 音频播放 1 播放音频资源 android media MediaPlayerp MediaPlayer create Context R raw XXX p prepare p start 播放2 播放外部音频文件MediaPlayerp newMediaPlayer p setDataSource url url可以是 sdcard XXX也可以是网络中的URLp prepare p start MediaPlayer的生命周期 创建 setDatasourse prepare start pause start stop release调用stop进入停止状态 再播放要先调用prepare再调用start try MediaPlayerplayer newMediaPlayer player setDataSource sdcard nx mp3 player prepare player start Thread sleep 15000 player stop Thread sleep 5000 player prepare player start Thread sleep 20000 player stop player release catch Exceptione e printStackTrace 音频采集录音 创建MediaRecorder对象rec 来自android media包 开始录音 创建File对象 扩展名为amr rec setOutputFile f getAbsoulutePath rec setAudioSource MediaRecorder AudioSource MIC 设置声源rec setOutputFormat MediaRecorder OutputFormat DEFAULT 输出格式rec setAudioEncoder MediaRecorder AudioEncoder DEFAULT 音频格式rec prepare rec start 结束录音 rec stop rec release rec null权限 android permission RECORD AUDIO start setOnClickListener newView OnClickListener publicvoidonClick Viewv if Environment getExternalStorageState equals Environment MEDIA MOUNTED try myFile File createTempFile huxz amr Environment getExternalStorageDirectory rec newMediaRecorder rec setAudioSource MediaRecorder AudioSource MIC rec setOutputFormat MediaRecorder OutputFormat DEFAULT rec setAudioEncoder MediaRecorder AudioEncoder DEFAULT rec setOutputFile myFile getAbsolutePath rec prepare rec start catch Exceptione stop setOnClickListener newView OnClickListener publicvoidonClick Viewv if myFile null rec stop rec release rec null 视频采集 与音频采集类似 也使用MediaRecorder权限 android permission RECORD AUDIOandroid permission CAMERA WindowManagerwm WindowManager getSystemService Context WINDOW SERVICE 获取窗口服务Displaydisplay wm getDefaultDisplay 获取屏幕信息recorder newMediaRecorder recorder setVideoSource MediaRecorder VideoSource CAMERA 从照相机采集视频recorder setAudioSource MediaRecorder AudioSource MIC recorder setOutputFormat MediaRecorder OutputFormat MPEG 4 recorder setVideoSize display getWidth display getHeight 大小为屏幕的宽和高recorder setVideoFrameRate 3 每秒3帧recorder setVideoEncoder MediaRecorder VideoEncoder MPEG 4 SP 设置视频编码方式recorder setAudioEncoder MediaRecorder AudioEncoder AMR NB recorder setOutputFile sdcard huxz 3gp recorder previewDisplay holder getSurface 设置预览组件recorder prepare 预期准备recorder start 开始刻录 图像采集 android hardware Camera类open 得到Camera对象getParameters setParameters 获取 设置参数setPreviewDisplay 设置预览视图参数为SurfaceHolder对象startPreview stopPreview 开始 停止预览takePicture 拍照 takePicture 参数 Camera ShutterCallback快门空实现Camera PictureCallbackraw图像空实现Camera PictureCallbackpic实现onPictureTaken byte data Camerac data数组中储存了采集的图像数据 SurfaceView 一个视图 系统会用一个独立的线程来绘制用于相机应用或录像机应用中的预览视图后台由SurfaceHolder对象控制 调用getHolder得到SurfaceHolder可以添加事件监听SurfaceHolder Callback定义当Surface创建 改变和销毁时的处理holder setType SurfaceHolder SURFACE TYPE PUSH BUFFERS 依靠屏幕的渲染引擎推送内容 publicclassCameraActivityextendsActivityimplementsSurfaceHolder Callback OnClickListener SurfaceViewmySurfaceView SurfaceView的引用SurfaceHoldermySurfaceHolder SurfaceHolder的引用Buttonbutton1 打开按钮Buttonbutton2 关闭按钮Buttonbutton3 拍照按钮CameramyCamera Camera的引用booleanisView false 是否在浏览中 相机应用示例 publicvoidonCreate BundlesavedInstanceState super onCreate savedInstanceState 全屏requestWindowFeature Window FEATURE NO TITLE getWindow setFlags WindowManager LayoutParams FLAG FULLSCREEN WindowManager LayoutParams FLAG FULLSCREEN setContentView R layout main mySurfaceView SurfaceView findViewById R id mySurfaceView 得到SurfaceView的引用button1 Button findViewById R id button1 得到按钮的引用button2 Button findViewById R id button2 得到按钮的引用button3 Button findViewById R id button3 得到按钮的引用button1 setOnClickListener this 为按钮添加监听button2 setOnClickListener this 为按钮添加监听button3 setOnClickListener this 为按钮添加监听mySurfaceHolder mySurfaceView getHolder 获得SurfaceHoldermySurfaceHolder addCallback this 添加接口的实现mySurfaceHolder setType SurfaceHolder SURFACE TYPE PUSH BUFFERS publicvoidonClick Viewv if v button1 打开按钮initCamera 初始化相机 elseif v button2 if myCamera null publicvoidinitCamera if isView myCamera Camera open if myCamera null ShutterCallbackmyShutterCallback newShutterCallback publicvoidonShutter PictureCallbackmyRawCallback newPictureCallback publicvoidonPictureTaken byte data Cameracamera PictureCallbackmyjpegCallback newPictureCallback publicvoidonPictureTaken byte data Cameracamera Bitmapbm BitmapFactory decodeByteArray data 0 data length ImageViewmyImageView ImageView findViewById R id myImageView myImageView setImageBitmap bm 将图片显示到ImageView中isView false myCamera stopPreview myCamera release myCamera null initCamera 初始化相机 实现SurfaceHolder Callback接口中的方法 OverridepublicvoidsurfaceChanged SurfaceHolderholder intformat intwidth intheight OverridepublicvoidsurfaceCreated SurfaceHolderholder OverridepublicvoidsurfaceDestroyed SurfaceHolderholder 视频播放 使用android widget VideoViewMediaControllermc newMediaController Context videoView setMediaController mc videoView setVideoPath sdcard XXX mp4 videoView start videoView pause publicvoidonCreate BundlesavedInstanceState requestWindowFeature Window FEATURE NO TITLE this getWindow setFlags WindowManager LayoutParams FLAG FULLSCREEN WindowManager LayoutParams FLAG FULLSCREEN super onCreate savedInstanceState setContentView R layout main VideoViewvv VideoView this findViewById R id video vv setMediaController newMediaController this vv setVideoPath sdcard hujc mp4 vv start Google地图 获取GoogleKey 获取GoogleKey Eclipsewindow preferences android build得到keystore的位置在命令行下keytool list aliasandroiddebugkey keystorekeystore位置 storepassandroid keypassandroid得到MD5认证指纹 获取GoogleKey 得到本机APIKey为0YI48AYoAgrp0EoF DYWKybum0btyr55r8 kWgQ 创建运行环境 安装GoogleAPI创建模拟器target为GoogleAPI创建AndroidProject 选择target为GoogleAPI 配置文件 AndroidManifest xmlapplication标签中 manifest标签中加入INTERNET权限main xml布局文件定义com google android maps MapView 除了常规属性外还要定义android apiKey 取值为从google获得的密钥 android clickable是否支持触屏操作 MapView 定义一个类继承MapActivity得到MapView对象 调用getController获得MapController对象controller创建GeoPoint对象 参数为纬度 1E6和经度 1E6 调用controller animateTo geoPoint 设置地图的经纬度 controller setZoom 16 设置缩放尺度覆盖isRouteDisplayed 是否显示导航路线MapView的方法setSatellite 是否显示卫星视图setBuiltInZoomControls是否显示缩放按钮 监听GPS数据 使用的类来自android location包为应用添加权限 android permission ACCESS FINE LOCATION程序中 getSystemService Context LOCATION SERVICE 获得LocationManager对象manager requestLocationUpdates LocationManager GPS PROVIDER 时间间隔 位置间隔 LocationListener 需要自己实现LocationListener 实现onLocationChanged方法 publicclassGoogleMapActivityextendsMapActivity MapViewmv MapControllercontroller LocationManagermanager Buttonbtn EditTextet1 EditTextet2 doublejingdu 116 46 doubleweidu 39 92 GPS应用示例 publicvoidonCreate BundlesavedInstanceState super onCreate savedInstanceState setContentView R layout main btn Button this findViewById R id btn et1 EditText this findViewById R id e1 et2 EditText this findViewById R id e2 mv MapView this findViewById R id mapview controller mv getController setGeoPoint mv setSatellite false mv setBuiltInZoomControls true LocationListenerlistener newLocationListener publicvo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 财务安全库存管理办法
- 聊城城景观管理办法
- 东莞幼托机构管理办法
- 仓储保管收费管理办法
- 不同性格人员管理办法
- 血防林工程管理办法
- 街道拆迁工作管理办法
- 街区管理办法运营机制
- iris配置管理办法
- 虫害防治实施管理办法
- 施工项目部会议管理制度
- 2024-2025学年安徽省八年级语文上册第一次月考试卷04
- 欢迎一年级新生入学课件
- 译林版七年级上册英语阅读理解专项练习题100篇含答案
- 单位委托员工办理水表业务委托书
- 矿山生态修复监理工作资料编制内容和要求、施工监理主要工作程序框图、工程施工与监理表式
- 夫妻婚内财产协议书(2024版)
- 小菜园租赁合同范本
- DL-T1342-2014电气接地工程用材料及连接件
- 血管内超声在冠状动脉疾病中应用的中国专家共识(全文)
- (正式版)JTT 1495-2024 公路水运危险性较大工程安全专项施工方案审查规程
评论
0/150
提交评论