Android基础-系统架构分析,环境搭建,下载Android Studio,AndroidDevTools,Git使用教程,Github入门,界面设计介绍

系统架构分析
Android体系结构

安卓结构有四大层,五个部分,Android分四层为:
应用层(Applications),应用框架层(Application Framework),系统运行层(Libraries和android runtime)和Linux内核层。
那么我来讲讲应用层有什么?
就是一些应用软件,如首页,联系人,电话,浏览器等等;应用框架如何理解?
应用框架层是用Java写的,有事件管理器,windows管理器,内容提供,查看系统 ,消息管理器,安装包管理,电话管理,资源管理,地点管理等等;
Libraries(库文件)里面是什么?
有:界面管理,媒体框架,SQLite,Webkit,SQL,SSL等等,为函数库层,用c语言和c++写的,android runtime是?里面有核心库和dalvik虚拟机哦!接下来就是linux 层,这个层有:显示驱动,相机驱动,蓝牙驱动,声音驱动,wifi驱动,键盘驱动,这么多的驱动,很重要。
那么我们该如何理解呢?对于上方的描述,应用有点印象和理解。
对于安卓的体系结构理解:
Application(应用)这个很容易理解,就是应用软件,我们作为开发者就是在这个层进行的,那么对于Application Framework,我们可以了解为通知管理层,Libraries可以理解为我们需要的一些库就是由这个层提供,那么android runtime就是虚拟机,用过android studio就能大概了解。Linux内核,就是驱动,我们调用系统驱动来实现功能。
Application应用程序层:
我们一般说的app应用就是在这个层,也是在此层进行应用开发的,使用是java语言
Application Framework应用程序框架层:
我们编写的app,需要该层进行管理,有事件管理器,windows管理器,内容提供,查看系统 ,消息管理器,安装包管理,电话管理,资源管理,地点管理等等
Libraries类库+Android Runtime(Android运行时环境):
Android提供给我们一组C/C++库,有:界面管理,媒体框架,SQLite,Webkit,SQL,SSL等等,Android Runtime由核心库和dalvik虚拟机构成
Linux内核
涉及底层,如:显示驱动,相机驱动,蓝牙驱动,声音驱动,wifi驱动等
环境搭建
一般Android环境有:
- Eclipse+ADT+ SDK
- Android Studio + SDK
- IntelliJ IDEA + SDK
但,如今用统一用AndroidStudio + SDK
Android Studio3.0的下载及其安装详解加eclipse下载安装配置jdk9
JDK的安装与配置
- 下载
JDK JDK的安装- 环境变量的配置
首先点击接受,Accept....然后选择你相应的电脑配置,点击下载安装即可
接下来我拿之前写过的来讲述JDK的配置
JDK包安装完成后,需要配置环境变量。点击桌面上的“我的电脑”或者“此电脑”,选择“属性”,接着选择“高级”,点击其中的“环境变量”弹出“环境变量”对话框,其中包含“用户变量”和“系统变量”两部分。
设置系统“变量名”为“JAVA_HOME","变量值”为“C:\ProgramFiles\Java\jre1.8.0_112",即是JDK安装路径,你也可以将地址栏中的路径直接复制过来。
再次选择”系统变量"列表中找到其"Path"(双击)-->"编辑",弹出”编辑系统变量",点击新建:
然后,单击”系统变量"下面的“新建"按钮,创建名为”classpath“的环境变量,值为”.",英文的一点,代表当前路径。
验证是否配置成功
打开电脑cmd,win键+R键,输入cmd,分别依次打入javac和java,出现下图显示表示配置成功。
相关术语
- ADT:安卓开发工具
- SDK:软件开发工具包
下载Android Studio
首先登录Android studio 官网地址
https://developer.android.google.cn/studio/index.html
大致如图效果
点击你所需要的平台
接下来我提供中文社区Android studio下载地址:
http://tools.android-studio.org/index.php
我以windows64位例子下载教程:
点击
android-studio-ide-171.4408382-windows.exe
无 Android SDK 进行下载
然后进行点击你所下载的软件,进行安装:
接下来选择你所要下载的插件,这里的都打钩吧!点击Next,进入下个步骤
这里选择你要下载的安装的路径,自己定义才不会找不到哦!点击Next,下图点击Install,不要打钩,那个打钩的位置是不要创建快捷键,你自己决定要不要创建,Do not 表示不创建。
如果不出意外,一小段时间后你就会看到下面的界面,也就说明安装成功了。启动软件。点击Finish
打开Android studio后,进入相关配置界面
第二个表示没有下载过Android studio,第一个表示下载过,如果选择第一个表示导入你之前的配置,更新还是选择第二好,因为版本毕竟不一样。然后进入到多数人不懂的界面。
在开启时会弹出这个框:我们直接点击Cancel就好了,接下来看看启动界面
版本的更新改变了下载的形式,但大致都一样
看看截图,你们下载的时候也应该会是同样的效果
这里的 standard和Custom,选择Standard,3.0版本的可以是这样

出现这个界面就代表安装好了。
接下来讲讲几个要点:
我们遇见如下图时:
点击Cancel是为了不用设置代理端口,如何点击Setup Proxy的朋友,看看如下如:
SDK的环境变量配置:
添加Path变量:
Android应用程序目录结构
assets目录:在assets目录中存放的是工程中用到的相关文件资源,比如我们可能用到的音频文件,文本文件,这些文件都不进行编译的原生文件。bin目录:在bin目录下存放的是可执行的相关文件,这个目录为空时,代表项目没有进行执行,不为空时,就会在该目录下产生可执行文件。gen目录:在该目录下的文件只有读模式,不能进行修改。libs目录:在该目录下存放的是相关的导入包,文件以.jar结尾。res目录:在该目录下存放了这些文件,比如图片资源文件,布局资源文件,菜单文件等等。对于layout文件,主要.xml格式文件,界面效果文件。src目录:在该目录下存放的的相关的Java代码。proguard-project.txt文件:该文件时混淆代码的脚本配置文件。project.properties文件:该文件时项目的配置文件信息。

AndroidDevTools
收集Android开发所需的Android SDK、开发工具、Android教程、Android设计规范,免费的设计素材等。
网站地址:http://www.androiddevtools.cn/
Git使用教程
Git是一种分布式版本控制系统,版本控制系统,就是一个名词而已吧,Git 是为了方便人们而发明的,当我们每次写完代码时,提交到 Github 上时,我们会记录下提交说明,简述该代码写了什么内容,做了哪些更改,能够方便记录,在 Github 上回记录你代码的增删情况,就可以了解你每次做了什么,改过什么,很方便也对他人了解你的操作行为。
网站下载,安装Git:https://gitforwindows.org/

打开你下载好的 GIT,“Git Bash” 软件
$ git config --global user.name "your.name"
$ git config --global user.email "email@example.com"
重点内容
1.首先打开你的github点击新建项目
点击new repositories ,然后直接给项目命名就好了。
2.打开命令行,输入下方:
负责地址就是:https://github.com/…./Test.git
$ git clone https://github.com/….
$ cd test
3.前提下你得把你的项目复制放进test路径下
$ git add .
$ git commit -m “changes log”
$ git push origin master
// 辅助
git status 查看修改内容
git log 查看提交记录
git reset 取消添加
git checkout 撤销修改内容
// 版本回退
git rest --hard HEAD
git rest --hard HEAD^
git log
git reset --hard ads2323
// 后悔药
git reflog
git reset --hard ads2323
Github入门
GitHub 是一个网站,一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub— 来自百度百科。Git是一个版本控制系统,是设计用于跟踪文件随时间变化的状态的一款软件。
Github网站页面概念
GitHub 网页概念之前我写了一些,接下来继续介绍:
commit:提交到仓库。branch:每个独立的分支都是项目的一个版本。master branch:我们一开始在Github创建项目都会有一个分支,称为主分支。commit message:我们在上传Android项目时,会看到这个单词,表示的是需要提交信息,用于描述你这次的项目都做了什么,然后在网站可以一目了然看到你做的内容及其信息,能够方便他人了解等。marge:这个当你跟其他合作者合作项目时,提交代码会有显示是否合并,merge可以将一个分支上的内容合并到另一个分支上。pull request:将代码拉取到本地工作。
网页介绍效果
界面设计介绍

结语
本文主要讲解 Android基础-系统架构分析,环境搭建,下载Android Studio,AndroidDevTools,Git使用教程,Github入门,界面设计介绍
下面我将继续对
Java、Android中的其他知识 深入讲解 ,有兴趣可以继续关注小礼物走一走 or 点赞
Android基础-系统架构分析,环境搭建,下载Android Studio,AndroidDevTools,Git使用教程,Github入门,界面设计介绍的更多相关文章
- 从程序员到CTO的Java技术路线图 JAVA职业规划 JAVA职业发展路线图 系统后台框架图、前端工程师技能图 B2C电子商务基础系统架构解析
http://zz563143188.iteye.com/blog/1877266在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样 ...
- [零基础学IoT Pwn] 环境搭建
[零基础学IoT Pwn] 环境搭建 0x00 前言 这里指的零基础其实是我们在实战中遇到一些基础问题,再相应的去补充学习理论知识,这样起码不会枯燥. 本系列主要是利用网上已知的IoT设备(路由器)漏 ...
- 【Android开发】 第一课 环境搭建教程
Windows 开发环境部署: Android Studio 中文社区:http://www.android-studio.org/ 本教程将分为五个步骤来完成Android开发环境的部署. 第一步: ...
- Appium-001-测试开发环境搭建(Android - Win7)
随着移动端 App 测试自动化的兴起,为更好的控制产品质量,越来越多的中大型公司开始了移动端的自动化测试.Appium 自动化测试技术也是我很早之前就想学习的一门技术,却一直没有比较空余的时间来学习( ...
- 【课程分享】深入浅出嵌入式linux系统移植开发 (环境搭建、uboot的移植、嵌入式内核的配置与编译)
深入浅出嵌入式linux系统移植开发 (环境搭建.uboot的移植.嵌入式内核的配置与编译) 亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系 ...
- Android 的系统架构
Android 的系统架构 Android其本质就是在标准的Linux系统上增加了Java虚拟机Dalvik,并在Dalvik虚拟机上搭建了一个JAVA的application framework,所 ...
- Spark源码分析环境搭建
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3868718.html 本文主要分享一下如何构建Spark源码分析环境.以前主要使用eclipse来阅读源 ...
- Android的系统架构
转自Android的系统架构 从上图中可以看出,Android系统架构为四层结构,从上层到下层分别是应用程序层.应用程序框架层.系统运行库层以及Linux内核层,分别介绍如下: 1)应用程序层 ...
- Tomcat系统架构分析
Tomcat系统架构分析 关于这边blog呢,实际开发中并不会用到,但是我觉得还是很有必要认真的写一下.毕竟我们每天在本地撸码的时候使用的就是tomcat来做web服务器.一个常识就是说我们本地在to ...
随机推荐
- python中类与对象及其绑定方法的定义
面向对象编程 什么是面向对象? 面向过程:将需要解决的问题按步骤划分,一步一步完成每一个步骤,而且 步骤之间有联系. 优点:复杂问题可以分步完成 缺点:扩展性很差,维护性差.如果中间 ...
- TCP与UDP,可靠UDP如何实现
两种协议都是传输层协议,为应用层提供信息载体. TCP协议是基于连接的字节流的可靠协议,有三次握手,四次挥手,超时重传,流量控制(滑动窗口),拥塞控制和差错控制,也正因为有可靠性的保证和控制手段,所以 ...
- 最适合入门的Laravel中级教程(四)前端开发
Laravel 使用 npm 安装前端依赖: npm 是一个类似 composer 的工具: 用于管理前端的各种依赖包: 在使用之前需要先安装 node : Windows 下可以在官网下载安装: h ...
- mysql 按出现次数排序
SELECT * FROM table a LEFT JOIN (SELECT key,count(*) as c FROM table GROUP BY key ) b on a.key=b.k ...
- Tomcat9 在Windows中配置允许远程访问
环境:Windows Server 2019 Data Center+Tomcat 9 Tomcat在Windows中安装好了之后,默认只能从本机以http://localhost:8080的方式访 ...
- 582. Kill Process杀死所有子代
[抄题]: Given n processes, each process has a unique PID (process id) and its PPID (parent process id) ...
- [leetcode]25. Reverse Nodes in k-Group每k个节点反转一下
Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. k ...
- Android R文件介绍
R.java 文件中默认有attr.drawable.layout.string等色哥静态内部类,每个静态内部类分别对应着一种资源,如layout静态内部类对应着layout中的接界面文件,其中每个静 ...
- 原子性 CAS算法
一. i++ 的原子性问题 1.问题的引入: i++ 的实际操作分为三个步骤:读--改--写 实现线程,代码如下: public class AtomicDemo implements Runnabl ...
- MFC里面解析json文件格式
CString strTemp; //CString ->string; string stringMsg = (LPCSTR)(CStringA)strTemp; //string -> ...