我的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 ...
随机推荐
- SpringMVC详细示例
一.SpringMVC基础入门,创建一个HelloWorld程序 0.框架结构 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于springmvc的配置 < ...
- 解决Fedora解压文件产生乱码的问题
最近有发现在使用Linux的时候,之前也遇到过在ubuntu下,最后ubuntu貌似在原生下优化了这个问题,现在换到了fedora上的时候问题又出现了,解压出来的文件中文乱码. 为了在linux下可以 ...
- 【原创】kafka controller源代码分析(一)
Kafka集群中的一个broker会被作为controller负责管理分区和副本的状态以及执行类似于重分配分区之类的管理任务.如果当前的controller失败了,会从剩下的broker中选出新的co ...
- Emit学习(3) - OpCodes - 循环和异常
本来准备直接进入Dapper的, 但是昨天初步看了一下, 内容不少, Dapper不愧是一款成熟的框架, 里面对各种情况的考虑, 很实用, 不过这也使得我短时间内看不完, 所以得等几天了. 那就先来看 ...
- 十年微软(Microsoft)MVP
十年微软(Microsoft)MVP,七月一日收到邮件,今早收到从美国微软寄过来的证书!
- 判断JS对象是否拥有某属性
两种方式,但稍有区别 1.in 运算符
- 在QTableWidget中添加QCheckBox并使其居中显示(转)
实现思路:把QCheckBox嵌入式到一个水平布局中 QWidget *widget; QHBoxLayout *hLayout; QCheckBox *ckb; ... ckb = ...
- 查看Eclipse版本
点击Help->About Eclipse,在弹出的对话框下部有很多logo. 鼠标在logo上停留,会有提示,找出提示为Eclipse.org的那个logo,即为Eclipse的logo,点击 ...
- sp_get_menu函数使用分析
function sp_get_menu($id="main",$effected_id="mainmenu",$filetpl="<span ...
- 通俗易懂地讲解TCP建立连接的三次握手和释放连接的四次挥手
TCP建立连接时,为什么要进行三次挥手? 每一次TCP连接都需要三个阶段:连接建立.数据传送和连接释放.三次握手就发生在连接建立阶段. 在谢希仁著<计算机网络>第四版中讲三次握手的目的是为 ...