android学习一(了解android)
声明:android学习文件中面的全部内容为都是整理来自第一行代码Android。在接下来的文章里我就不在进行反复的声明。
想看原版的能够买书看看。或者去作者的博客http://blog.csdn.net/guolin_blog?viewmode=contents,我整理的目的是为了以后自己方便的进行知识的复习有一个系统的知识。写的有点水,大神的就飘过吧。
1.android系统架构
1.linux内核层。android系统是基于linux2.6内核的
2.系统执行库层,这一层通过一些c/c++库来为android系统提供了基本的特性支持
3.应用框架层,这一层提供了构建应用程序时可能用到的各种api
4.应用层,全部安装在手机上的应用都是属于这一层
2.android的四大组件:Activity活动,Service服务,BroadcastReceive广播接收器,ContentProvider内容提供者。
3.创建一个helloworld的android应用程序
文件夹分析:
src:放置我们全部java代码的地方
gen:这个文件夹是自己主动生成的。主要有一个R.java文件,在你的项目中加入的不论什么资源都会在当中生成一个对应的资源id。这个文件永远不要手动去改动它。
assets:主要能够存放一些随程序打包的文件,在你的程序执行时。能够动态的读取这些文件的内容。
另外,假设你的程序中使用到了WebView载入本地网页的功能。全部网页相关的文件也都存放在这个文件夹下。
bin:它主要包括了一些在编译时自己主动产生的文件。
libs:假设你的项目中使用到第三方jar包。就须要把这些jar包都放在libs文件夹以下,放在这个文件夹以下的jar包都会自己主动加入到构建路径里去。
res:全部用到的图片,布局。字符串等资源都放在这个文件夹以下
AndroidMainfest.xml:这是android项目的配置文件,程序中定义的全部四大组件都须要在这个文件中注冊。另外还能够在这个文件中给应用程序加入权限的声明。也能够重写指定你创建时指定的程序最低兼容版本号和目标版本号。
project.properties:就是一行代码指定编译程序时所使用的SDK版本号。
4.使用Android的日志工具Log
Log.v()这种方法用于打印那些最琐碎的,意义最小的日志。
相应级别verbose。是android日志里面级别最低的一种
Log.d()打印一些调试信息,这些信息有助于调试程序和分析问题相应级别是debug
Log.i()用于打印应一些比較重要的数据,这些数据应该是你很想看到的,能够帮助你分析用户行为的那种,相应级别为info
Log.w()打印警告信息。提示程序在这个地方可能会有潜在的风险。最好去修复一下,这些出现警告的地方,相应级别为war
Log.e()用于打印程序中的错误信息,这一般代表你的程序出现了严重的问题,必须尽快的修复,相应级别为error
日志的详细在后面的文章中说明。
android学习一(了解android)的更多相关文章
- 【Android学习入门】Android studio基本设置
1.背景设置 依次选择File->Settings-->Appearance & Behaviour->Apprearance,然后勾选 show line number. ...
- 【Android学习】《Android开发视频教程》第一季笔记
视频地址: http://study.163.com/course/courseMain.htm?courseId=207001 课时5 Activity基础概念 1.Android开发技术结构 ...
- Android学习系列(40)--Android主题和样式之系统篇(下)
11)Widget样式(Widget Style) 特别说明,此处定义大量的系统内置控件的样式,对于重写原生控件的样式具有很大的参考价值. <!-- Widget styles --> & ...
- Android学习系列(39)--Android主题和样式之系统篇(上)
[基于最新的Android4.4的源码分析] 每家公司或者每个移动团队无不想开发出一套自己的UI框架,融入自己的设计和特性,这必然会去修改android的ui.所以,学习和理解android的UI设计 ...
- Android学习系列(38)--Android源码下载和编译
前面多篇文章介绍到如何下载和编译Android或者CM源码,不过一直都是放在<拓展系列>里.随着学习的深入,android源码是非常有参考和学习价值,强烈推荐大家都去下载,编译,学习,所以 ...
- Android学习笔记之Android Studio添加新的Activity
1.创建Android项目工程:AndroidTest 创建过程可参考网上诸多教程. 2.添加新的Activity,步骤如下 a. 在layout文件夹上右键,New-Activity-相应Activ ...
- 【转】Android学习系列(39)--Android主题和样式之系统篇(上)
[基于最新的Android4.4的源码分析] 每家公司或者每个移动团队无不想开发出一套自己的UI框架,融入自己的设计和特性,这必然会去修改android的ui.所以,学习和理解android的UI设计 ...
- android学习十三(android的通知使用)
通知(Notification)是android系统中比較有特色的一个功能,当某个应用程序希望向用户发出一些提示信息.而该应用程序又不在前台执行时,就能够借助通知来实现.发出一条通知后,手机最上方的状 ...
- Android学习第二天-android常用命令
上一篇文章中,我们重点讲解了adb的常用命令,下面我们一起来看看其它常用的命令 2 android 2.1 查看机器上所有已经安装的Android版本和AVD设备 2.1.1查看机器上已经安装的AVD ...
- Android学习笔记之 android:collapseColumns ,android:shrinkColumns 和stretchColumns
摘自:http://blog.csdn.net/sjf0115/article/details/7213565/ TableLayout是一个使用复杂的布局,最简单的用法就仅仅是拖拉控件做出个界面,但 ...
随机推荐
- MySQL 中去重 distinct 用法
在使用MySQL时,有时需要查询出某个字段不重复的记录,这时可以使用mysql提供的distinct这个关键字来过滤重复的记录,但是实际中我们往往用distinct来返回不重复字段的条数(count( ...
- TYPE=MyISAM 与 ENGINE=MyISAM 的区别(摘要版)
TYPE=MyISAM 和 ENGINE=MyISAM 都是设置数据库存储引擎的语句 (老版本的MySQL使用TYPE而不是ENGINE(例如,TYPE = MYISAM). MySQL 5.1为向下 ...
- laravel JWTAuth实现api接口鉴权(基础篇)
官网:https://jwt-auth.readthedocs.io 参考:https://learnku.com/articles/10885/full-use-of-jwt#99529f 1.to ...
- Java中文乱码处理
java编码转换过程 我们总是用一个java类文件和用户进行最直接的交互(输入.输出),这些交互内容包含的文字可能会包含中文.无论这些java类是与数据库交互,还是与前端页面交互,他们的生命周期总是这 ...
- opencv笔记
加载图像: OpenCV支持图像格式Windows位图(bmp),便携式图像格式(pbm,pgm,ppm)和Sun光栅(sr,ras). Mat image = imread( imageName, ...
- jquery.data.resource.js
/*! * jQeury Data Pkugin * version: 1.0.0-2016.03.03 * Requires jQuery v1.10.2 or later * Copyright ...
- ProtoBuf - Arena
1.概述 最近看 Protocal Buffer 的源码,初次见到这个库源自陈硕的 muduo ,便打算看一看,在此做一下记录.官网文档不能访问,只能凭借代码的自己理解,查看的源码版本为 3.6.0. ...
- C++ typedef用法小结 (转载)
声明:本文转自charley_yang,点击此处查看原文 第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // ...
- assert.ok()详解
assert.ok(value[, message]) 测试 value 是否为真值.它等同于 assert.equal(!!value, true, message). 如果 value 不是真值, ...
- 【面试题】LRU算法及编码实现LRU策略缓存
概念 LRU(least recently used)就是将最近不被访问的数据给淘汰掉,LRU基于一种假设:认为最近使用过的数据将来被使用的概率也大,最近没有被访问的数据将来被使用的概率比较低. 原理 ...