首页下载资源后端Android播放器源码

RARAndroid播放器源码

ad1118cs07380.12KB需要积分:1

资源文件列表:

Media_Player.rar 大约有90个文件
  1. Media_Player\.classpath 168B
  2. Media_Player\.project 276B
  3. Media_Player\AndroidManifest.xml 345B
  4. Media_Player\bin\classes.dex 7.33KB
  5. Media_Player\bin\com\alex\media\ListActivity$ListItemClickListener.class 762B
  6. Media_Player\bin\com\alex\media\ListActivity.class 2.24KB
  7. Media_Player\bin\com\alex\media\MusicListAdapter.class 1.13KB
  8. Media_Player\bin\com\alex\media\PlayActivity$1.class 697B
  9. Media_Player\bin\com\alex\media\PlayActivity$10.class 1017B
  10. Media_Player\bin\com\alex\media\PlayActivity$11.class 823B
  11. Media_Player\bin\com\alex\media\PlayActivity$2.class 668B
  12. Media_Player\bin\com\alex\media\PlayActivity$3.class 672B
  13. Media_Player\bin\com\alex\media\PlayActivity$4.class 718B
  14. Media_Player\bin\com\alex\media\PlayActivity$5.class 722B
  15. Media_Player\bin\com\alex\media\PlayActivity$6.class 857B
  16. Media_Player\bin\com\alex\media\PlayActivity$7.class 857B
  17. Media_Player\bin\com\alex\media\PlayActivity$8.class 665B
  18. Media_Player\bin\com\alex\media\PlayActivity$9.class 751B
  19. Media_Player\bin\com\alex\media\PlayActivity.class 3.52KB
  20. Media_Player\bin\com\alex\media\R$attr.class 262B
  21. Media_Player\bin\com\alex\media\R$drawable.class 474B
  22. Media_Player\bin\com\alex\media\R$id.class 454B
  23. Media_Player\bin\com\alex\media\R$layout.class 326B
  24. Media_Player\bin\com\alex\media\R$string.class 312B
  25. Media_Player\bin\com\alex\media\R.class 330B
  26. Media_Player\bin\com\alex\media\ScanSdReceiver.class 940B
  27. Media_Player\bin\Media_Player.apk 93.95KB
  28. Media_Player\bin\resources.ap_ 82.56KB
  29. Media_Player\default.properties 273B
  30. Media_Player\gen\com\alex\media\R.java 513B
  31. Media_Player\res\drawable\forward_selecor.xml 174B
  32. Media_Player\res\drawable\latest_selecor.xml 167B
  33. Media_Player\res\drawable\next_selecor.xml 167B
  34. Media_Player\res\drawable\pause_selecor.xml 168B
  35. Media_Player\res\drawable\play_selecor.xml 169B
  36. Media_Player\res\drawable\rewind_selecor.xml 175B
  37. Media_Player\res\drawable-hdpi\forward1.png 8.47KB
  38. Media_Player\res\drawable-hdpi\forward2.png 8.84KB
  39. Media_Player\res\drawable-hdpi\icon.png 4.05KB
  40. Media_Player\res\drawable-hdpi\music.png 12.1KB
  41. Media_Player\res\drawable-hdpi\next1.png 5.62KB
  42. Media_Player\res\drawable-hdpi\next2.png 5.66KB
  43. Media_Player\res\drawable-hdpi\pause.png 6KB
  44. Media_Player\res\drawable-hdpi\play.png 10.92KB
  45. Media_Player\res\drawable-ldpi\forward1.png 7.55KB
  46. Media_Player\res\drawable-ldpi\forward2.png 7.55KB
  47. Media_Player\res\drawable-ldpi\icon.png 1.68KB
  48. Media_Player\res\drawable-ldpi\music.png 6.01KB
  49. Media_Player\res\drawable-ldpi\next1.png 5.22KB
  50. Media_Player\res\drawable-ldpi\next2.png 5.26KB
  51. Media_Player\res\drawable-ldpi\pause.png 5.58KB
  52. Media_Player\res\drawable-ldpi\play.png 9.08KB
  53. Media_Player\res\drawable-mdpi\forward1.png 7.55KB
  54. Media_Player\res\drawable-mdpi\forward2.png 7.55KB
  55. Media_Player\res\drawable-mdpi\icon.png 1.68KB
  56. Media_Player\res\drawable-mdpi\music.png 6.01KB
  57. Media_Player\res\drawable-mdpi\next1.png 5.22KB
  58. Media_Player\res\drawable-mdpi\next2.png 5.26KB
  59. Media_Player\res\drawable-mdpi\pause.png 5.58KB
  60. Media_Player\res\drawable-mdpi\play.png 9.08KB
  61. Media_Player\res\drawable-mdpi\top_bg.jpg 5.04KB
  62. Media_Player\res\layout\main.xml 217B
  63. Media_Player\res\layout\musiclist.xml 321B
  64. Media_Player\res\layout\play.xml 555B
  65. Media_Player\res\values\strings.xml 144B
  66. Media_Player\src\com\alex\media\ListActivity.java 1.19KB
  67. Media_Player\src\com\alex\media\MusicListAdapter.java 566B
  68. Media_Player\src\com\alex\media\PlayActivity.java 2.54KB
  69. Media_Player\src\com\alex\media\ScanSdReceiver.java 465B
  70. Media_Player\bin\com\alex\media
  71. Media_Player\gen\com\alex\media
  72. Media_Player\src\com\alex\media
  73. Media_Player\bin\com\alex
  74. Media_Player\gen\com\alex
  75. Media_Player\src\com\alex
  76. Media_Player\bin\com
  77. Media_Player\gen\com
  78. Media_Player\res\drawable
  79. Media_Player\res\drawable-hdpi
  80. Media_Player\res\drawable-ldpi
  81. Media_Player\res\drawable-mdpi
  82. Media_Player\res\layout
  83. Media_Player\res\values
  84. Media_Player\src\com
  85. Media_Player\assets
  86. Media_Player\bin
  87. Media_Player\gen
  88. Media_Player\res
  89. Media_Player\src
  90. Media_Player

资源介绍:

在Android平台上,开发一款自定义的播放器是许多开发者面临的技术挑战。本篇文章将深入探讨“Android播放器源码”这一主题,旨在帮助你理解如何从底层构建一个功能丰富的视频和音频播放应用。 我们要知道Android播放器的核心组件是Media Player API。这是Android系统提供的一个内置服务,用于处理多媒体文件的播放。它支持多种音频和视频格式,包括MPEG4、H.264、MP3等。在Android源码中,`MediaPlayer`类位于`android.media.MediaPlayer`包下,它是进行多媒体播放的主要接口。 1. **初始化MediaPlayer**:创建`MediaPlayer`对象时,通常需要调用`new MediaPlayer()`。然后,可以通过`setDataSource()`方法指定要播放的媒体文件路径或URI。在设置数据源后,要调用`prepare()`或`prepareAsync()`来加载媒体文件,前者是同步操作,后者异步,适用于大文件以避免阻塞UI线程。 2. **控制播放**:`MediaPlayer`提供了丰富的控制方法,如`start()`(开始播放)、`pause()`(暂停)、`stop()`(停止)以及`seekTo()`(跳转到指定位置)。为了监听播放状态变化,可以注册`OnCompletionListener`、`OnErrorListener`等回调。 3. **处理音量和音频焦点**:Android系统管理音频焦点,当多个应用尝试播放音频时,拥有音频焦点的应用会继续播放,其他应用则会被静音。使用`AudioManager`来请求和管理音频焦点。 4. **渲染视频**:若要显示视频,需将`MediaPlayer`与一个`SurfaceView`或`TextureView`关联。通过`setDisplay()`方法,将视图作为播放器的输出目标。 5. **支持多种格式**:`MediaPlayer`默认支持的格式可能不足以覆盖所有需求。此时,可以利用第三方库如FFmpeg或ExoPlayer,它们提供更广泛的格式支持和自定义解码能力。 6. **缓冲和网络流媒体**:对于在线流媒体,可以使用`setDataSource()`方法接受HTTP或RTSP流的URL。`MediaPlayer`会自动处理缓冲和流媒体播放。 7. **错误处理和资源释放**:播放过程中可能会遇到各种问题,如文件不存在或格式不支持,这时应妥善处理异常。播放完毕或不再使用时,记得调用`release()`来释放资源,避免内存泄漏。 8. **自定义控件**:Android系统默认的播放控制器可能无法满足所有需求。开发者可以根据需要自定义控件,通过`setOnSeekCompleteListener`、`setOnPreparedListener`等接口,实现进度条、播放/暂停按钮等功能。 9. **性能优化**:对于复杂的多媒体应用,可能需要进行性能优化,比如使用硬件解码、多线程处理、内存管理等。 10. **兼容性考虑**:由于Android版本众多,不同版本间可能存在差异。确保播放器在各个版本上表现一致,可能需要使用`Build.VERSION.SDK_INT`检查API级别,并进行条件编译。 以上是对Android播放器源码的初步解析,实际开发中还需要根据具体需求进行扩展和定制,如添加字幕支持、支持手势控制、实现音视频同步等。通过学习和理解这些知识点,你将具备构建高效、稳定、功能齐全的Android播放器的能力。
100+评论
captcha