前言
之所以准备写这一系列逆向的教程是因为有一些同学私信我说自己想学习Android逆向但是不知道怎么去学习 包括自己身边的一些计算机专业的同学 在大学里面老师讲的那些东西要么是自己不感兴趣 要么是自己上课不学习 大学美好的时光都浪费在了陪同学一起去网吧打游戏上面了 反正大学几年过去了 自己也没有学到一些有用的知识 现在他们即将面临着毕业要出去找工作 但是自己什么都不会 而且计算机相关的工作又分为好多种 自己也不知道怎么去选择以后从事的工作 所以就会感到很迷茫   网上教程是找到一大堆 大多讲的都很杂 看了都看不懂 雨里雾里的感觉 也有不少同学刚接触Android逆向或者说也学习了一段时间的逆向了 但是还是不知道自己学的啥 感到很迷茫 然后一些同学就找到了我 想跟我学习Android逆向  让我教他们一些逆向相关的知识 当然其中也有我的一个好兄弟-旭 旭就是这样一个即将面临毕业 对于未来很迷茫 想通过学习Android逆向知识找到未来方向的一个人 但是他之前从来没有接触过逆向 完完全全小白一个 现在他的目的只有一个 从现在开始跟我学习Android逆向 学习三到四个月 也就是到明年二月份之前找到一份Android逆向相关的工作 由于他现在在大学里面 我没法通过面对面方式的去教他逆向 所以就有了《教我兄弟学Android逆向》系列教程的出现 从今天开始我会通过写教程的方式手把手的教他学习逆向 教程也会放到吾爱上面2 想学习逆向必须要懂得正向编程的相关知识  于是第一篇教程就出现了《教我兄弟学Android逆向01 编写第一个Android程序》 
当然题外话不多说 下面开始今天的课程:
1 在自己电脑上下载Android Studio程序 下载地址:http://www.android-studio.org/index.php/download/hisversion 这里我用的是2.2.3版本 安装过程自己百度
2 安装完成后打开程序按照以下截图顺序 填写和选择对应的内容 一路Next最后点Finsh 建立完成第一个Android项目(详细的不介绍 不懂的百度"AS编写第一个Android项

3 进入到主程序 这里选择Project 然后点击MyApplication\app\src\main\res\layout 目录下的activity_main.xml

4.把拖拉框上面的Textview,Plain Test ,Button控件拖拉到屏幕上来 通过更改右侧对应的ID和text内容控制控件的属性 完成如图所示 
这里拖拉了两个Textview,两个Plain Test和一个Button控件 

5.点开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();//弹框
}
}

6.点击Build 点击Build Apk 生成第一个Android程序

7 点击Build Apk 完成后右上角会出现 Show in Explorer 点击它 然后打开命令行 输入命令adb install 把app-debug.apk拉到命令行中 完成后点回车 我们编译出的apk程序就安装到手机上了

手机运行图

二 . 总结:本篇文章通过手把手的方式带大家走近Android的世界  目的是为了以后的反编译做准备 想学Android逆向必须要懂的正向编程 那么这篇文章也是一个抛砖引玉的过程 过程讲的可能不这么的详细 有不懂的地方大家自行百度 尝试着自己去编写一些android的小程序 那么本节课也给大家留了一个作业:用AS编写一个包含姓名 年龄 生日 邮箱 兴趣爱好的用户注册页面 要求:点击注册按钮会把注册的信息显示在另一个页面上 那么下节课我将教大家怎么去破解我们所编写的这个小程序

下面的附件是本节课的Demo
链接:https://pan.baidu.com/s/1o9FaUYQ 密码:xv14

《教我兄弟学Android逆向01 编写第一个Android程序》相关推荐

  1. ComeFuture英伽学院——2020年 全国大学生英语竞赛【C类初赛真题解析】(持续更新)

    视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...

  2. ComeFuture英伽学院——2019年 全国大学生英语竞赛【C类初赛真题解析】大小作文——详细解析

    视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...

  3. 信息学奥赛真题解析(玩具谜题)

    玩具谜题(2016年信息学奥赛提高组真题) 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业.有一天, 这些玩具小人把小南的眼镜藏了起来.小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的 ...

  4. 信息学奥赛之初赛 第1轮 讲解(01-08课)

    信息学奥赛之初赛讲解 01 计算机概述 系统基本结构 信息学奥赛之初赛讲解 01 计算机概述 系统基本结构_哔哩哔哩_bilibili 信息学奥赛之初赛讲解 02 软件系统 计算机语言 进制转换 信息 ...

  5. 信息学奥赛一本通习题答案(五)

    最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...

  6. 信息学奥赛一本通习题答案(三)

    最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...

  7. 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题

    第1章   快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章  素数 第 3 章  约数 第 4 章  同余问题 第 5 章  矩阵乘法 第 6 章 ...

  8. 信息学奥赛一本通题目代码(非题库)

    为了完善自己学c++,很多人都去读相关文献,就比如<信息学奥赛一本通>,可又对题目无从下手,从今天开始,我将把书上的题目一 一的解析下来,可以做参考,如果有错,可以告诉我,将在下次解析里重 ...

  9. 信息学奥赛一本通(C++版) 刷题 记录

    总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 刷题 记录 http://ybt.ssoier. ...

  10. 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离

    首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...

最新文章

  1. php的优势和背景,CSS_CSS 多图片融合背景定位的应用于优缺点分析,1. 关键字, 例如: background-positio - phpStudy...
  2. sqlliet 创建多表查询的视图_第4关 复杂查询
  3. 分析工作试用期收获_免费使用零编码技能探索数据分析
  4. VirtualBox虚拟机与主机互相访问开启
  5. Docker及K8S使用碎碎记
  6. K-摇臂赌博机算法与实现
  7. 语录:101条伟大的计算机编程名言
  8. Android系统的若干关键词大汇总
  9. 遗传算法之:地图着色
  10. 计算机专业毕业设计资料免费下载
  11. 毕业设计-智能自选综合商城设计(毕业设计源码+系统+文档+部署)
  12. java23种设计模式(十六) -- 中介者模式(行为设计模式)
  13. 计算机视觉中的论文常见单词总结
  14. pycharm 学生资格过期,提示No suitable licenses associated with account解决方案
  15. std::string一个极其隐晦得问题
  16. 解决office2007打开很慢问题
  17. 日常一记(3)--禁止excel自动运行宏
  18. UV滚动+自定义光线高光+LightMap阴影贴图+法线贴图效果shader
  19. python 计算器 eval ctf_python 的eval函数
  20. Android菜鸡的苦逼求职路

热门文章

  1. ubuntu域名解析错误
  2. 广州数据交易所发布关于征集数据交易产品和服务的通知
  3. MySQL的 DDL和DML和DQL的基本语法
  4. 手机客户端与服务器通信协议,手机客户端与服务器通信协议
  5. 数学建模二:TOPSIS法(优劣解距离法) 附代码详解
  6. Android通过包名启动应用微信qq淘宝
  7. fota 差分包_FOTA升级
  8. Python UDP协议,冒充飞Q发送消息
  9. AntD Upload在React useState中使用问题
  10. ajax返回数据,在外部使用的方法