V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
xachary
V2EX  ›  分享创造

(第二弹)这是一款完全离线的安卓音乐播放器 App,适用于追求纯粹听歌体验、拥有自己音乐文件的朋友们。

  •  1
     
  •   xachary · 3 天前 · 1221 次点击

    T Music Player

    继上次分享这是一款完全离线的安卓音乐播放器 App ,适用于追求纯粹听歌体验、拥有自己音乐文件的朋友们,一个月过去了,嘴上说不要,身体还是很诚实,修修补补增加了一些音乐播放器常见的功能。

    支持横屏

    image

    [个人场景分享]

    把手机、平板架起来摆放听歌,尤其是开车蓝牙连接、洗澡的时候。

    (垃圾车机,只能一直用手机蓝牙连接听歌😭)

    支持系统媒体播放信息同步

    1 、手机

    image

    2 、手表

    image

    3 、车机

    类似“手表”

    支持开启系统的固定应用模式

    image image image

    [个人场景分享]

    把歌曲换成故事、儿歌,开启系统固定应用模式后,小朋友只能操作当前 App ,用于听故事、儿歌,不能沉迷游戏😊。

    也可以防止猪朋狗友乱翻手机,哈哈。

    四种歌曲列表

    1 、全部

    image

    目前自用 1100 多首歌,算上封面、歌词文件,总的 3000 多个文件,还行吧,不算太卡哈。

    2 、按歌手

    image image

    3 、心动歌曲

    image

    [个人场景分享]

    我认为,最近真正喜欢一首歌:

    • 会主动选择播放它并听完
    • 切歌切到它,也会听完

    我认为,最近对一首歌兴趣减弱了:

    • 不会选择播放它
    • 切歌切到它,会很快切走它

    基于上面个人的见解,给歌曲加减分并排序,形成一个歌曲列表

    4 、自定义播放列表

    image image

    [个人场景分享]

    开车蓝牙连接听歌,可以给特定的人准备播放列表

    最近需要练习一些歌曲,无论是唱歌、跳舞,自定义播放列表还是很有必要的

    本地音频文件三种匹配规则

    1 、歌曲名 - 艺术家 1&艺术家 2

    image

    一开始,我是习惯用这种方式,通过艺术家命名文件夹,整理自己的音乐库的

    2 、艺术家 1&艺术家 2 - 歌曲名

    image

    后来发现,用这种命名方式,一股脑都放到一个目录里,更适合懒人习惯,也挺好

    3 、ID3

    音频文件元数据,也是作为兜底的匹配方式

    本地艺术家头像匹配

    image

    支持常见的图片格式

    四种播放顺序

    • 当前播放列表循环
    • 当前播放列表顺序
    • 随机
    • 单曲循环

    [个人场景分享]

    打开应用,首先出现的就是“随机播放”按钮,个人习惯,因为选择困难

    image

    延时停止播放

    image image

    [个人场景分享]

    习惯了睡前戴一只蓝牙耳机,听音乐催眠

    A-B 区间循环播放

    image image

    [个人场景分享]

    可以用于歌曲练习,无论是唱歌、跳舞,可以重复训练

    两种排序

    1 、按标题

    image

    [个人场景分享]

    按英文、拼音首字母快速定位

    另外,这里的搜索,支持:

    • 中英文直接匹配
    • 中文每个字的拼音首字母匹配(这个很方便) image

    2 、按扫描加入时间

    image

    [个人场景分享]

    最近加入的新歌,可以优先显示在前面,方便欣赏新歌

    下一首播放

    类似“插队”,插入/移动到当前播放列表的下一首位置

    image image

    [个人场景分享]

    类似卡拉 OK 的置顶,接下来想听什么歌就点它

    添加播放列表、添加到播放列表

    image image image image image

    可以直接添加到已经存在的播放列表

    也可以添加播放列表后再添加到播放列表

    支持英文

    image

    其它小细节

    • 播放的时候持续亮屏的
    • 快速定位当前播放歌曲的列表位置
    • 交互有震动
    • 列表中正在播放的歌曲高亮会微微闪烁
    • 播放失败,大概就是音频文件有损坏,会显示并通知提醒你
    • 隐藏状态栏 ...
    16 条回复    2025-09-12 09:21:22 +08:00
    xachary
        1
    xachary  
    OP
       3 天前
    nekoneko
        2
    nekoneko  
       3 天前
    怎么还是文件名匹配, 搞成直接读标签的吧.
    另外按专辑分类, 按歌手-专辑分类搞一下吧, 还有按专辑随机播放的功能

    功能方面推荐参考 musicolet
    myderr
        3
    myderr  
       3 天前
    用的什么语言开发,能支持 ios 吗,不用上架,打包成 ipa 就行,自签
    xachary
        4
    xachary  
    OP
       3 天前
    @nekoneko
    1 、仔细看,说了支持 ID3 标签(可以指定),缺点是各种渠道下载的音乐,植入了很多广告信息,而且需要软件编辑。
    2 、文件名匹配,轻度使用效率更高,无需软件。
    3 、支持歌手,不支持专辑,因为专辑信息比较混乱,有的是专辑、有的是精选或者合集、单行曲,暂时放弃了。

    既然你提出了这些,使用场景上就不适合大哥你啦,成熟的企业级/团队应用 SaltPlayer 、Musicolet 更适合你~
    我就是入门练手玩玩,个人习惯为主,非盈利目的啦。
    xachary
        5
    xachary  
    OP
       3 天前
    @myderr 根据 flutter 官方文档和测试,使用临时证书打包 ipa 后,可以安装但运行提示不能使用,是 flutter 和 ios 官方限制吧。也许纯 ios 开发的 ipa 可以?我不懂呀。
    xachary
        6
    xachary  
    OP
       3 天前
    @myderr 对了,主要是养不起苹果开发者年费,哈哈~ App 不赚钱的,非盈利~
    myderr
        7
    myderr  
       3 天前
    @xachary #6 个人不开开发者应该也是可以的,但是需要 mac 电脑按照 xcode 才行,到 3.1 步有 ipa 就行了,https://juejin.cn/post/7404839425379631145
    xachary
        8
    xachary  
    OP
       3 天前
    @myderr 试过了,不骗你。运行起来,显示一段文字,大概意思是:Flutter 巴拉巴拉 在 IOS x.x.x 版本后,只能通过调试模式运行。
    myderr
        9
    myderr  
       3 天前
    @xachary #8 虚拟机调试肯定是只能调试模式运行,你有空了试试 release 打包一个发出来,我看看能不能安装使用呢
    xachary
        10
    xachary  
    OP
       3 天前
    @myderr 很遗憾,我用的旧 iphone 6s 真机测试的。
    HtPM
        11
    HtPM  
       3 天前
    看到这个就想起 15 年也是自己写的一个播放器入行的,哈哈
    shuang
        12
    shuang  
       3 天前
    如果能支持各种 api 接口就更好了
    xachary
        13
    xachary  
    OP
       3 天前
    @HtPM 入行比你还早一点。。。还在混日子中。泪目
    xachary
        14
    xachary  
    OP
       3 天前
    @shuang 深似海。。。
    shuang
        15
    shuang  
       2 天前
    @xachary
    肝一把,不然估计很难推广的开。大部分普通听众都没自己的源,先考虑能不能听,再考虑好不好用
    xachary
        16
    xachary  
    OP
       2 天前
    @shuang
    大部分普通听众应该使用网易云、QQ 音乐,充充会员即可。
    极客可以考虑使用上面的 SaltPlayer 、Musicolet ,专业甚至支持 NAS 。
    上面这个 App ,主要是满足自用,为强迫症发电。
    分享出来,如遇到认同的小伙伴使用,感觉 App 更有价值吧。
    暂时不考虑开源,主要是觉得代码不够优雅,也是东拼西凑的产物。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1460 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 16:36 · PVG 00:36 · LAX 09:36 · JFK 12:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.