【移动安全技术】_第一站
文章目录
- 课程概述
- 安装软件
- 体验app编程(主要内容)
- Android逻辑视图的目录列表
- 从零创建一个No Activity项目
- 相关概念
- Gradle
- 参考
课程概述
课程内容:安卓APP编程。安卓逆向。
考试题目出自作业内容。
安卓编程:6-8节课程。其余讲解逆向。
作业书写:要求使用markdown,转成PDF上传到钉钉群。
作业要求:日期-姓名-学号-题目-实验截图-关键代码
第一堂作业:创建按钮或textview,值为姓名学号日期。改图标为自拍。
完成作业√,GG。
安装软件
安装过程见【安装&配置】专栏:
Android Studio安装
markdown介绍和安装
体验app编程(主要内容)
Android逻辑视图的目录列表
manifests(清单文件)
每个安卓应用系统都一定有AndroidManifest.xml文件,为Android系统提供应用的基本信息,系统必须获得这些信息才能运行任意应用代码。
举例:程序的activity必须在Manifest文件中定义,定义第一个activity的代码如下:(可以理解为进入app后的首个页面)
java
MainActivity存放第一个activity的代码,使用setContentView()函数定义activity的页面布局layout。系统执行java文件,然后寻找布局文件,将布局控件可视化。
res资源
drawable 图像包含两个文件,
前景图ic_launcher_foreground、后景图ic_launcher_background。
layout 布局文件
mipmap 图标,包含ic_launcher和ic_launcher_round两个文件。
此处引用了drawable的两个文件作为图标。
ic_launcher指桌面图标,包含foregroud、backgroud两个参数。
ic_launcher_round:圆形图。
values 变量包含colors.xml、strings.xml、styles.xml,添加控件需要定义变量名和变量值,这时候需要修改strings.xml文件:
全图:
从零创建一个No Activity项目
默认情况
创建项目之后,查看文件列表,缺少两个文件:java目录没有MainActivity.java文件,res没有layout目录。
此时尝试运行模拟器,会报错“Error running ‘app’:Default Activity not found”:
开启模拟器
新建MyMainActivity.java和mylayout.xml文件:
编辑Mainfest.xml,添加:
尝试开启模拟器,开启成功:
添加一句话、一个按钮、app图标(重点)
打开values/strings.xml,添加:<string name=“hello”>xxxxx</string>。
打开AndroidManifest.xml修改label:android:label=“@string/hello”。启动后发现标题变了。
百度得知,在页面添加文本属于layout部分,其实到此为止AndroidManifests.xml文件和MyMainActivity.java文件已经无需修改。
想要添加控件,需要在layout中添加。
添加文本
在mylayout.xml中添加:(必须设置高度和宽度)
添加按钮
通过可视化设计Design拖拽Button,发现button代码:
启动模拟器,效果如图,按钮添加成功:
设置app图标
关于图标,mipmap只是调用drawable的两个图像文件。
把选择的logo直接拖拽到drawable目录下,
修改mipmap两个文件的foreground参数为logo文件名称,靠谱:
图标效果如图,GG:
相关概念
Gradle
维基解释:Gradle是一个基于Apache Ant 和 Apache Maven的项目自动化建构工具。
通俗理解:软件开发讲究代码复用,开发者通过继承、组合、函数模块等实现不同程度上的代码复用。but,软件开发还涉及工程的各种管理(依赖、打包、部署、发布、各种渠道的差异管理…),build、clean、签名、打包、发布等过程也需要描述和复用。
参考
《如何通俗地理解 Gradle?》,
文章地址https://www.zhihu.com/question/30432152
《Android Manifest文件详解》,
文章地址https://www.cnblogs.com/Oude/p/12508483.html
《android开发笔记:MainActivity.java与activity_main.xml》,
文章地址https://blog.csdn.net/chengde6896383/article/details/83052525
《android8.0桌面图标适配以及相应问题的解决》,
文章地址https://blog.csdn.net/ak47985/article/details/80505305
【移动安全技术】_第一站相关推荐
- 计算机信息安全技术_第一章概述
1.计算机威胁: 直接对硬件进行破坏 对存放在介质上的信息进行非法获取,篡改,破坏 对传输过程中的信息非法获取,篡改,破坏 2.信息安全指 CIA:confidentiality integrit ...
- 【恶意代码分析】_第一站
文章目录 概述 基本概念 有损压缩 加壳 壳的装载及其分类 压缩器和保护器 恶意程序在线分析网站 UPX实验 介绍UPX 使用UPX压缩文件 UPX加壳原理 使用工具查看和脱壳 Lord PE 工具P ...
- 【周易与中国文化】_第一站
文章目录 课程认知 课程(阅读材料) 自我消化和摸索(重点) 基本概念 "死记硬背" 反思 课程认知 课程报录比:50/280. 渊源学识:老师的博士论文是关于周易与北宋儒 ...
- 威胁情报分析_第一站
文章目录 常见技能要求 引言和概念 现实难题 动态积极防御 VS 静态被动防御 概念 常见情报标签 Botnet Nitol家族 C&C服务器 IDC服务器 Alman蠕虫病毒 Trojan特 ...
- 爬虫入门实战第一站——梨视频视频爬取
爬虫入门实战第一站--梨视频视频爬取 简介 博主最近重新开始了解爬虫,想以文字方式记录自己学习和操作的过程.本篇文章主要是使用爬虫爬取梨视频网站中的视频并下载到本地,同时将视频简介和视频网站保存在ex ...
- 创业第一站丨产品经理、海归转型成创业者有多难?
5月24日,阿尔法公社与PMCAFF共同主办的创业第一站如期举行,阿尔法公社创始合伙人蒋亚萌.搜狗输入法之父马占凯.诸葛io创始人孔淼.Qury创始人郑伟与几十位计划创业.已经创业的产品人一起就产品经 ...
- 2015生命之旅---第一站重庆
老邓的流水账又来了.... 这篇文章来源于我的2015年7月-九月的一系列出行,跟程序无关,我只想把我的经历告诉大家,让大家与我共勉.为什么会有这次旅行,为什么是生命之旅,这还得从去年说起,去年九月, ...
- 2019《去哪儿》春季校招第一站(含笔试题)
PS:点进来的小伙伴,我想先声明,标题中的去哪儿指的是517Na这家公司. 离职已经过去了4天,这几天算是过上了悠闲而轻松的日子.瞌睡也睡了(忘记了早餐存在的价值),篮球也打了(下午一个人在小区里打篮 ...
- c++语言编程,一个电灯两个开关控制,[理学]四川大学计算机学院精品课程_面向对象程序设计C++课件_游洪越_第一章绪论.ppt...
[理学]四川大学计算机学院精品课程_面向对象程序设计C课件_游洪越_第一章绪论 主讲教师: 游洪跃 个人主页: /~youhongyue 邮件地址: youhongyao@ 教材:<C++面向对 ...
最新文章
- Latex快速入门, Windows 安装使用编译技巧归纳
- Windows MObile中ListView控件的用法详解
- Sublime Text3—Code Snippets(自定义代码片段)
- 【剑指offer】_17正则表达式的匹配
- 新的编程语言研发契机思考
- 社会治理智慧平台、联动指挥、综合执法、数据汇集、数据研判、智慧政务、图表模板、大屏、可视化、智慧工厂、办公、能源、医疗、校园、自动化综合车间大屏、车间数据、人力资源、员工考核、医院、rp原型
- Tip:创建SCOM 2012 R2报表服务器时的报错
- mysql 异步同步_MySQL主从复制异步半同步实例
- 机器学习之初识SVM
- ROS World 2020所有视频发布
- ElasticJob - 任务执行过程解析
- python cad模块_Python cad包_程序模块 - PyPI - Python中文网
- coverity分析端软件环境搭建
- meson中自定义变量的使用
- Python经典书籍推荐
- Altium_Protel99SE圆线路板添加工艺边
- 由I2C data信号低电平不到0,再思考I2C及GPIO
- 《满族姓氏寻根大全·满族老姓全录》
- 2022前端知识整理:十、vue基础
- word中自动生成参考文献引用及自动更新文献编号