吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 13898|回复: 13
收起左侧

[Android 分享] 破解豆瓣FM离线限制

  [复制链接]
古今第一 发表于 2014-7-18 17:11
本帖最后由 古今第一 于 2014-7-18 19:26 编辑

功能简介

豆瓣电台是基于算法推荐的网络音乐播放产品。它基于豆瓣庞大的用户数据,通过判断用户在播放时的操作行为,为用户推荐他可能感兴趣的曲目。

开发商:豆瓣网





准备:
离线超过两个兆赫的时候会提示添加离线兆赫失败,超过了离线兆赫数限制

破解过程:
直接IDE载人搜索 关键字离线兆赫失败”   找到了字符串的定义段

<stringname="add_offline_channel_fail">添加离线兆赫失败,超过了离线兆赫数限制</string>
QQ图片20140718164014.jpg

可以看到字符串的内部名是add_offline_channel_fail
所以继续搜索add_offline_channel_fail

QQ图片20140718164120.jpg
到了一个定义文件   
<public type="string" name="add_offline_channel_fail"id="0x7f0c0035"/>,可以看到定义id 0x7f0c0035
继续搜索0x7f0c0035
到了代码调用处

QQ图片20140718164214.jpg
往上翻可以看到一个函数addNewOfflineChannel,什么东西?用脚趾头猜都知道,这就是添加离线兆赫的函数名,所以接着搜索addNewOfflineChannel找到了函数的定义段

[Java] 纯文本查看 复制代码
.method public addNewOfflineChannel(Lcom/douban/fm/model/Channels$Channel;)Z
    .locals 3
    .parameter "channel"

    .prologue
    const/4 v0, 0x0

    .line 2783
    iget-object v1, p0, Lcom/douban/radio/offline/OfflineManager;->mQualityManager:Lcom/douban/radio/controller/QualityManager;

    invoke-virtual {v1}, Lcom/douban/radio/controller/QualityManager;->isPro()Ljava/lang/Boolean;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/Boolean;->booleanValue()Z

    move-result v1

    iput-boolean v1, p0, Lcom/douban/radio/offline/OfflineManager;->mUserPro:Z

    .line 2785
    iget-boolean v1, p0, Lcom/douban/radio/offline/OfflineManager;->mUserPro:Z

    if-eqz v1, :cond_1

    iget-object v1, p0, Lcom/douban/radio/offline/OfflineManager;->mChannels:Ljava/util/LinkedList;

    invoke-virtual {v1}, Ljava/util/LinkedList;->size()I

    move-result v1

    const/4 v2, 0x4

    if-lt v1, v2, :cond_1

    .line 2801
    :cond_0
    :goto_0
    return v0

    .line 2789
    :cond_1
    iget-boolean v1, p0, Lcom/douban/radio/offline/OfflineManager;->mUserPro:Z

    if-nez v1, :cond_2

    iget-object v1, p0, Lcom/douban/radio/offline/OfflineManager;->mChannels:Ljava/util/LinkedList;

    invoke-virtual {v1}, Ljava/util/LinkedList;->size()I

    move-result v1

    const/4 v2, 0x2

    if-ge v1, v2, :cond_0

    .line 2793
    :cond_2
    iget-object v1, p0, Lcom/douban/radio/offline/OfflineManager;->mChannels:Ljava/util/LinkedList;

    iget v2, p1, Lcom/douban/fm/model/Channels$Channel;->id:I

    invoke-static {v2}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/util/LinkedList;->contains(Ljava/lang/Object;)Z

    move-result v1

    if-nez v1, :cond_0

    .line 2795
    iget-object v0, p0, Lcom/douban/radio/offline/OfflineManager;->mDB:Lcom/douban/radio/offline/OfflineDB;

    invoke-virtual {v0, p1}, Lcom/douban/radio/offline/OfflineDB;->addNewChannel(Lcom/douban/fm/model/Channels$Channel;)V

    .line 2796
    iget-object v0, p0, Lcom/douban/radio/offline/OfflineManager;->mChannels:Ljava/util/LinkedList;

    iget v1, p1, Lcom/douban/fm/model/Channels$Channel;->id:I

    invoke-static {v1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z

    .line 2798
    const/4 v0, 0x1

    goto :goto_0
.end method


一大堆的乱哄哄的代码。。。反正我是没能读懂几个。。。转到Java看吧,
QQ图片20140718164443.jpg

第二个条件判断出现了0x2的比较,肯定就是离线兆赫的限制了,而在DALVIK代码中也可以找到与之对应的代码  
const/4 v2, 0x2
if-ge v1, v2, :cond_0
所以我们可以直接把0x2改为我们想要的数值来突破限制,也可以直接把这段代码删除。
修改后效果
Screenshot_2014-07-18-17-09-09.png

原版豆瓣FM下载:http://pan.baidu.com/s/1pJAw0P1
豆瓣FM无离线限制版:http://www.52pojie.cn/thread-275914-1-1.html



免费评分

参与人数 2热心值 +2 收起 理由
小试锋芒 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩.
Rea + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

litouphone 发表于 2014-8-21 13:03
还有每个兆赫离线容量允许修改呢?
我已经把这些设置内嵌到菜单里面了

http://www.cnblogs.com/litou/p/3540600.html
http://pan.baidu.com/s/1eQBprSA#dir/path=%2Fandroid%2Fapk%2F%E8%B1%86%E7%93%A3FM

免费评分

参与人数 1热心值 +1 收起 理由
zinjs + 1 谢谢@Thanks!

查看全部评分

骑乌龟的帅蜗牛 发表于 2014-7-18 17:27
Rea 发表于 2014-7-18 18:48
 楼主| 古今第一 发表于 2014-7-18 19:17
本帖最后由 古今第一 于 2014-7-18 19:27 编辑
Rea 发表于 2014-7-18 18:48
话说- - 干嘛不把改好的分享呢~~~

等下分享,我上传下
OK了 豆瓣FM无离线限制版:http://www.52pojie.cn/thread-275914-1-1.html
无极超哥 发表于 2014-7-18 19:52
不错啊!!!!!
924410377 发表于 2014-7-20 21:48 来自手机
牛叉!!!!
resin66 发表于 2014-7-21 19:09
哈哈 不错
Qwetry 发表于 2014-7-22 17:17
我记得以前好像看过。。
 楼主| 古今第一 发表于 2014-7-22 19:52 来自手机
lyj706757539 发表于 2014-7-22 17:17
我记得以前好像看过。。

原创的!!!!!
lomlon 发表于 2014-7-23 11:11
学习了,正需要,谢谢楼主分享!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-6-6 12:21

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表