1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > apk注册机加密_apk软件添加注册机方法 安卓apk添加授权教程

apk注册机加密_apk软件添加注册机方法 安卓apk添加授权教程

时间:2022-08-22 16:04:06

相关推荐

apk注册机加密_apk软件添加注册机方法 安卓apk添加授权教程

1

让SuperChm实现Call3具有一样的注册机制。首先得了解,一个Android程序由一个或多个Activity以及其他组件组成,每个Activity都是Android程序的一个展示“页面”,负责数据的处理和展示工作。并且每个Android程序有且仅有一个主Activity(隐藏程序没有主Activity)它是程序启动的第一个Activity。知道了这些,我们就看看Call3的第一个“页面”即是展示注册机制的Activity包含了哪些元素。

2

然后打开Call3的VerifyActivity.smali,其instance fields已经显示出所引用的组件:

//两个按钮

.field private a:Landroid/widget/Button;

.field private b:Landroid/widget/Button;

//一个浏览文本

.field private c:Landroid/widget/TextView;

//一个编辑框

.field private d:Landroid/widget/EditText;

//验证注册的本地SharedPreferences

.field private e:Landroid/content/SharedPreferences;

//获取手机通讯状态相关的方法,这个会涉及到系统权限

.field private f:Landroid/telephony/TelephonyManager;

//提示框

.field private g:Landroid/app/ProgressDialog;

3

VerifyActivity中各种的方法:1、在a()方法中有引用DESUtil.smali的encryptDES解密方法。

invoke-static {v0}, Lcom/call3/DESUtil;->encryptDES(Ljava/lang/String;)Ljava/lang/String;

4

注意:这里面也有启动主Activity

2、在onclick()方法中有一个资源ID:0x7f070014

:pswitch_data_0

.packed-switch 0x7f070014

:pswitch_0

:pswitch_1

.end packed-switch

5

3、在onCreate()方法中资源ID有:0x7f030001、0x7f070012、0x7f070014、0x7f070015、0x7f070013。还有一个启动主功能MainActivity

new-instance v0, Landroid/content/Intent;

const-class v1, Lcom/call3/MainActivity;

invoke-direct {v0, p0, v1}, Landroid/content/Intent;->(Landroid/content/Context;Ljava/lang/Class;)V

invoke-virtual {p0, v0}, Lcom/call3/VerifyActivity;->startActivity(Landroid/content/Intent;)V

6

对于DESUtil.smali,它又引用了Base64.smali文件中的encode方法:

invoke-static{v0},Lcom/call3/Base64;->encode([B)Ljava/lang/String;

7

这样,答题的流程我们就知道了:首先在AndroidMainfest.xml中配置主Activity为VerifyActivity,然后导入layout布局文件activity_main.xml,同时还要引用DESUtil.smali和Base64.smali。同时要注意TelephonyManager有关权限的增加。

8

好了,我们开始动工吧开始操作1、将SuperChm程序的主Activity修改为VerifyActivity,原主Activity变为一般;2、在原主Activity的文件夹下导入:VerifyActivity.smali、DESUtil.smali和Base64.smali。在layout布局文件夹下,导入activity_verify.xml。3、将VerifyActivity.smali、DESUtil.smali、Base64.smali文件中的“Lcom/call3/”全部替换成“Lcom/jrzheng/superchm/Activity/”。更改VerifyActivity.smali中启动的主Activity,即:

const-classv1,Lcom/call3/MainActivity;

改为:

const-classv1,Lcom/jrzheng/superchm/Activity/MainActivity;

9

4、开始最艰辛的一个过程,设置资源ID。自行对比吧。

添加color:colors.xml、public.xml、R$color.smali;

添加“btn_verify”:ids.xml、public.xml&id、R$id;

添加“activity_verify”:public.xml&layout、R$layout;

添加“tv_imei”:ids.xml、public.xml&id、R$id;

添加“btn_close”:ids.xml、public.xml&id、R$id;

添加“et_pwd”:ids.xml、public.xml&id、R$id;

添加“tv_title”,ids.xml、public.xml&id、R$id;

10

0x7f070014->btn_verify的ID

0x7f030001->activity_verify的ID

0x7f070012->tv_imei的ID

0x7f070015->btn_close的ID

0x7f06007f->et_pwd的ID

11

这个Call3的注册机制还有一个好处就是注册成功以后,再打开就不再显示注册界面。

END

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。