我做的app上架应用市场一天,快破400下载量,0差评

news2024/9/19 10:37:57

上集说到,我做了一个叫QB音乐的安卓app,经过一段时间的自我使用与测试终于算发布了。我昨天顺便把它上架了奇妙应用市场,截止目前3月1号过去了一天,下载量快到400,0差评。看来还是能正常使用的。
在这里插入图片描述

一、为什么做这个app

为什么我要做这个app?因为在平时工作或者敲代码时候,难免要放点音乐,用某易云经常会播十几秒就突然切歌(因为没会员),或者随机播的音乐很多不喜欢听。而且打开app或切换回app都有几秒广告,列表的歌会突然没版权等。

我平常喜欢用哔哩哔哩,里面基本都有我喜欢听的音乐,而且我偏向喜欢听现场live。

于是我想着能不能为自己打造一个app,无广告,一点进去就能放音乐,而且不用担心歌曲无vip不能听和突然失效。

二、技术实现

于是基于这个想法,我开始着手开发。我并不是一个专业的安卓开发,没有在公司担任过安卓开发岗位,只有在大学里面学过一些安卓开发知识,和日常凭自己兴趣爱好做一些小demo。所以整个开发过程我使用了ChatGPT进行辅助开发,问了一些技术细节和框架插件选择等,但整个开发过程还是得自己思考设计交互和代码结构优化等。
在这里插入图片描述
用到的技术其实不难,都是很简单的东西,都是靠自己拼凑起来的,有哪些值得学习的地方吗?可能很少。🤔音频和视频播放是直接用exoPlayer,复制粘贴而已,非要说难点的话就是ChatGpt的回答需要自己过滤和重新整理使用,还有网上搜索到的知识也要仔细甄别再拿来使用。还有几个细节是当其他应用使用麦克风或者播放了音频视频,如何打断当前的音乐,比如微信发语音时候,如果不处理,会录到正在播放的音乐。还有蓝牙耳机控制播放下一首,这个app没有用到蓝牙权限,使用了某个系统自带的简单api就能实现了。所以这个app整体需要的权限很少,有网络和通知就能用大部分功能,就想下载时提示需要存储而已。

三、实现原理

整个app其实没有我自己的后台服务,所以也不会收集任何信息。歌曲搜索、听歌、歌词适配等等的数据请求是直接在一个神秘的地方。一般来说,只要笔里笔里不倒闭,它应该就能一直用下去。
在这里插入图片描述

四、收获

  • 算是自己做了一个app并发布上线了
  • 平常和后续自己想听歌时能用到
  • 开发和维护一个app确实不简单,看待一切事情有了新角度
  • 等等

总之自使用以来听歌听爽了,各种经典老歌,不得不说经典老歌确实耐听。这个app注定是小众的,它的宗旨不是要替代谁,也不可能靠它赚到钱。只是希望能帮到一小部分人,如果觉得有用,可以一直用着。如果觉得不好用,卸载就可以了。

之后如果有时间,我会添加一些新功能。比如支持创建多个歌单合集,可以根据喜好把歌放在不同的歌单合集,这个功能后续得做的,会方便一点。

五、下载方式

下载方式可以看我上一篇文章,都是网盘下载可能不太方便,这里补充两个方式。

方式1

奇妙应用市场,搜索“QB音乐”。

方式2

加QQ群,扫码直接进,不用验证。apk在群文件里,只下载,这样安装体验相对应该方便些。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1482167.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ABAP - SALV教程 01- 开篇:打开SALV的三种方式之一

关于SALV,这里参考巨佬江正军的文章讲解,在做SAP开发的遇到困难和瓶颈的时候,每每读到巨佬的文章都会灵感爆发、醍醐灌顶。https://www.cnblogs.com/jiangzhengjun/p/4291387.html 博主由于是由JAVA转型的ABAP开发,刚接触ABAP的时…

Python爬虫——Urllib库-2

编解码 问题引入 例如: https://www.baidu.com/s?wd章若楠 https://www.baidu.com/s?wd%E7%AB%A0%E8%8B%A5%E6%A5%A0 第二部分的一串乱码就是章若楠 如果这里是写的章若楠就会 产生这样的错误 所以我们就可以使用get请求方式的quote方法了 get请求方式的q…

YOLOv9:使用可编程梯度信息学习您想学习的内容

摘要 arxiv.org/pdf/2402.13616.pdf 当今的深度学习方法侧重于如何设计最合适的目标函数,以便模型的预测结果能最接近于实际结果。同时,还必须设计一个适当的架构,以便于获取足够的预测信息。现有的方法忽略了一个事实,即当输入数据经历层层特征提取和空间变换时,会损失…

加密与安全_探索密钥交换算法_Diffie-Hellman算法

文章目录 概述数学理论支持使用Java实现DH算法DH算法的缺点 概述 对称加密算法解决了数据加密的问题,例如AES加密可以有效地保护文件的安全性。然而,一个关键的挑战是如何在不安全的通信信道上安全地传输密钥。 假设小明需要向路人甲发送一个加密文件&a…

代码随想录刷题笔记 DAY 37 | 动态规划理论基础 | 斐波那契数 No.509 | 爬楼梯 No.70 | 使用最小花费爬楼梯 No.746

文章目录 Day 3700. 动态规划理论基础01. 斐波那契数&#xff08;No. 509&#xff09;<1> 题目<2> 笔记<3> 代码 02. 爬楼梯&#xff08;No. 70&#xff09;<1> 题目<2> 笔记<3> 代码 03. 使用最小花费爬楼梯&#xff08;No. 746&#xff…

Project_Euler-44 题解

Project_Euler-44 题解 题目 思路 题目给出了一个性质&#xff0c;让我在对应性质的数据中找出目标值&#xff0c;这种问题首先想到的就是枚举。 我们可以枚举 P k P_k Pk​ &#xff0c;对于每一个 P k P_k Pk​ &#xff0c;我们再枚举 P j P_j Pj​&#xff0c; P j P_…

阿尔卡特Adixen ADP/ADS 系列 2 干泵使用说明

阿尔卡特Adixen ADP/ADS 系列 2 干泵使用说明

《求生之路2》服务器如何选择合适的内存和CPU核心数,以避免丢包和延迟高?

根据求生之路2服务器的实际案例分析选择合适的内存和CPU核心数以避免丢包和延迟高的问题&#xff0c;首先需要考虑游戏的类型和对服务器配置的具体要求。《求生之路2》作为一款多人在线射击游戏&#xff0c;其服务器和网络优化对于玩家体验至关重要。 首先&#xff0c;考虑到游…

Android修行手册-集成Python开发环境

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分…

redis实现分布式全局唯一id

目录 一、前言二、如何通过Redis设计一个分布式全局唯一ID生成工具2.1 使用 Redis 计数器实现2.2 使用 Redis Hash结构实现 三、通过代码实现分布式全局唯一ID工具3.1 导入依赖配置3.2 配置yml文件3.3 序列化配置3.4 编写获取工具3.5 测试获取工具 四、运行结果 一、前言 在很…

PySide6+VSCode Python可视化环境搭建

#记住在cmd中运行&#xff0c;不要在vscode里运行&#xff0c;否则env会装到工程目录下 python -m venv env #env\Scripts\activate.bat pip install pyside6 下载本期源码 vscode装一个PYQT Integration插件&#xff0c;设置好两个路径&#xff08;下面有个脚本用于获取路径&…

陶瓷工业5G智能制造工厂数字孪生可视化平台,推进行业数字化转型

陶瓷工业5G智能制造工厂数字孪生可视化平台&#xff0c;推进行业数字化转型。在陶瓷工业领域&#xff0c;5G智能制造工厂数字孪生可视化平台的应用正在改变着行业的传统生产模式&#xff0c;推动着数字化转型的进程。本文将围绕这一主题展开探讨&#xff0c;分析数字孪生可视化…

Socket网络编程(四)——点对点传输场景方案

目录 场景如何去获取到TCP的IP和Port&#xff1f;UDP的搜索IP地址、端口号方案UDP搜索取消实现相关的流程&#xff1a;代码实现逻辑服务端实现客户端实现UDP搜索代码执行结果 TCP点对点传输实现代码实现步骤点对点传输测试结果 源码下载 场景 在一个局域网当中&#xff0c;不知…

Win11系统安装安卓子系统教程

随着Win11系统的不断普及&#xff0c;以及硬件设备的更新换代&#xff0c;我相信很多同学都已经更新并使用到了最新的Win11系统。那么&#xff0c;Win11系统最受期待的功能“Windows Subsystem for Android”&#xff08;简称WSA&#xff09;&#xff0c;即《安卓子系统》。他可…

CAPL组装IPv4分片包的三种思路(2)

2、使用CAPL的函数自动生成一条完整的ICMPv4 Echo Request报文,然后把数据手动放入两个分片报文中 首先生成一条完整的icmp报文: ethernetPacket ppkt1;//icmpv4 echo requestbyte data[1] = {10};//icmpv4 echo request datappkt1.icmpv4.echo…

湖南湘菜 7页面 美食主题 带设计说明 美食网页设计制作 HTML美食网页成品 美食网页成品 HTML美食网页设计

湖南湘菜 7页面 美食主题 带设计说明 jquery图片轮播特效 滚动文字 aspaccess数据库注册登录留言功能 美食网页设计制作 HTML美食网页成品 美食网页成品 HTML美食网页设计制作 前端美食网页开发 热门美食特产网页制作 静态网页成品 asp/php动态网站设计制作DW定制定做 web前…

佛山50公里徒步组团|真北敏捷社区佛山敏捷DevOps社区

真北敏捷社区&佛山敏捷DevOps社区有两个宗旨&#xff0c;一是求知&#xff0c;二是连接。连接有识之士&#xff0c;同修友士之识。峨峨乎高山&#xff0c;洋洋乎流水。谈笑有鸿儒&#xff0c;往来无白丁。 《柳叶刀》上的研究显示&#xff0c;运动的情绪价值&#xff0c;相…

GitHub Copilot extension activation error: ‘No access to GitHub Copilot found‘

好不容易学生认证通过了&#xff0c;打开vscode用copilot结果一直报这个错误。我的原因是&#xff1a;还未给copilot授权&#xff0c; 通过了学生认证后要进入这里进行授权&#xff1a;

数据分析-Pandas数据探查初步圆饼图

数据分析-Pandas数据探查初步圆饼图 数据分析和处理中&#xff0c;难免会遇到各种数据&#xff0c;那么数据呈现怎样的规律呢&#xff1f;不管金融数据&#xff0c;风控数据&#xff0c;营销数据等等&#xff0c;莫不如此。如何通过图示展示数据的规律&#xff1f; 数据表&am…

PHP使用imap_open读取QQ邮箱

PHP代码&#xff1a; /** PHP使用imap_open读取QQ邮箱imap_open 官方文档&#xff1a;https://www.php.net/function.imap_open */function parse_mailstr($subject) {$a explode(?,$subject);$n count($a);$a $a[$n-2];return base64_decode($a); }function recevie_emai…