1. 程式人生 > >Android面試收集錄 電話、短信和聯系人、多媒體技術

Android面試收集錄 電話、短信和聯系人、多媒體技術

stop vid stream isp gpo trac view ephone 多媒體

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面試收集錄 電話、短信和聯系人、多媒體技術