【懒人系列】快手获取当前播放视频时长_kwai://work/5205035343338955636?source=bottom_reco-程序员宅基地

技术标签: 安卓  java  Frida  android  

文章目录


前言

上一篇文章我们留了个不大不小的问题:如何获取当前播放视频时长,进而视频播放完毕后自动翻页? 现在我们通过快手极速版App进行探讨和实现。 众所周知,Android播放视频依赖播放组件类,而播放组件会有一些通用方法,比如开始、暂停、循环播放、设置播放位置、获取视频播放进度等,如果我们能Hook这些方法,就会获取当前播放组件的实例,通过实例再获取当前视频的时长。

实现方法

继续使用Frida神器,启动快手极速版的命令如下:

frida -U -f com.kuaishou.nebula --no-pause

在这里插入图片描述
通过调试追踪,我们发现快手极速的播放组件的类为:

tv.danmaku.ijk.media.player.kwai_player.KwaiMediaPlayer
或者
com.kwai.video.player.kwai_player.KwaiMediaPlayer

那我们就hook这两个类,获取当前播放组件实例,从而获取当前视频时长。执行以下代码:


var top = {
    }
Java.perform(function(){
    
  var c;
  try{
    
    c = Java.use("tv.danmaku.ijk.media.player.kwai_player.KwaiMediaPlayer");
    c.setLooping.overload('boolean').implementation = function (p1) {
    
      if(p1){
    
        top.player = this;
        console.log("视频时长1:"+this.getDuration());
      }
      var resp = this.setLooping(p1);
      return resp;
    };
  }catch(e){
    
    c = Java.use("com.kwai.video.player.kwai_player.KwaiMediaPlayer");
    c.getCurPlayingUrl.overload().implementation = function () {
    
      if(this.getDuration()>0){
    
        top.player = this;
        console.log("视频时长2:"+this.getDuration());
      }
      var resp = this.getCurPlayingUrl();
      return resp;
    };
  }
});

滑动刷新视频,可以从控制台发现,视频时长已经输出了:
在这里插入图片描述

so,大功告成!

总结

加上上一篇的自动滑动切换视频,我们就可以实现:视频播放完毕自动滑动切换的功能了。 关注wx公众号:码农爱钻研 回复 ”抖音“ 有惊喜!
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/goodhook/article/details/108538125

智能推荐

【shell系列】之查看shell脚本的执行过程和makefile中调试手段_sh 加什么参数,看脚本执行的细节-程序员宅基地

文章浏览阅读3.8k次。Date: 2018.10.16前言    在编写shell脚本或者makefile脚本时,运行成功往往需要经过一番调试,定位问题所在需要一些调试方法,本文旨在讲述makefile脚本或者shell脚本中的几种调试方法。_sh 加什么参数,看脚本执行的细节

【Vue.js】之过滤器和利用过滤器实现新闻列表_vue中使用filter过滤器,截取新闻标题-程序员宅基地

文章浏览阅读285次。过滤器 过滤器(对模板中显示的数据进行处理,然后返回一个新的数据)声明全局注册 不推荐 Vue.filter(name, function) 必须在new Vue()的前面声明局部注册new Vue({ ... filters: { 过滤器的名称 (value) {} }})只作用于定义的实例内部模板中使用: 1. 没有参数的过滤器 <p>{{数据 | 过滤器1的名称 | 过滤器2的名称 ...}}</p> <_vue中使用filter过滤器,截取新闻标题

点云数据集整理_stanford3ddataset_v1.2.zip-程序员宅基地

文章浏览阅读1.2k次。点云数据集整理分类modelnet40语义分割S3DISscannet部件分割ShapeNet分类modelnet40https://blog.csdn.net/weixin_43199584/article/details/105378083大概416M?语义分割S3DISS3DIS是3D室内场景的数据集, 主要用于点云的语义分割任务。主页http://buildingparser.stanford.edu/dataset.html模型:室内分割数据集,模型为每个房间共计271个,房间内有_stanford3ddataset_v1.2.zip

UML面向对象需求分析与建模教程 期末知识点总结复习_在面对对象系统分析阶段 主要使用什么来建立系统逻辑模型-程序员宅基地

文章浏览阅读4.6k次,点赞8次,收藏92次。---title: 2018《UML面向对象需求分析与建模教程》期末知识点复习categories:软件工程专业课tags: &amp;amp;amp;quot;软件工程&amp;amp;amp;quot;,&amp;amp;amp;quot;面向对象&amp;amp;amp;quot;,&amp;amp;amp;quot;UML&amp;amp;amp;quot;,&amp;amp;amp;quot;建模&amp;amp;amp;_在面对对象系统分析阶段 主要使用什么来建立系统逻辑模型

django pycharm debug调试,设置断点无效_django pycharm 调试-程序员宅基地

文章浏览阅读222次。用管理员方式打开pycharm。_django pycharm 调试

截图工具——通过开发者工具完成电脑端滚动截屏、浏览器截屏_电脑滚动截屏工具-程序员宅基地

文章浏览阅读461次,点赞10次,收藏12次。4.搜索“截图(shot)”,选择“捕获全尺寸屏幕截图(Capture full size screenshot)”就完成了。3.点击右上角的三个小点“···”,选择“运行命令”(Run command);2.打开右上角的三个小点“···”,选择“更多工具”,“开发人员工具”;1.Edge浏览器和Google Chrome浏览器均可以;5.结果文件在浏览器下载文件夹。_电脑滚动截屏工具

随便推点

/usr/bin/ld: 找不到 can‘t find -xxx++-程序员宅基地

文章浏览阅读2.1k次,点赞4次,收藏8次。ld是一个链接器文件,后面报错一般都是什么库找不到,so文件。一般都会在lib64下面找到,注意后面带版本号的是实际文件。_/usr/bin/ld: 找不到

QT添加python解释环境_qt python开发环境-程序员宅基地

文章浏览阅读664次,点赞2次,收藏4次。qt creator添加python解释器,实现再qt中能运行python脚本_qt python开发环境

linux下的MySQL主从数据库的搭建_linux系统mysql8.0.33通过xbk备份搭建主从复制-程序员宅基地

文章浏览阅读99次。linux下的MySQL主从数据库的搭建_linux系统mysql8.0.33通过xbk备份搭建主从复制

1.桶排序——啊哈算法java实现_用java实现桶排序-程序员宅基地

文章浏览阅读1.1k次。啊哈算法PDF版下载/** * 题目: * 5个人考试得分分别为 5分,3分,5分,2分,8分;满分是10分; * 要将 5 3 5 2 8 这个数组进行降序排序; * 即排序后变为 8 5 5 3 2; * *//** * 桶排序解法: 建一个大小为11的一维数组a,a[0]~a[10]元素都初始化为0, * 用元素下标0~10表示分数,用元素的值表示有多少人得_用java实现桶排序

SQL Server2012安装教程_sql2012安装教程-程序员宅基地

文章浏览阅读5.8w次,点赞58次,收藏357次。资源总结新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;全新的 KaTeX数学公式 语法;增加了支持甘特图的mermaid语法1 功能;增加了 多屏幕编辑 Markdown文章功能;增加了_sql2012安装教程

公检法司联盟链”近期通过区值认证-程序员宅基地

文章浏览阅读342次。山西中网信息产业股份有限公司旗下区块链项目“公检法司联盟链”近期通过区值认证,获得由中值联认证中心(北京)颁发的“区块链价值证书”,区值证书编号:QKLW10753,该项目Redstone评价系统综合动态测评得分为区值19.79分,在行业中属较高水平,项目已按相关法律法规备案。该项目位于山西省-太原市-小店区。查询证书编号和项目名称均可验证真伪!企业简介: 山西中网信息产业股份有限公司(证券代码:870298)成立于2002年4月6日,是一家集大数据业务开发、安全产品研发生产、计算机信息系...

推荐文章

热门文章

相关标签