Android面试收集录 电话、短信和联系人、多媒体技术
1.请写出调用系统拨号界面?
- Intent intent=new Intent(Intent.ACTION_DIAL,Uri.pase("tel:12345678910"));
- startActivity(intent);
- 添加权限:<uses-permission android:name="android.permission.CALL_PHONE">
2.在Android系统中监听来电有几种方式?
- 法1:广播接收器
- 法2:TelephoneManager对象
3.请给出访问通话记录的Content Provider URI?
- Uri.parse("content://call_log/calls")
4.如何调用系统短信?
- Intent sendIntent=new Intent(Intent.ACTION_SENDTO,Uri.parse("sms:12345678900"));
- sendIntent.putExtra("sms_body","你好吗?");
- startActivity(sendIntent);
5.请写出Android系统中直接发送短信的代码?
- SmsManager smsManager=SmsManager.getDefault();
- smsManager.sendTextMessage("12345678900",null,"你好吗?",null,null);
- 然后再配置权限:<uses-permission android:name="android.permission.SEND_SMS"/>
6.请写出访问彩信数据的Content Provider URI是什么?
- content://mms
7.请写出访问系统联系人的Content Provider URI,以及需要设置的权限?
- ContractsContract.AUTHORITY_URI
- 需要在清单文件中设置:<uses-permission android:name="android.permission.READ_CONTACTS">
8.如何播放res/raw目录中的音频?
- MediaPlayer mediaPlayer=MediaPlayer.create(this,R.raw.music);
- if(mediaPlayer!=null) mediaPlayer.stop();
- mediaPlayer.prepare();
- mediaPlayer.start()
9.如何录音?
- MediaRecorder mediaRecorder=new MediaRecorder();
- mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); //指定音频来源
- mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); //指定音频输出格式
- mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT); //指定音频编码方式
- mediaRecorder.setOutputFile(recordAudioFile.getAbsolutePath()); //指定播放文件
- mediaRecorder.prepare();
- mediaRecorder.start();
10.Android SDK支持那几种播放视频的方式?
- 法1:VideoView
- 法2:SurfaceView+MediaPlayer
11.如何播放视频?
- videoView.setVideoURI(Uri.parse("file:///sdcard/video.3gp")); //指定要播放的视频文件
- videoView.setMediaController(new MediaController(this)); //设置视频播放器
- videoView.start();
12.如何使用SurfaceView播放视频?
- mediaPlayer=new MediaPlayer();
- mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
- mediaPlayer.setDisplay(surfaceView控件)
- mediaPlayer.setDataSource("文件路径");
- mediaPlayer.prepare();
- mediaPlayer.start();
13.SurfaceView和VideoView的区别?
- SurfaceView+MediaPlayer可以控制播放的位置和大小
14.如何调用系统拍照?
- Intent intent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
- startActivityForResult(intent,1);
15.如何自定义拍照功能?
- 通过android.hardware.Camera类控制手机中的摄像头
16.如何设置来电铃声?
- 通过Intent实现
- new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
- intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,RingtonManager.TYPE_RINGTONE);
- intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE,"设置来电铃声");
- startActivityForResult(intent,1);
Android面试收集录 电话、短信和联系人、多媒体技术的更多相关文章
- Android面试收集录18 Android Context详解
Activity mActivity =new Activity() 作为Android开发者,不知道你有没有思考过这个问题,Activity可以new吗?Android的应用程序开发采用JAVA语言 ...
- Android面试收集录 Android组件
1.请说出Android SDK支持哪些方式显示富文本信息? 使用TextView组件可以显示富文本信息,如果要实现图文混排,需实现ImageGetter接口 使用WebView组件显示HTML页面 ...
- Android面试收集录1 Activity+Service
1.Activity的生命周期 1.1.首先查看一下Activity生命周期经典图片. 在正常情况下,一个Activity从启动到结束会以如下顺序经历整个生命周期: onCreate()->on ...
- Android面试收集录6 事件分发机制
转自:秋招面试宝典. 一. 基础认知 1.1 事件分发的对象是谁? 答:事件 当用户触摸屏幕时(View或ViewGroup派生的控件),将产生点击事件(Touch事件). Touch事件相关细节(发 ...
- Android面试收集录2 Broadcast Receiver详解
1.Broadcast Receiver广播接收器简单介绍 1.1.定义 Broadcast Receiver(广播接收器),属于Android四大组件之一 在Android开发中,Broadcast ...
- Android面试收集录 Android系统的资源+其他
1.Android应用程序的资源是如何存储的,如何使用? res文件夹或者assets文件夹 res目录中的资源在R类中生成一个int变量,然后再布局文件中可以直接使用,在代码中,要getResour ...
- Android面试收集录 2D绘图与动画技术
1.如何在Android应用程序的窗口上绘制图形? 继承View 实现View中的onDraw()方法 2.如何绘制圆,空心椭圆? canvas.drawArc或canvas.drawCircle方法 ...
- Android面试收集录 网络与加密
1.创建Socket对象需要至少指定哪些信息? IP(或域名)和端口号 Socket socket=new Socket("www.baidu.com",80); 2.如何使用So ...
- Android面试收集录 数据库
1.SQLite数据库如何查询表table1的第20条到30条记录? select * from table1 limit 19,11 ==>从19开始,11个数据 2.如何才能将table ...
随机推荐
- 实验:将系统进程映射移到 Python 字典中
参考官方文档,测试下列代码,把oracle的进程映射到python的字典中: [oracle@ycr python]$ more pro_get.py import reimport subproce ...
- 第五章 LED的魔性操作
想必大家都见过城市里漂亮的led广告牌吧,这一节我将带大家学习这些LED广告牌最基本的实现原理. 初识LED 接线方法:D1~D8从接23~37号数字端口,v1和前面的针头分别接41号和39号数字端口 ...
- March 18 2017 Week 11 Saturday
When you feel like quitting, think about why you started. 当你想放弃时,想想你为什么开始. When I heard of the messa ...
- 关于GitHubGit
一.Github项目地址:https://github.com/gyguyt/Helloworld123 二.什么是Github? Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或 ...
- 一个程序猿试用有道云笔记VIP功能体验
熟悉我的朋友应该知道,我有一个微信公众号,叫做"汪子熙", 我会定期在上面推送技术文章. 而我绝大多数技术文章都是在每天上下班的地铁上用手机写的,然后到家后同步到电脑上,进行发表. ...
- 另一种方式实现事务码SE16里的结果集修改
注: 这种方法不同于网上流传的在调试器里修改fcode的那种解决方案. 使用场景:我们需要直接在开发系统的事务码SE16里修改某些结果集的值,但是在SE16的工具栏里看不见修改按钮: 解决方案 使用/ ...
- HXXXES 高可用双机RMAN异地备份 Notes
一.总览 大致上的逻辑如上图,简化细节来归纳,便是 用一个bat脚本来驱动整个备份过程. 二.一些准备工作 1.为备份所需的脚本,以及最终备份生成的文件创建目录 开始=>运行=> ...
- Codeforces Round #422 (Div. 2)
Codeforces Round #422 (Div. 2) Table of Contents Codeforces Round #422 (Div. 2)Problem A. I'm bored ...
- Android onMeasure 方法的测量规范MeasureSpec
一个MeasureSpec封装了父布局传递给子布局的布局要求,每个MeasureSpec代表了一组宽度和高度的要求.一个MeasureSpec由大小和模式组成.它有三种模式:UNSPECIFIED(未 ...
- Android学习笔记_26_多媒体之拍照
一.配置文件: 需要引入摄像头权限,sdcard读写权限. <?xml version="1.0" encoding="utf-8"?> <m ...