第03讲第一个Android项目
Android项目目录结构:
重要文件: |
src |
res |
AndroidManifest.xml |
包含内容: |
MainActivity.java (程序主视图) |
存放资源文件的配置文件,包括Layout(布局文件) |
核心配置文件 |
src——用于存放项目的源代码(.java);
gen——用于存放系统自动生成的类。该文件夹下面有个R.java文件,R.java是在建立项目时自动生成的,这个文件是只读模式的,不能更改。R.java文件中定义了一个类——R类。R类中包含很多静态类,且静态类的名字都与res中的一个名字对应,即R类定义该项目所有资源的索引。通过R.java我们可以很快地查找我们需要的资源
res——存放资源文件的配置文件;向此目录添加资源时,会被R.java自动记录。新建的项目,res目录下会有三个子目录:drawabel、layout、values。
drawabel-?dpi:包含一些你的应用程序可以用的图标文件(*.png、*.jpg)
layout:界面布局文件(main.xml),与WEB应用中的HTML类同
values:软件上所需要显示的各种文字。可以存放多个*.xml文件,还可以存放不同类型的数据。比如arrays.xml、colors.xml、dimens.xml、styles.xml
AndroidManifest.xml——项目的总配置文件,记录应用中所使用的各种组件。其地位类似于web中的web.xml。此文件列出了应用程序所提供的功能
4 . Manifest.xml 介绍
4.1、package="com.android.packageinstaller"
应用程序的安装包名,在/data/data、DDMS中看到的进程的名称都是这个属性的值,R文件就生成在这个包下
4.2、<original-packageandroid:name="com.android.packageinstaller" />
一般用于指定源码的目录,不对R文件的生成构成影响,这个值如果与<manifest>中的Package的属性值一致,则在<alication>注册的activity、service、provider、receiver等内容必须使用全包名,而不能使用.ClassName的方式进行引用
4.3、权限
<uses-permission android:name="android.permission.INSTALL_PACKAGES" />
允许程序安装应用
<uses-permissionandroid:name="android.permission.DELETE_PACKAGES" />
允许程序删除应用
<uses-permissionandroid:name="android.permission.CLEAR_APP_CACHE" />
允许应用清除应用缓存
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE" />
允许应用访问电话状态
<uses-permissionandroid:name="android.permission.CLEAR_APP_USER_DATA" />
允许应用清除应用的用户数据
更多应用权限相关内容参考:
附表1,参考资料:http://www.cnblogs.com/classic/archive/2011/06/20/2085055.html
4.4、<applicationandroid:allowBackup="false">
是否允许备份应用的数据,默认是true,当备份数据的时候,它的数据会被备份下来。如果设为false,那么绝对不会备份应用的数据,即使是备份整个系统。
4.5、<activityandroid:excludeFromRecents="true">
任务是否在发起这个活动应该被排除在最近使用的应用程序的列表("最近的应用程序")。那是,当这个活动是根活动的一个新任务,这个属性决定了任务不应该出现在列表中最近的应用程序。设置"true"如果这个任务应该被排除在名单,设置"false"如果它应该被包括。默认值为"false"。
创建第一个Android项目
1)选择File -> New->Android Application Project
2)输入项目所需信息
Application Name (应用的名称),其他项会自动补齐。
比如:Project Name (在Eclipse中该项目的名称),Package Name (存放Java类的包名称,其实质是存放的文件夹路径,.号为文件分隔符。我们编写的Java文件都会放在项目的src目录下,如com.tencent.helloworld表示类放在src/com/tencent/helloworld文件夹中)
3)一路Next直到Finish,则我们的工程创建完毕。
4) 启动模拟器,点击三角型 run按钮,则程序开始运行。
(或者选中项目->单击鼠标右键,选择“RunAs”->单击“Android Application”,)
小提示:启动模拟器会比较慢,所以不要关闭掉模拟器。
附加:
a. 在界面中添加一个button:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
android:onClick="test" />
b.编写程序:
public void test(View view){
// 第一个参数:当前的上下文环境。可用getApplicationContext()或this
// 第二个参数:要显示的字符串。也可是R.string中字符串ID
// 第三个参数:显示的时间长短。Toast默认的有两个LENGTH_LONG(长)和LENGTH_SHORT(短),也可以使用毫秒如2000ms
/* Toasttoast=Toast.makeText(getApplicationContext(), "默认的Toast",Toast.LENGTH_SHORT);
//显示toast信息
toast.show();
*/
Toast.makeText(MainActivity.this,"点击Button",Toast.LENGTH_SHORT).show();
}
第03讲- 第一个Android项目的更多相关文章
-
第一个Android项目——计算器
第一个Android项目——计算器 效果 开始学Android一两个星期了,学习了一下基本的Activity.简单控件及几个简单布局,打算找个东西来练练手,于是就选择发计算器.关于计算器中用到的四则运 ...
-
如何快速高效地完成一个Android项目?
本文的内容有别于之前文章中纯技术的探讨,会从业务逻辑.技术.团队和方法论的角度探讨如何快速高效地完成一个Android项目.当然,快速高效是有前提的,第一,本文依然是从研发的角度来谈如何把控项目的,而 ...
-
用Kotlin创建第一个Android项目(KAD 01)
原文标题:Create your first Android project using Kotlin (KAD 01) 作者:Antonio Leiva 时间:Nov 21, 2016 原文链接:h ...
-
3.创建第一个android项目
安卓开发学习笔记 1.安卓开发之环境搭建 2.SDK目录结构和adb工具及命令介绍 3.创建第一个android项目 1.打开Eclipse,选择File——>new——>others.. ...
-
Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
一.搭建Android开发环境 准备工作:下载Eclipse.JDK.Android SDK.ADT插件 下载地址:Eclipse:http://www.eclipse.org/downloads/ ...
-
【Android Developers Training】 1. 创建一个Android项目工程
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
-
【Android开发】创建你的第一个Android项目
原文:http://android.eoe.cn/topic/summary 本文中你将了解到: 1. 使用Eclipse创建项目 2. 使用命令行创建项目 你还应该阅读: 1. 安装SDK(官网页面 ...
-
Creating an Android Project(创建一个android项目)
一个android项目包含了你的应用程序中的所有源代码文件,我们可以通过android sdk tools轻松地创建一个拥有默认文件跟文件夹的android项目. 这部分课程我们将展示两种创建andr ...
-
[Android开发教程]Android官网developer training中文版教程 - 1.1.1 创建一个Android项目
本系列持续更新中.转载请注明来源. 前言:近期打算系统学习一下Android开发,发现Android官网上的developer training也是个非常好的学习资料,于是想到一边学习一边写一个中文版 ...
随机推荐
-
LMAX Disruptor—多生产者多消费者中,消息复制分发的高性能实现
解决的问题 当我们有多个消息的生产者线程,一个消费者线程时,他们之间如何进行高并发.线程安全的协调? 很简单,用一个队列. 当我们有多个消息的生产者线程,多个消费者线程,并且每一条消息需要被所有的消费 ...
-
SqlHelper.cs
public static class SqlHelper { public static object FromDbValue(object value) { if (value == DBNull ...
-
iOS 查找文件、遍历文件系统
NSFileManager *manager = [NSFileManager defaultManager]; NSString *home = [@"~" stringByEx ...
-
C#语言实现ArcGIS数据源重置之Set Data Source功能
1.须要:依据选择的Mxd路径和目标数据源路径进行重置数据源.此处以(.Mdb为例): 主要利用到的接口: (1)IMapDocument (2)IMapControl2 (3)IWor ...
-
iOS调用另一个程序
在 iOS 里,程序之间都是相互隔离,目前并没有一个有效的方式来做程序间通信,幸好 iOS 程序可以很方便的注册自己的 URL Scheme,这样就可以通过打开特定 URL 的方式来传递参数给另外一个 ...
-
微信小程序 引用其他js里的方法
微信小程序中,在微信官方开发文档我们可以知道 小程序的目录结构 . 一个小程序页面由四个文件组成,一个小程序页面的四个文件具有相同路径与文件名,由此我们可知一个小程序页面对应着一个跟页面同名的js文件 ...
-
Centos7 防火墙 firewalld 实用操作
一.前言 Centos7以上的发行版都试自带了firewalld防火墙的,firewalld去带了iptables防火墙.其原因是iptables的防火墙策略是交由内核层面的netfilter网络过滤 ...
-
第一章 mysql的体系结构与存储引擎
数据库从逻辑上可以分为两部分,一部分负责存储即文件系统,这部分有个更时髦的名字叫存储引擎,存储引擎负责如何把数据以及索引相关的内容以合适的形式组织并存储到磁盘上.另一部分为server部分,负责和用户 ...
-
HTML&;javaSkcript&;CSS&;jQuery&;ajax(11)
1.localStorage 没有 时间的限制数据存储, sessionStorage 针对一个session的存储,首先检查浏览器是否支持对这两个的存储, ifI(type(Storage)!==& ...
-
const 内联 枚举 宏
const 常量 程序运行时在常量表中,系统为它分配内存,在堆栈分配了空间:const常量有数据类型:语句末有分号:有类型检查:可以限制范围 //将所有不希望改变的变量加const修饰 const ...