您好,欢迎光临本网站![请登录][注册会员]  
文件名称: BiliBili-基于ijkplayer rxjava retrofit,组件化思想,实现一个仿B站的Android客户端.zip
  所属分类: 其它
  开发工具:
  文件大小: 9mb
  下载次数: 0
  上传时间: 2019-09-23
  提 供 者: weixin_********
 详细说明: 使用ijkplayer,实现一个仿B站的Android客户端。使用组件化的思想对项目进行拆分,目前分出两个组件,一个是网络请求组件,一个是视频播放组件。组件化实现方案组件化使用的方案出自张华洋的文章:Android组件化方案在gradle.properties中,有一个isModule值,为true时是组件化模式,为false为library。在业务组件的build.gradle中读取 isModule,代码如下:if (isModule.toBoolean()) {     apply plugin: com.android.application } else {     apply plugin: com.androi d.library }在 AndroidStudio 中每一个组件都会有对应的 AndroidManifest.xml,application和library使用的AndroidManifest.xml不同,所以要为组件开发模式下的业务组件再创建一个 AndroidManifest.xml,然后根据isModule指定AndroidManifest.xml的文件路径,让业务组件在集成模式和组件模式下使用不同的AndroidManifest.xml:sourceSets {         main {             if (isModule.toBoolean()) {                 manifest.srcFile src/main/module/AndroidManifest.xml             } else {                 manifest.srcFile src/main/AndroidManifest.xml             }         }     }组件功能介绍ijkplayer组件(功能组件)该组件是一个视频播放组件,在ubuntu16.04上集成编译了ijkplayer,支持rtsp和rtmp的视频直播推流。提供了一个自定义view,可以使用该view实现本地/网络视频的播放、暂停、快进、视频亮度、音量的调节。ijkplayer0.8.8下载地址使用方式如下:声明所需权限,用于播放网络视频和本地视频:   注意,如果横竖屏切换不想重新走一遍生命周期,还需要在表单中设置Activity的configChanges属性:     在Activity/Fragment中的oncreate方法里:override fun onCreate(savedInstanceState: Bundle?) {     super.onCreate(savedInstanceState)     setContentView(R.layout.activity_play)     //屏幕常亮 getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) /** 普通播放 start **/ var url = getIntent().getStringExtra("url"); simple_view             .setVideoUrl(url)             .setVideoTitle("这是标题")             .startPlay() } override fun onConfigurationChanged(newConfig: Configuration?) {         super.onConfigurationChanged(newConfig)         //横竖屏切换 显示/隐藏actionbar         var isPortrait = simple_view.onConfigurationChang(newConfig)         if (isPortrait) {             supportActionBar?.show()         } else {             supportActionBar?.hide()         }     }     override fun onBackPressed() {         simple_view.onBackPressed()         if (!simple_view.isPortrait){             supportActionBar?.show()         }else{             super.onBackPressed()         }     }     override fun onPause() {         super.onPause()         simple_view.onPause()     }     override fun onResume() {         super.onResume()         simple_view.onResume()     }     override fun onDestroy() {         super.onDestroy()         simple_view.onDestory()     }common组件(功能组件)common组件是基础库,添加一些公用的类;网络请求、图片加载、工具类、base类等;声明APP需要的uses-permission;定义mvp架构实现网络请求目前完成的功能整体架构搭建对b站客户端抓包,分析接口主界面布局完成完成直播播放页面完成推荐视频的播放视频弹幕获取项目截图:直播界面聊天界面个人信息popwindow主播信息界面粉丝榜大航海视频播放视频评论侧滑分区追番webview
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索:
 输入关键字,在本站1000多万海量源码库中尽情搜索: