修改Listen 1源码的一点心得
注:本文只作为技术交流
首先感谢听1的作者写出这么强大的音乐播放器!!
软件首页地址:点击打开链接
软件的github上上上地址:点击打开链接
软件唯一让我美中不足的就是不能下载,这可能是作者考虑到了版权的问题,所以我就简单的改了一下源码加入了一个下载按钮
这个软件用的是电子打包的,所以可以跨平台,在Linux的下和窗户都有对应的版本
软件主目录/ sources / app / listen1_chrome_extension
这个listen1_chrome_extension文件夹可以直接加载进谷歌浏览器的插件(你要开启开发者模式)
只能说作者很聪明,写一个可以当两个用,哈哈
如果你没找到listen1_chrome_extension这个文件夹,只在资源下面找到了app.asar,也没有问题的,ASAR是一种压缩模式
解压如何看这里点击打开链接(窗口上)
如果在Linux的的的平台上
sudo apt-get install npm -y(安装npm包管理)
sudo npm install asar -g(用npm安装asar这个解压模块)
然后ASAR命令的用法
asar p <被打包的目录> app.asar
asar pack <被打包的目录> app.asar
asar e app.asar <解压后的目录>
asar extract app.asar <解压后的目录>
然后就可以进入listen_chrome_extension改源码了
经过我分析终于找到了MP3的网址了,在index.html的的的文件中加入一个按钮(在462行)
我选中的部分就是添加的代码,效果如图
然后改JS代码在JS文件夹下的loweb.js中
选中的内容就是我增加的内容,解释一下,获取到我在HTML中添加的那个<A>标签,然后把一个标签中的链接改成MP3的网址,sound.url就是MP3的源地址
再解释一下HTML中加入<A>标签中的下载属性,如果一个标签中含有下载是不让其播放可以直接下载,下载的里面的值就是下载的名字,我替换成歌曲名和歌手了,不过还有一个问题就是,下载属性的跨域下载问题,有的歌曲名字改不过来,这个我没办法解决,有能力的朋友解决了评论我一下,到这里源码就改完了
最后如果你还是改不明白可以下载我的资源
在这里哦: 点我点我!!
修改Listen 1源码的一点心得的更多相关文章
- Lucene全文搜索之分词器:使用IK Analyzer中文分词器(修改IK Analyzer源码使其支持lucene5.5.x)
注意:基于lucene5.5.x版本 一.简单介绍下IK Analyzer IK Analyzer是linliangyi2007的作品,再此表示感谢,他的博客地址:http://linliangyi2 ...
- 修改CKplayer.js 源码解决移动端浏览器全屏不能限制快进的问题
原文地址:https://www.cnblogs.com/jying/p/9642445.html,转载请说明出处. 最近项目需要播放视频且限制未观看部分的快进功能,找了两款js插件ckplayer和 ...
- (原)阅读Android-Camera2Video的demo源码和调试心得
转载请注明出处:http://www.cnblogs.com/lihaiping/p/6142512.html 最近因为项目需要使用到camera的功能,所以针对官方的demo源码进行一番阅读,并 ...
- idea 修改jar包源码的编码
项目中有些老的jar不是utf8打包的,中文显示乱码 打开的文件上直接右键, 修改只读jar的源码 自己写的文件可以在右下角修改编码,只读文件就要用上面的方法了
- android studio应用修改到android源码中作为内置应用
1. 方法一:导入,编译(太麻烦,各种不兼容问题) android studio和eclipse的应用结构目录是不同的,但是在android源码中的应用基本上都是使用的eclipse目录结构(在/pa ...
- Hadoop 修改源码以及将修改后的源码应用到部署好的Hadoop中
我的Hadoop版本是hadoop-2.7.3, 我们可以去hadoop官网下载源码hadoop-2.7.3-src,以及编译好的工程文件hadoop-2.7.3, 后者可以直接部署. 前者hadoo ...
- 修改gridfilters.js源码,往后台多传递一个参数,并设置NumericFilter、StringFilter默认提示信息
创作不易,转载请注明出处!!! 效果 修改:ext-extend.js源码 在最后面添加3行,重写方法 代码拷贝区 Ext.override(Ext.ux.grid.GridFilters, { me ...
- WebBench源码分析与心得
源码:https://github.com/EZLippi/WebBench 关键全局变量: speed 成功次数 failed 失败次数 bytes 接收字节数 benchtime 执行时长(秒 ...
- 对于学习apache软件基金会顶级项目源码的一点思路(转)
ASF的开源项目,为软件行业贡献了太多好的产品和软件思维.学习ASF的项目源码能很大的提升自身的能力.程序运行在服务器上的流程:执行启动脚本(start.sh) -> 指向程序的主方法 -> ...
- activiti源码解读之心得整编
TaskService.completeTask()的执行内幕是啥? activiti采取了command模式,completeTask会被包装成一个CompleteTaskCmd,一个Cmd执行的时 ...
随机推荐
- winfrom,窗体抖动功能
#region 方法一 Point first = this.Location; for (int i = 0; i < 50; i++) { Application.DoEvents(); R ...
- Java SE 3、封装
封装 封装的好处 隐藏实现细节 可以对数据进行验证,保证安全合理 实现步骤 将属性进行私有化private 提供一个公共的(public)set方法,用于对属性判断并赋值 public void se ...
- 《吐血整理》高级系列教程-吃透Fiddler抓包教程(22)-如何使用Fiddler生成Jmeter脚本-下篇
1.简介 今天这篇文章其实和上一篇差不多也是利用一个fiddler的插件进行Jmeter脚本的导出,开始宏哥想要合在一起写一篇文章,可是结果实践的时候,两个插件还是有区别的,因此为了不绕晕小伙伴或者童 ...
- 使用Gitlab CI/CD功能在本地部署 Spring Boot 项目
前提条件: 1.Docker安装Gitlab,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13814730.html 2.Docker安装Gitlab-runn ...
- Elastic:为Elastic Docker部署设置安全
文章转载自:https://elasticstack.blog.csdn.net/article/details/105710973 创建docker-compose.yml 在之前的教程中,那里使用 ...
- ProxySQL 读写分离方法
转载自:https://www.jianshu.com/p/597b840bf70c (使用正则表达式实现基本的读/写分离) 在这一部分,我将通过一个示例来演示如何通过正则表达式来实现读/写分离. 首 ...
- Elastic:用 Docker 部署 Elastic Stack
文章转载自:https://elasticstack.blog.csdn.net/article/details/100919273 前提条件 首选需要在主机上安装好docker和docker-com ...
- JS 模块化- 05 ES Module & 4 大规范总结
1 ES Module 规范 ES Module 是目前使用较多的模块化规范,在 Vue.React 中大量使用,大家应该非常熟悉.TypeScript 中的模块化与 ES 类似. 1.1 导出模块 ...
- 编写一个应用程序,在主类Test1类中,创建两个链表List<E>对象,分别存储通过键盘输入的字符串内容
题目1:编写一个应用程序,在主类Test1类中,创建两个链表List<E>对象,分别存储通过键盘输入的字符串内容--"chen","wang",&q ...
- DVWA File Upload level high 通关
由于level 是 high 1.代码审计 <?php if( isset( $_POST[ 'Upload' ] ) ) { // Where are we going to be writi ...