我的Android第二章:Android目录结构
嗨!各位,小编又和大家分享知识啦,在昨天的博客笔记中小编给大家讲解了如何去配置Android工具以及SDK中的一些配置,那在今天的学习小编会带给大家哪些Android知识呢?首先我们看一下今天的学习目录吧。
知识一:了解Android项目目录结构
知识二:Android的配置文件(清单文件)
知识三:了解DDMS的作用
知识四:adb执行命令和配置
知识五:简单案例(打电话)
Android项目的目录结构
- Activity:应用被打开时显示的界面
- src:项目代码
- R.java:项目中所有资源文件的资源id,在文件下可以通过id读取到layout中的文件信息,相当于程序的资源指针,添加任意资源都会自动生成一个相应的资源id,这文件不要手动将它删除
- Android.jar:Android的jar包,导入此包方可使用Android的api
- libs:导入第三方jar包
- assets:存放资源文件,比方说mp3、视频文件
- bin:存放编译打包后的文件
- res:存放资源文件,存放在此文件夹下的所有资源文件都会生成资源id
- drawable:存放图片资源
- layout:存放布局文件,把布局文件通过资源id指定给activity,界面就会显示出该布局文件定义的布局
- menu:定义菜单的样式
- Strings.xml:存放字符串资源,每个资源都会有一个资源id
- AndroidManifest.xml:是你整个Android项目的配置文件,定义的四大组件都要在该文件下进行注册,还有使用应用权限的添加声明
Android的配置文件(清单文件)
指定应用的包名
package="com.itheima.helloworld"
- data/data/com.itheima.myFirstAndroid(上面代码指定的包名)
- 应用生成的文件都会存放在此路径下
Android的四大组件在使用前全部需要在清单文件中配置
- 配置对整个应用生效
- 配置对该activity生效
DDMS
- Dalvik debug monitor service
- Dalvik调试监控服务:在该调试控制器中可以看到你对应的设备连接信息,还有你与哪些设备建立了连接操作
adb执行命令和配置
Android debug bridge:安卓调试桥:adb是Eclipse与服务器设备建立的连接桥梁,adb程序能够可以给任何一款Android设备建立连接,在adb程序还可以获取你当前连接设备的所有信息
在启用adb程序时我们可以方便快捷的使用如下命令
- adb start-server:启动adb进程
- adb kill-server:杀死adb进程
- adb devices:查看当前与开发环境连接的设备,此命令也可以启动adb进程
- adb install XXX.apk:往模拟器安装apk
- adb uninstall 包名:删除模拟器中的应用
- adb shell:进入linux命令行
- ps:查看运行进程
- ls:查看当前目录下的文件结构
- netstat -ano:查看占用端口的进程
哈哈,可能有些学者已经遇到问题了,就是在打开DOM窗口执行命令时候怎么执行不了呢?
adb配置
没关系,问题好解决,只需要配置一下adb的环境变量即可
首先打开 控制面板-->系统和安全-->系统 -->高级设置-->环境变量 -->Path变量
点击编辑:首先要找到你的sdk中存放adb.exe文件目录
获取该目录的路径
注:演示路径:F:\AndroidStudy\adt-bundle-windows-x86_64-20140702\sdk\platform-tools
然后将该路径复制到你的Path变量值中即可
简单案例(打电话)
功能:用户输入一个号码,点击拨打按钮,启动系统打电话的应用把号码拨打出去
1.新建一个Android工程
2.点击res 目录下的layout文件打开activity_main.xml 配置文件
3.生成几个控件,一:文本编辑控件、二:按钮控件
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical"
>
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="请输入你要拨打的电话号码" /> <EditText
android:id="@+id/edit_Test"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btn_cell"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="打电话"
/>
</LinearLayout>
注1:组件必须设置宽高,否则不能通过编译
android:layout_width="wrap_content"
android:layout_height="wrap_content"
为了方便我们控制布局内容我们将xml中的 <RelativeLayout ></RelativeLayout >改为了<LinearLayout></LinearLayout>
以下是控件生成的效果图
注2:如果相对应的控制是自己手动生成的,那么必须指定一个控件Id android:id="@+id/textView1" 否则运行出错
android:id="@+id/textView1"
4.编写我们的Java代码
点击src 下的MainActivity.java文件 ,编写如下代码
package com.example.myfirstandroid; import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取一个btn_cell按钮对象
Button btn = (Button)this.findViewById(R.id.btn_cell);
//给该按钮对象绑定一个按钮监听事件
btn.setOnClickListener(new MyListener()); } //编写一个监听内部类实现OnClickListener监听接口
class MyListener implements OnClickListener{ @Override
//重写该接口的单击事件方法
public void onClick(View v) {
//获取编辑文本对象
EditText editTest = (EditText)findViewById(R.id.edit_Test);
//获取该编辑文本的内容
String number = editTest.getText().toString() ; //获取一个系统内置的一个打电话的功能,告诉系统我们要执行打电话操作
//获取一个创建图对象
Intent intent = new Intent();
//将动作封装到创建图中
intent.setAction(Intent.ACTION_CALL);
//设置打给谁操作
intent.setData(Uri.parse("tel:" + number)); //以上执行完毕将该动作告诉系统
startActivity(intent);
} }
}
以上简单小程序代码已经写完了,赶紧运行试一下吧!
总结:今天小编的Android知识点已经分享完了,今天的学习内容不多只是大致理解一下Android程序基本结构,该案例中也运用了内部类的定义,如果不懂内部类操作的学者也可以参照一下小编编写的内部类学习笔记也许会帮助到你哦!地址:http://www.cnblogs.com/xiaotaojing/p/6069184.html 因为内部类的定义在Android的开发中非常常见也经常使用,如果有某些学者对该篇比较有不懂的或者有疑惑的地方可以给小编留言哦!谢谢
我的Android第二章:Android目录结构的更多相关文章
- Android群英传》读书笔记 (1) 第一章 Android体系与系统架构 + 第二章 Android开发工具新接触
第一章 Android体系与系统架构 1.Dalvik 和 ARTDalvik好比是一辆可折叠的自行车,平时是折叠的,只有骑的时候,才需要组装起来用.ART好比是一辆组装好了的自行车,装好就可以骑了. ...
- android源码的目录结构
android源码的目录结构 [以下网络摘抄] |-- Makefile ! l/ a5 n% S% @- `0 d# z# a$ P4 V3 o7 R|-- bionic ...
- 第二章 Android系统与嵌入式开发
第二章 Android系统与嵌入式开发 第二章首先要先了解Android和嵌入式Lnux系统有什么区别和联系,嵌入式Linux系统是在嵌入式设备中运行Linux系统:Android系统是在嵌入式设备中 ...
- 疯狂Android第二章:Adapter以及部分控件使用
第二章 重点:1.理解View以及各种布局的优缺点,适用场景. 2.熟练掌握adapter原理与用法. 3.熟悉其它控件的基本使用方法. /////////////////////////////// ...
- android学习——项目的目录结构
学习开发之前要了解工程目录下的文件夹下文件的用意,是以HelloWorld为例: 1.HelloWorld项目的目录结构 1.1.src文件夹 1.2.gen文件夹 1.3.Android 2.1文件 ...
- android项目的的目录结构
然后我们看一下Helloword的程序目录: 我们可以看到 大致有的文件: 1. MainHelloWorld.java文件 2. R.java文件 3. android.jar文件 4. RES.L ...
- Android项目实现Module目录结构分组
一.背景 项目需求的频繁迭代,新的产品功能在不断添加和延伸,随之带来的是,项目技术复杂度的提升. 近几年来,Android模块化.组件化相关技术得到极速发展,将项目整体进行分层,不同的层次之间依据实际 ...
- android学习——android项目的的目录结构
然后我们看一下Helloword的程序目录: 我们可以看到 大致有的文件: 1. MainHelloWorld.java文件 2. R.java文件 3. android.jar文件 4. RE ...
- Android MAVEN项目标准目录结构
1.标准目录结构: src -main –bin 脚本库 –java java源代码文件 –resources 资源库,会自动复制到classes目录里 –fi ...
随机推荐
- Android序列化之Serializable和Parcelable
PS:还有几天就开学了.先来一发. 学习内容: 1.序列化的目的 2.Android中序列化的两种方式 3.Parcelable与Serializable的性能比较 4.Android中如何使用Par ...
- Asp.Net 高性能ORM框架 SqlSugar.ORM 2.8
3.0最新API: http://www.cnblogs.com/sunkaixuan/p/5911334.html 1.前言/Preface SqlSugar从去年到现在已经一年了,版本从1.0升到 ...
- 改进网站设计的免费jQuery插件Top 7
Animate Scroll.js是一个简单的jQuery插件,它用来为滚动增加延迟效果.同时你还可以自定义滚动样式(30多种滚动效果)和滚动速度,还有一个可以操纵”滚动结束位置”的”padding” ...
- Hichart 资料收集
Hichart简单使用Highcharts选项配置详细说明文档(zz) http://www.helloweba.com/view-blog-156.html by 澳米科技 Highcharts提 ...
- 如何在Winform界面中设计图文并茂的界面
在Winform里面,很多控件元素都是标准的,如图标.按钮.工具栏等等,所以一般设计标准的Winform界面比较快捷,但是往往这样的界面相对单调一些,特别在界面控件比较少的情况下,我们往往需要加入一些 ...
- 背水一战 Windows 10 (5) - UI: 标题栏
[源码下载] 背水一战 Windows 10 (5) - UI: 标题栏 作者:webabcd 介绍背水一战 Windows 10 之 UI 标题栏 示例TitleBarDemo.xaml <P ...
- ListActivity的CheckBox点击事件
在一个ListActivity中,可能有很多行,如何在某个动作(如点击某个按钮)时判断哪些行的CheckBox被选中了,哪些行的CheckBox没有被选中,这是一个需要解决的问题. 首先,需要让Bas ...
- 动易CMS之标签管理
一.如何添加一个标签 1.系统设置->模板标签管理->添加标签 2.输入标签名称,根据需要选择数据设置: sql语句则选择[系统数据库SQL查询] 3.添加参数 4.系统可以根据设置的条件 ...
- Hadoop笔记系列 一 用Hadoop进行分布式数据处理(1)
学习资料参考地址: 1.http://blog.csdn.net/zhoudaxia/article/details/8801769 1.先说说什么是Hadoop? 个人理解:一个分布式文件存储系统+ ...
- Java程序内存的简单分析
这篇文章将简单的说明下当我们运行Java程序时JVM(Java虚拟机)的内存分配情况. 首先我们先来感观的认识下几个名词: 1.栈,一般来说,基本数据类型直接在栈中分配空间,局部变量(在方法代码段中定 ...