Spotify新专辑提醒:基于cli3/cli的Release Radar增强

Spotify新专辑提醒:基于cli3/cli的Release Radar增强

【免费下载链接】cli Command-line tool to customize Spotify client. Supports Windows, MacOS, and Linux. 【免费下载链接】cli 项目地址: https://gitcode.com/gh_mirrors/cli3/cli

你是否经常错过关注艺人的最新专辑发布?Spotify自带的Release Radar推送不够及时?本文将介绍如何通过cli3/cli项目中的New Releases自定义应用(Custom App),打造专属于你的音乐发布提醒系统,不错过任何喜爱艺人的新作品。

读完本文后,你将能够:

  • 安装并配置New Releases应用
  • 自定义专辑提醒的时间范围和内容类型
  • 管理已查看的专辑信息
  • 个性化提醒界面显示效果

什么是New Releases应用

New Releases是cli3/cli项目中的一个自定义应用(Custom App),位于CustomApps/new-releases/目录下。该应用能够帮助Spotify用户集中查看关注艺人的最新发布内容,提供比官方Release Radar更灵活的提醒方式和更丰富的筛选功能。

应用主要功能包括:

  • 按时间顺序展示新发布的专辑、单曲和EP
  • 支持自定义时间范围(30/60/90/120天)
  • 可筛选内容类型(专辑、单曲、EP、播客等)
  • 提供日期本地化显示和相对时间格式
  • 支持标记已查看项目,避免重复提醒

安装与基础配置

前提条件

确保你已安装cli3/cli工具并成功应用到Spotify客户端。如果尚未安装,可以通过以下命令获取项目:

git clone https://gitcode.com/gh_mirrors/cli3/cli

应用结构

New Releases应用的核心文件结构如下:

CustomApps/new-releases/
├── [index.js](https://link.gitcode.com/i/6b9dac965187150884c86c1433640dca)      # 应用入口文件
├── [manifest.json](https://link.gitcode.com/i/a0384a2b44e1d13f492420dd395e875e)  # 应用元数据
├── [Card.js](https://link.gitcode.com/i/0d4056f0e395fcd7add65b3dba3c0f7f)        # 专辑卡片组件
├── [Settings.js](https://link.gitcode.com/i/0cfe0d86b8f0340e97049d8d49ed1dea)  # 设置界面组件
├── [Icons.js](https://link.gitcode.com/i/b1bbdeda77361c69cefa6d65bae9e9dc)      # 图标资源
└── [style.css](https://link.gitcode.com/i/5e95abdd3a7543f1ebe6b033d074cfdc)    # 样式文件

自动安装

cli3/cli工具会自动识别CustomApps目录下的应用,通常无需额外配置即可在Spotify客户端中使用。

核心功能解析

数据获取机制

应用通过Spotify API获取你关注艺人的最新发布内容。核心逻辑在index.js中实现,主要通过以下步骤:

  1. 获取用户关注的艺人列表
  2. 遍历每位艺人的最新发布内容
  3. 根据设定的时间范围筛选内容
  4. 按发布日期排序并展示

关键代码实现:

async function fetchTracks() {
  const artistList = await getArtistList();
  Spicetify.showNotification(`Fetching releases from ${artistList.length} artists`);

  const requests = artistList.map(async (obj) => {
    return await getArtistEverything(obj).catch((err) => {
      console.debug("Could not fetch all releases", err);
      console.debug(`Missing releases from ${count()} artists`);
    });
  });

  return await Promise.all(requests);
}

自定义设置界面

应用提供了丰富的个性化设置选项,通过Settings.js实现。你可以:

  • 调整时间范围(30/60/90/120天)
  • 选择内容类型(专辑、单曲、EP、播客等)
  • 设置日期显示格式(本地化/相对时间)
  • 自定义界面显示选项

设置界面的核心组件代码:

{
  desc: "Time range",
  key: "range",
  defaultValue: CONFIG.range,
  type: ConfigSelection,
  options: {
    30: "30 days",
    60: "60 days",
    90: "90 days",
    120: "120 days",
  },
  when: () => true,
}

界面展示

应用采用网格布局展示新发布内容,每个专辑/单曲以卡片形式呈现,包含封面、标题、艺人和发布日期等信息。卡片组件在Card.js中定义,样式由style.css控制。

已查看项目管理

应用支持标记已查看的发布内容,避免重复提醒。通过本地存储(LocalStorage)记录已 Dismiss 的项目ID:

function removeCards(id, type) {
  switch (type) {
    case "reset":
      Spicetify.showNotification("Reset dismissed releases");
      dismissed = [];
      break;
    case "undo":
      if (!dismissed[0]) Spicetify.showNotification("Nothing to undo", true);
      else Spicetify.showNotification("Undone dismissal");
      dismissed = id ? dismissed.filter((item) => item !== id) : dismissed.slice(0, -1);
      break;
    default:
      dismissed.push(id);
      break;
  }
  Spicetify.LocalStorage.set("new-releases:dismissed", JSON.stringify(dismissed));
  this.updatePostsVisual();
}

高级配置

配置选项详解

New Releases应用提供了多种可配置选项,位于Settings.js中,主要包括:

设置项说明默认值
Time range显示最近多少天的发布内容30天
Date locale日期显示的本地化设置浏览器默认
Relative date是否使用相对时间格式(如"3天前")false
Show type是否显示内容类型(专辑/单曲等)true
Show track count是否显示曲目数量true
Fetch new podcast是否包含播客内容false
Fetch new music是否包含音乐内容true

界面自定义

通过修改style.css文件,你可以自定义应用的外观。例如调整专辑卡片大小、修改颜色主题等。

内容筛选

在设置界面中,你可以精确控制想要接收提醒的内容类型:

  • 专辑(Album)
  • 单曲/EP(Single/EP)
  • 合辑(Compilations)
  • 播客(Podcast)

这些选项可以在Settings.js的配置面板中找到并设置。

使用技巧与最佳实践

推荐配置方案

对于大多数用户,我们推荐以下配置:

  • 时间范围:60天(平衡时效性和完整性)
  • 内容类型:勾选"专辑"和"单曲/EP"
  • 显示选项:全部勾选,获得完整信息
  • 日期格式:相对日期(更直观)

管理已查看内容

当你查看完某个新发布内容后,可以点击卡片上的"已查看"按钮将其从列表中移除。如果误操作,可以使用"撤销"功能恢复。若想重新查看所有内容,可在设置中使用"重置已查看"功能。

定期更新应用

cli3/cli项目和New Releases应用会不断更新,建议定期通过以下命令获取最新版本:

git pull origin main

故障排除

应用无法加载

如果New Releases应用无法正常加载,请检查以下几点:

  1. 确认cli3/cli已正确安装并应用到Spotify
  2. 检查CustomApps/new-releases/目录是否完整
  3. 查看Spotify开发者工具(Ctrl+Shift+I)中的控制台错误信息

内容不更新

若发现应用未显示最新发布内容:

  1. 点击应用界面的"刷新"按钮手动更新
  2. 检查设置中的时间范围是否设置得过短
  3. 确认你已关注相关艺人

语言显示问题

New Releases应用支持多语言显示,语言配置在manifest.json中定义。如果显示语言不正确,可以在设置中手动指定语言代码(如"zh-CN"表示简体中文)。

总结

New Releases应用为Spotify用户提供了一个强大而灵活的新内容提醒系统,帮助你及时发现关注艺人的最新作品。通过本文介绍的配置和使用方法,你可以打造专属于自己的音乐发现中心,不再错过任何喜爱的新音乐。

该应用的源代码完全开放,位于CustomApps/new-releases/目录下,欢迎开发者贡献代码或创建自定义版本。

最后,希望这篇指南能帮助你更好地享受音乐发现的乐趣!如有任何问题或建议,欢迎参与cli3/cli项目的社区讨论。

【免费下载链接】cli Command-line tool to customize Spotify client. Supports Windows, MacOS, and Linux. 【免费下载链接】cli 项目地址: https://gitcode.com/gh_mirrors/cli3/cli

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值