Máquina de registro móvil
Luego abra VerifyActivity.smali de Call3, sus campos de instancia ya muestran los componentes a los que se hace referencia:
//Dos botones
. campo privadoa:land roid/widget/Button;
. campo privadob:land roid/widget/Button;
//Un texto de navegación
. campo privatec:land roid/widget/TextView;
//Un cuadro de edición
. campo privado:land roid/widget/EditText;
//Verificar las preferencias compartidas locales registradas
. campo privado:land roid/content/shared preferencias;
//Los métodos relacionados con la obtención del estado de comunicación del teléfono móvil implicarán permisos del sistema.
. campo privado f:land roid/telefonía/administrador de telefonía;
//Cuadro de aviso
. campo privadog:land roid/app/progress dialog;
VerifyActivity tiene muchos métodos: 1. En el método (), hay una referencia al método de descifrado encryptDES de DESUtil.smali.
invocar-estático{v0}, Lcom/call3/DESUtil. ->encrypt des(Ljava/lang/String;)Ljava/lang/String;
Nota: También hay una actividad principal de inicio.
2. Hay un ID de recurso en el método onclick(): 0x7f 070014.
:pswitch_data_0
. Interruptor de empaquetado 0x7f070014
:pswitch_0
:pswitch_1
. Interruptor montado en el extremo
3. En el método onCreate(), los ID de recursos son 0x7f030001, 0x7f070012, 0x7f070014, 0x7f070015, 0x7f070013. También hay una MainActivity que inicia la función principal.
nueva instanciav0, land roid/content/Intent
const-classv1, Lcom/call 3/actividad principal
invoke-direct{v0; p0, v1}, land roid/content/Intent; -& gt;
(land roid/content/context; ljava/lang/Class;)V
invocar-virtual{ p0, v0}, Lcom/call 3/verificar actividad;->iniciar actividad(land roid/content/Intent;)V
Para DESUtil.smali, se refiere a la codificación en el archivo Base64.smali Método:
invoke-static{v0},Lcom/call 3/Base64;->encode([B]Ljava/lang/String;
De esta manera conocemos el proceso Para responder la pregunta: primero configure la actividad principal como VerifyActivity en AndroidMainfest.xml, luego importe el archivo de diseño Activity_main.xml y también haga referencia a DESUtil.smali y Base64.smali. Al mismo tiempo, preste atención al aumento de TelephonyManager relacionado. permisos.
Bien, comencemos a tomar medidas:
1. Cambie la Actividad principal del programa SuperChm a VerifyActivity, y la Actividad principal original se vuelve general 2. Importar: VerifyActivity en el. carpeta de la actividad principal original .smali, DESUtil.smali, Base64.smali, importe Activity_verify.xml en la carpeta de diseño
3. Cambie "Lcom/call3/" en VerifyActivity.smali, DESUtil. Archivos .smali y Base64.smali "Reemplazar con "Lcom/Jr Zheng/super CHM/activity/". Cambie la actividad principal iniciada en VerifyActivity.smali, a saber:
const-classv1, Lcom/call 3 /actividad principal;
Reemplazar con:
const-classv1, Lcom/Jr Zheng/super CHM/Activity/main Activity;
4. proceso difícil y establezca el ID del recurso. Compáralo tú mismo.
Agregar colores:colors.xml,public.xml,r$color.smali
Agregar "btn_validate":ids.xml,public.xml&id,r$ id
Agregar "activity_verify":public.xml&layout,r$layout;
Agregar "TV_imei":ids.xml,public.xml&id ,R$id
Agregar "btn_close" :ids.xml,public.xml&id,R$id
Agregar "et_pwd":ids.xml, ID público
0x7f 030001->;
0x7f 070012->; ID de tv_imei
0x7f 070015->; ID de btn_close
0x7f 06007 f-> ID de et_pwd
Otro El beneficio de este mecanismo de registro de Call3 es que después de un registro exitoso, la interfaz de registro ya no se mostrará cuando se abra nuevamente.