03.import android.app.Activity;
04.import android.media.MediaPlayer;
05.import android.net.Uri;
06.import android.os.Bundle;
07.import android.os.Environment;
08.import android.view.View;
09.import android.view.View.OnClickListener;
10.import android.widget.Button;
11.import android.widget.MediaController;
12.import android.widget.TextView;
13.import android.widget.VideoView;
14.
15.public class TestActivity extends Activity {
16.
17. Button mPlayMusic = null;
18. Button mStopMusic = null;
19. Button mPlayVido = null;
20. Button mStopVido = null;
21.
22. TextView mTextView = null;
23. VideoView mVideoView;
24. Uri mUri;
25.
26. MediaPlayer mMediaMusic = null;
27. MediaPlayer mMediaVido = null;
28.
29. @Override
30. public void onCreate(Bundle savedInstanceState) {
31. super.onCreate(savedInstanceState);
32. setContentView(R.layout.main);
33. mPlayMusic = (Button) findViewById(R.id.btn_01);
34. mStopMusic = (Button) findViewById(R.id.btn_02);
35. mPlayVido = (Button) findViewById(R.id.btn_03);
36. mStopVido = (Button) findViewById(R.id.btn_04);
37.
38. // 创建MediaPlayer 这里用的音频格式是mp3
39. mMediaMusic = MediaPlayer.create(this, R.raw.music);
40.
41. // 创建视频播放视图
42. mVideoView = (VideoView) findViewById(R.id.vidoView);
43.
44. // sd卡下文件的路径(这是我录的一段汤姆猫的录像)
45. mUri = Uri.parse(Environment.getExternalStorageDirectory() + "/TalkingFriends/TalkingTom.mp4");
46.
47. // 设置MediaController
48. mVideoView.setMediaController( new MediaController(this));
49.
50. // 设置音频循环播放
51. mMediaMusic.setLooping(true);
52.
53. mTextView = (TextView) findViewById(R.id.textView);
54.
55. // 播放声音
56. mPlayMusic.setOnClickListener(new OnClickListener() {
57. @Override
58. public void onClick(View v) {
59. mTextView.setText("开始播放音频");
60. if (!mMediaMusic.isPlaying()) {
61. mMediaMusic.start();
62. }
63.
64. }
65. });
66. // 关闭声音
67. mStopMusic.setOnClickListener(new OnClickListener() {
68. @Override
69. public void onClick(View v) {
70. mTextView.setText("停止播放音频");
71. if (mMediaMusic.isPlaying()) {
72. mMediaMusic.stop();
73. }
74. }
75. });
76.
77. // 播放视频
78. mPlayVido.setOnClickListener(new OnClickListener() {
79.
80. @Override
81. public void onClick(View v) {
82. mTextView.setText("开始播放视频");
83. mVideoView.setVideoURI(mUri);
84. mVideoView.start();
85. }
86. });
87.
88. // 关闭视频
89. mStopVido.setOnClickListener(new OnClickListener() {
90.
91. @Override
92. public void onClick(View v) {
93. mTextView.setText("停止播放视频");
94. mVideoView.stopPlayback();
95. }
96. });
97. }
98.}
布局文件
01.<?xml version="1.0" encoding="utf-8"?>
02.<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
03. android:orientation="vertical"
04. android:layout_width="fill_parent"
05. android:layout_height="fill_parent"
06. >
07.<TextView
08. android:layout_width="fill_parent"
09. android:layout_height="wrap_content"
10. android:id="@+id/textView"
11. />
12. <Button android:id="@+id/btn_01" android:layout_height="50dip"
13. android:text="播放音频" android:layout_width="150dip"/>
14. <Button android:id="@+id/btn_02" android:layout_height="50dip"
15. android:text="关闭音频" android:layout_width="150dip"/>
16. <Button android:id="@+id/btn_03" android:layout_height="50dip"
17. android:text="播放视频" android:layout_width="150dip"/>
18. <Button android:id="@+id/btn_04" android:layout_height="50dip"
19. android:text="关闭视频" android:layout_width="150dip"/>
20. <VideoView
21. android:layout_width="fill_parent"
22. android:layout_height="wrap_content"
23. android:id="@+id/vidoView"
24. />
25.</LinearLayout>