吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 13493|回复: 25
收起左侧

[Android 分享] SQQ第一个apk------智能人脸识别锁屏(第一集)

  [复制链接]
THB211 发表于 2014-5-7 19:53
本帖最后由 THB211 于 2014-5-7 21:41 编辑

                小白学习专帖第一帖。后续有空会续集,敬请期待!
软件名com.sanyinchen.lock_face_3.apk
编译打开AndroidManifest.xml
[Asm] 纯文本查看 复制代码
<?xml version="1.0" encoding="utf-8"?>
<manifest android:versionCode="3" android:versionName="1.1" package="com.sanyinchen.lock_face"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.RESTART_PACKAGES" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-feature android:name="android.hardware.camera" />
    <uses-feature android:name="android.hardware.camera.autofocus" />
    <supports-screens android:anyDensity="true" android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:resizeable="true" />
    <application android:theme="@style/AppTheme" android:label="@string/app_name" android:icon="@drawable/lock" android:allowBackup="true">
        <activity android:theme="@android:style/Theme.Translucent" android:label="@string/app_name" android:name="com.sanyinchen.lock_face.MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

从上面的代码可以知道activity Main为:
[Asm] 纯文本查看 复制代码
        <activity android:theme="@android:style/Theme.Translucent" android:label="@string/app_name" android:name="com.sanyinchen.lock_face.MainActivity">


接着找到MainActivity.smali发现里面没有积分提示的窗口,同理我们再打开MainActivity$4.smali,发现提示积分的内容在此文件调用,代码如下
[Asm] 纯文本查看 复制代码
# virtual methods
.method public onClick(Landroid/view/View;)V
    .locals 6
    .param p1, "v"    # Landroid/view/View;

    .prologue
    const/4 v5, 0x1

    const/4 v3, 0x0

    .line 212
    iget-object v1, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;

    iget v1, v1, Lcom/sanyinchen/lock_face/MainActivity;->points:I

    const/16 v2, 0x32

    if-gt v1, v2, :cond_0

    .line 215
    const-string v0, " \u4eb2~\u79ef\u5206\u4e0d\u8db3\u54e6\uff0c\u83b7\u53d650\u79ef\u5206\u5373\u53ef\u5f00\u542f\u70ab\u9177\u7684\u4eba\u8138\u8bc6\u522b\u9501\u5c4f\uff0c\u8d76\u5feb\u884c\u52a8\u5427^v^\nPS:\u4eb2\uff0c\u4e0b\u8f7d\u65f6\u8bf7\u52ff\u6709\u4efb\u4f55\u64cd\u4f5c\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u9700\u8981<\u5b89\u88c5>\u4e4b\u540e\u624d\u80fd\u83b7\u53d6\u79ef\u5206\u54e6\uff0c\u611f\u8c22\u4eb2\u7684\u652f\u6301\uff01\"\n\n(\u4e0b\u8f7d+\u5b89\u88c5=\u70ab\u9177\u7684\u4eba\u8138\u8bc6\u522b\u9501\u5c4f)  ========================== unicode 积分不足获取50积分XXX"

    .line 216
    .local v0, "message":Ljava/lang/String;
    new-instance v1, Landroid/app/AlertDialog$Builder;

    iget-object v2, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;

    invoke-direct {v1, v2}, Landroid/app/AlertDialog$Builder;-><init>(Landroid/content/Context;)V

    .line 217
    const-string v2, "\u6e29\u99a8\u63d0\u793a    =================================[/size][/color][/font][size=2][color=#ff00][font=宋体]unicode[/font][/color] [/size][font=宋体][color=#ff0000][size=2]温馨提示"

    invoke-virtual {v1, v2}, Landroid/app/AlertDialog$Builder;->setTitle(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;

    move-result-object v1




不知道大家看到了 if-gt v1, v2, :cond_0  没有,看到了知道是什么意思木有?(意思就是v1大于v2就转到:cond_0代码处
:cond_0的代码如下
[Asm] 纯文本查看 复制代码
 :cond_0
    iget-object v1, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;

    iget-object v1, v1, Lcom/sanyinchen/lock_face/MainActivity;->serect:Ljava/lang/String;            #判断是否初次使用不然设置密码

    if-nez v1, :cond_1  

    .line 247
    iget-object v1, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;

    new-instance v2, Landroid/widget/EditText;   #新建[/size][/font][/color][size=2][color=#ff00][font=宋体]EditText;[/font][/color] [color=#ff0000]用于用户输入创建使用的密码[/color][/size][color=#ff00][font=宋体][size=2]

    iget-object v3, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;

    invoke-direct {v2, v3}, Landroid/widget/EditText;-><init>(Landroid/content/Context;)V

    iput-object v2, v1, Lcom/sanyinchen/lock_face/MainActivity;->text:Landroid/widget/EditText;    #输入密码的窗口

    .line 248
    new-instance v1, Landroid/app/AlertDialog$Builder;

    iget-object v2, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;

    invoke-direct {v1, v2}, Landroid/app/AlertDialog$Builder;-><init>(Landroid/content/Context;)V

    .line 249
    const-string v2, "\u521d\u6b21\u4f7f\u7528,\u8bbe\u7f6e\u5bc6\u7801----- ------------------unicode 初次使用设置密码"

    invoke-virtual {v1, v2}, Landroid/app/AlertDialog$Builder;->setTitle(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;


到此如果我们把 if-gt v1, v2, :cond_0  改为if-lt  v1, v2, :cond_0或者无条件 的goto   :cond_0亦可以 ,
修改的代码如下
[Asm] 纯文本查看 复制代码
# virtual methods[/color][/size]
[size=2][color=#ff00].method public onClick(Landroid/view/View;)V[/color][/size]
[size=2][color=#ff00]    .locals 6[/color][/size]
[size=2][color=#ff00]    .param p1, "v"    # Landroid/view/View;[/color][/size]

[size=2][color=#ff00]    .prologue[/color][/size]
[size=2][color=#ff00]    const/4 v5, 0x1[/color][/size]

[size=2][color=#ff00]    const/4 v3, 0x0[/color][/size]

[size=2][color=#ff00]    .line 212[/color][/size]
[size=2][color=#ff00]    iget-object v1, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;[/color][/size]

[size=2][color=#ff00]    iget v1, v1, Lcom/sanyinchen/lock_face/MainActivity;->points:I[/color][/size]

[size=2][color=#ff00]    const/16 v2, 0x32[/color][/size]

[size=4][color=#ff00ff]    if-lt v1, v2, :cond_0   或者改为 goto :cond_0[/color][/size]

[size=2][color=#ff00]    .line 215[/color][/size]
[size=2][color=#ff00]    const-string v0, " \u4eb2~\u79ef\u5206\u4e0d\u8db3\u54e6\uff0c\u83b7\u53d650\u79ef\u5206\u5373\u53ef\u5f00\u542f\u70ab\u9177\u7684\u4eba\u8138\u8bc6\u522b\u9501\u5c4f\uff0c\u8d76\u5feb\u884c\u52a8\u5427^v^\nPS:\u4eb2\uff0c\u4e0b\u8f7d\u65f6\u8bf7\u52ff\u6709\u4efb\u4f55\u64cd\u4f5c\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u9700\u8981<\u5b89\u88c5>\u4e4b\u540e\u624d\u80fd\u83b7\u53d6\u79ef\u5206\u54e6\uff0c\u611f\u8c22\u4eb2\u7684\u652f\u6301\uff01\"\n\n(\u4e0b\u8f7d+\u5b89\u88c5=\u70ab\u9177\u7684\u4eba\u8138\u8bc6\u522b\u9501\u5c4f)"[/color][/size]

[size=2][color=#ff00]    .line 216[/color][/size]
[size=2][color=#ff00]    .local v0, "message":Ljava/lang/String;[/color][/size]
[size=2][color=#ff00]    new-instance v1, Landroid/app/AlertDialog$Builder;[/color][/size]

[size=2][color=#ff00]    iget-object v2, p0, Lcom/sanyinchen/lock_face/MainActivity$4;->this$0:Lcom/sanyinchen/lock_face/MainActivity;[/color][/size]

[size=2][color=#ff00]    invoke-direct {v1, v2}, Landroid/app/AlertDialog$Builder;-><init>(Landroid/content/Context;)V[/color][/size]

[size=2][color=#ff00]    .line 217[/color][/size]
[size=2][color=#ff00]    const-string v2, "\u6e29\u99a8\u63d0\u793a"[/color][/size]

[size=2][color=#ff00]    invoke-virtual {v1, v2}, Landroid/app/AlertDialog$Builder;->setTitle(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;[/color][/size]

[size=2][color=#ff00]    move-result-object v1




另一破解方法

[Asm] 纯文本查看 复制代码
iget v1, v1, Lcom/sanyinchen/lock_face/MainActivity;->points:I

    const/16 v2, 0x32    改为 const/16 v2, 0x0


也可以破解




好了软件破解完成。。。





免费评分

参与人数 1热心值 +1 收起 理由
ら不否定的回答 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩.

查看全部评分

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

瓜子吧3 发表于 2014-5-7 19:55
这个有啥用呢?
心断空 发表于 2014-5-7 19:56
blmk 发表于 2014-5-7 19:56
Crony 发表于 2014-5-7 19:58
我的脸能被识别出来么{:1_931:}
Μs丶兄弟 发表于 2014-5-7 20:04
{:1_915:}能识别出来???
y79112 发表于 2014-5-7 20:07
掉渣天。。。
ら不否定的回答 发表于 2014-5-7 20:09
持续更新,持续支持。
留恋流年念流年 发表于 2014-5-7 20:18
没摄像头怎么识别.
吾爱英雄 发表于 2014-5-7 20:19
希望,赶快出来,别人老用我手机,解锁人脸
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-24 09:16

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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