QQ音乐一键刷:APP开发历程
QQ音乐一键刷:基于iApp的娱乐工具向软件
前言:
本软件是完全使用iApp(安卓可视化编程软件,官称:裕语言)编写的软件。其实对iApp这个软件,不能算的上真正意义上的编程软件,但是对于编程思维训练无疑是有一点帮助的,而且现在iApp提供的语言版本(v3,v5,v6,iGame)也越来越多,意味着可编写的软件功能越来越丰富,软件性能越来越高。本软件基于iApp v3开发。
软件下载:
软件更新历程:
v0.0.1 内测版
- 项目正式启动,对接接口;
- 无需密码一键刷;
- 本地存储保障账号安全(
确实是太懒不想对接云端)。
v0.0.2 内测版
- 优化输入限制;
- 优化功能提示;
- 增加软件更多;
- 增加加载提示;
- 优化界面布局;
- 修复已知问题。
v0.0.3 测试版
- 新增实验性功能;
- 增加软件稳定性;
- 优化界面美观;
- 优化代码逻辑;
- 已知问题:“一键刷20小时”无法正常刷20小时,只有500分钟左右,并且不会增加音响力经验值。
v1.0.0公测版
- 下架无用实验性功能;
- 增加软件稳定性;
- 优化界面美观;
- 优化代码逻辑;
- 优化权限调用;
- 增加代码判断;
- 美化操作提示;
- 美化状态栏,增加系统判断;
- 美化界面跳转;
- 解决已知问题;
- 因接口问题,将“一键300分钟”改为“一键24小时”;
- 新增QQ一键打开排行榜。
软件部分内容开源
核心接口
基于网友分享的聚合刷接口,和谐时间未知,所以不稳定
http://shanhe.kim/api/qy2.0/music.php?uin=QQ号码
返回事例:
{ "status":"success", "uin":"10001", "message":"已为你刷取24个小时!", "url":"https://y.qq.com/m/client/vipexchange/index.html" }
并且还分享了html源码,不过是基于这个接口的界面,而不是接口源码,感兴趣的:下载链接(提取码:6666)
实现代码
iApp v3:
ug(5,"text",qq)
//获取编辑框输入的QQ号码
utw(null,"","请耐心等待","",true,wia)
{
}
t()
{
ss("http://shanhe.kim/qy1/shanhe.php?uin="+qq+"&qq="+qq,url)
hs(url,a)
//简单的数据提交
syso(a)
json(a,ab)
json(ab,"get","status",status)
json(ab,"get","message",massage)
//简单的数据处理
ufnsui()
{
us(8,"text",status)
f(massage=="请传入qq号")
{
us(9,"text","请输入你的QQ号码")
}
else
{
us(9,"text",massage)
}
f(status=="success")
{
tw("成功")
endutw()
}
else f(status=="error")
{
tw("失败")
endutw()
}
else
{
tw("错误码:000EX1")
endutw()
}
//简单的数据判断
}
}
其实没有什么干货,懂v3的一般都会
实验性功能(已经关闭)
其实这个刷20小时,就是把接口重复四次300分钟*4次=1200分钟=20小时
但是执行之后仅能收到的成功时长只有500分钟上下,可能原因有
- 接口本身基于多次聚合,多次执行无效
- 当天时间都还没过20小时,时间判断拦截
- 接口执行时间过短(暂未测试)
并且这500分钟还不能加入到音响力时长里面,原因暂不清楚
iApp v3实现调用QQ打开网站
实现代码:
s qqurl="https://y.qq.com/m/client/vipexchange/index.html"
//QQ音乐官方排行榜网址
java(bytes,qqurl,"String.getBytes","String","utf-8")
java(bytes2,null,"android.util.Base64.encode","byte[]",bytes,"int",2)
//base64加密网址 不然无法打开
javanew(wz,"String","byte[]",bytes2,"String","utf-8")
ss("mqqapi://forward/url?url_prefix="+wz+"&src_type=web&version=1",qurl)
sit(a,"action", "android.intent.action.VIEW")
sit(a,"data",qurl)
uit(a, "chooser", "QQ访问")
//QQ?启动!
Ps:貌似只能打开QQ的官方链接(可能是带qq.com的,具体判断方式不清楚)