了解逆向需先了解正向
编写第一个app
在自己电脑上下载Android studio,下载地址:http://www.android-studio.org/index.php/download/hisversion,这里我下载的是2.2.3
安装过程自己百度
安装好后按照下图依次点击next
点开MainActivity页面 编写相应的Android代码 package hfdcxy.com.myapplication; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends AppCompatActivity { EditText Name; //定义Plain Test控件第一个输入框的名字 EditText Pass; //定义Plain Test控件第二个输入框的名字 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Name = (EditText) findViewById(R.id.TEXT_NAME); //通过findViewById找到输入框控件对应的id并给它起一个名字 Pass = (EditText) findViewById(R.id.TEST_PASS);//通过findViewById找到输入框控件对应的id并给它起一个名字 Button Login = (Button) findViewById(R.id.BTN_Login);//通过findViewById找到按钮控件对应的id并给它起一个名字 Login.setOnClickListener(new View.OnClickListener() { //监听有没有点击按钮控件 如果点击了就会执行onClick函数 @Override public void onClick(View view) { check(Name.getText().toString().trim(),Pass.getText().toString().trim()); //调用check函数 } }); } public void check(String name,String pass) //自定义函数check 这里用来检查用户名和密码是否是hfdcxy和1234 { if(name.equals("hfdcxy")&&pass.equals("1234")) { Toast.makeText(MainActivity.this,"登录成功", Toast.LENGTH_SHORT).show();//弹框 } else Toast.makeText(MainActivity.this,"登录失败", Toast.LENGTH_SHORT).show();//弹框 } }
这里由于我安装sdk的时候是29版本的,创建apk主程序时,创建的是26版本的,需要在build.gradle文件中修改对应版本如下图:
这里安装apk可以用Android studio 内置的emulator模拟器,也可以用自己下载的模拟器,建议用自己下载的模拟器(夜神模拟器,逍遥模拟器等)
将此路径配置到环境变量中
打开模拟器,在cmd中输入adb devices -l 查看设备列表
可能会出现错误:
adb server version (31) doesn’t match this client (36)
解决办法:将模拟器中的adb.exe用sdk中的adb.exe覆盖掉即可
运行adb install app_debug.apk
安装成功
至此,第一个Android程序安装完成