一、手动创建android项目

  手动创建一个Android项目,命名为HelloWorld,命令如下:

android create project -n HelloWorld -t  -p E:/Android/workspace/Helloworld  -k me.gacl.helloworld -a Helloworld

  上面的命令中,-n指定项目的名称,-t指定android平台,-p指定项目存放路径,-k指定项目包名,-a指定Activity名称。

  使用命令 android list targets 可查看可选的android平台,如下图所示:

  

  由于我使用SDK Manager只下载了最新版本的Android5.0.1和Google Inc,因此"android list targets"命令查看到的可选的android平台就只有2个,可以看到,1对应的target是android-21,也就是Android 5.0.1。

  运行上面的命令可以在E:/Android/workspace/Helloworld目录下创建一个Android项目,如下图所示:

  

  生成的Android项目的目录结构如下图所示:

  

二、Android目录结构说明

  HelloWorld
    |----bin
    |----libs
    |----res
    |     |----drawable-ldpi
    |     |----drawable-mdpi
    |     |----drawable-hdpi
    |     |----drawable-xhdpi
    |     |----layout
    |   |     |----main.xml
    |     |----values
    |       |----strings.xml
    
    |----src
    |     |----me
    |           |----gacl
    |                  |----helloworld
    |                          |----Helloworld.java
    |----AndroidManifest.xml
    |----ant.properties
    |----build.xml
    |----local.properties
    |----proguard-project.txt
    |----project.properties

  下面介绍一下Android项目的主要目录和文件:

  【bin】目录:该目录用于存放生成的目标文件,例如Java的二进制文件、资源打包文件(.ap_后缀)、Dalvik虚拟机的可执行性文件(.dex后缀),打包好应用文件(.apk后缀)等。

  【libs】目录:该目录用于存放需要使用的第三方jar包文件

  【res】目录:该目录用于存放Android项目的各种资源文件,比如【layout】目录存放界面布局文件,例如main.xml,【values】目录下则存放各种XML格式的资源文件, 例如字符串资源文件:strings.xml;颜色资源文件:colors.xml; 尺寸资源文件:dimens.xml。 【drawable-ldpi】、【drawable-mdpi】、【drawable-hdpi】、【drawable-xhdpi】这4个子目录分别用于存放"低分辨率"、"中分辨率"、"高分辨率"、"超高分辨率"的4种图片文件。

  【src】目录:该目录用于存放java源文件

  【AndroidManifest.xml】文件是Android项目的系统清单文件,它用于控制Android应用的名称、图标、访问权限等整体属性。 除此之外Android应用的Activity、Service、ContentProvider、BroadcastRecevier这4大组件都需要在该文件中配置。

Android开发学习总结(五)——Android应用目录结构分析的更多相关文章

  1. Android开发学习总结(五)——Android应用目录结构分析(转)

    一.手动创建android项目 手动创建一个Android项目,命名为HelloWorld,命令如下: android create project -n HelloWorld -t 1 -p E:/ ...

  2. Android开发学习之路--Android Studio cmake编译ffmpeg

      最新的android studio2.2引入了cmake可以很好地实现ndk的编写.这里使用最新的方式,对于以前的android下的ndk编译什么的可以参考之前的文章:Android开发学习之路– ...

  3. Android开发学习之路--Android系统架构初探

    环境搭建好了,最简单的app也运行过了,那么app到底是怎么运行在手机上的,手机又到底怎么能运行这些应用,一堆的电子元器件最后可以运行这么美妙的界面,在此还是需要好好研究研究.这里从芯片及硬件模块-& ...

  4. Android开发学习之路--Android Studio项目目录结构简介

    既然已经搭建好环境了,那就对Android Studio中项目目录结构做个简单的了解了,这里以最简单的Hello工程为例子,新建好工程后看如下三个工程视图: 1.Android工程 manifests ...

  5. Android开发学习之路-Android Studio开发小技巧

    上一次发过了一个介绍Studio的,这里再发一个补充下. 我们都知道,Android Studio的功能是非常强大的,也是很智能的.如果有人告诉你学Android开发要用命令行,你可以告诉他Andro ...

  6. Android开发学习之路-Android中使用RxJava

    RxJava的核心内容很简单,就是进行异步操作.类似于Handler和AsyncTask的功能,但是在代码结构上不同. RxJava使用了观察者模式和建造者模式中的链式调用(类似于C#的LINQ). ...

  7. Android开发学习之路-Android N新特性-多窗口模式

    我们都知道,在最新的Android N系统中,加入了一个新的功能,就是多窗口模式.多窗口模式允许我们在屏幕上显示两个窗口,每个窗口显示的内容不同,也就是说,我们可以一遍看电视剧,一边聊微信. 这里我们 ...

  8. Android开发学习之路-Android Design Support Library使用(CoordinatorLayout的使用)

    效果图: 上面的这个图有两个效果是,一个是顶部的图片,在上滑之后会隐藏起来并且显示出一个ToolBar(ToolBar类似于ActionBar,但是只有ToolBar是兼容Material Desig ...

  9. Android开发学习笔记-关于Android的消息推送以及前后台切换

    下面是最简单的Android的消息推送的实现方法 package com.example.shownotic; import java.util.Random; import android.supp ...

随机推荐

  1. 使用timer控件控制进度条

    using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...

  2. VC++ list函数详解

    在使用之前,需要完成两件事: (1)  #include <list> (2)  using namespace std; 声名变量:   list<int>  intlist ...

  3. 博客的开端,找对象不再new

    今天是第一次用blog,小白开始完善了!! 希望大家多多照顾一下.

  4. 计算机病毒实践汇总二:bufferzone沙盘使用体验

    在尝试学习分析的过程中,判断结论不一定准确,只是一些我自己的思考和探索.敬请批评指正! 1. 安装bufferzone及其简单使用 (1)安装BufferZone BufferZone的msi安装文件 ...

  5. js基本常识了解

    http://www.cnblogs.com/Yue0327/p/5441773.html

  6. NXP开源自动驾驶计算平台Bluebox 打造现实无人汽车

    知名半导体制造商恩智浦NXP已经准备好了自家的自动驾驶计算开源平台Bluebox,将为汽车制造商提供现成的一体化自动 驾驶计算解决方案.专为自动驾驶设备的BlueBox中央计算引擎.不仅能够为无人驾驶 ...

  7. linux关闭防火墙

    查看防火墙状态: sudo service iptables status linux关闭防火墙命令: sudo service iptables stop linux启动防火墙命令: sudo se ...

  8. 解决 HttpClient 模拟 http 的get 请求后 ,出现 403 错误

    解决方法: URI uri = builder.build(); // 创建http GET请求 HttpGet httpGet = new HttpGet(uri); httpGet.setHead ...

  9. 柬埔寨手机上网资费套餐(3G/4G上网)

    柬埔寨三大运营商 Cellcard   官网套餐详情http://www.cellcard.com.kh/cellcard-internet Metfone  官网套餐详情http://www.met ...

  10. 多媒体技术基础之---Come on!来点儿音乐吧

    其实要说在Linux系统下播放音乐,确实是一件让人非常抓狂的事情,抛开各种音频格式的商业授权不说,即使提供给你相应的解码库,能玩儿得转的人那又是少之又少.可能有些盆友说ubuntu这方面确实做得不错, ...