Android 工程中各种文件的介绍

安卓APP(2)——安卓的工程目录文件夹介绍和安卓APP启动过程 阅读详情



Android 工程中各种文件的介绍

请尊重别人的成果。

转载请表明:http://blog.youkuaiyun.com/wangjia55/article/details/8701319


我们在android的开发中,有时会碰到各种各样的不常见文件,如:Android.mk, pom.xml ,project.properties.  , build.xml ,   .so 文件等,现在一一为大家介绍。

一:Android.mk 

      Android.mk 内部定义了一个或者多个源代码的模块,该文件的产生是和NDK相关的,NDK 是Android提供的一种工具,可以为编译mk文件内部的源代码提供依赖支持。

    此外,Android.mk 文件是属于GNU 文件的一部分,GNU是用来编译源码的,如gcc命令等。

   文件具体内容就不介绍,网上有很多详细介绍。


二: Pom.xml

   1.  pom是一种项目对象模型,。通过xml表示maven项目,使用pom.xml来实现,描述了项目的配置信息,包括项目的url,依赖性和规则等。

   2.  基本内容:

    POM包括了所有的项目信息

    groupId:项目或者组织的唯一标志,并且配置时生成路径也是由此生成,如org.myproject.mojo生成的相对路径为:/org/myproject/mojo

    artifactId:项目的通用名称

    version:项目的版本

    packaging:打包机制,如pom,jar,maven-plugin,ejb,war,ear,rar,par

   name:用户描述项目的名称,无关紧要的东西,可选

   url:应该是只是写明开发团队的网站,无关紧要,可选

   其中groupId,artifactId,version,packaging这四项组成了项目的唯一坐标。一般情况下,前面三项就可以组成项目的唯一坐标了。


三 : .SO文件

     是linux下的动态链接库文件,相当于wendows下的.dll文件。

     ANdroid开发中为了利用一些C/C++写的代码可以用NDK工具把代码编译称SO文件,然后导入到Android的项目中。方法/lib/armeabmi里。

    至于什么是动态链接库文件可以参考:http://www.360doc.com/content/11/1203/09/510771_169315220.shtml


四:build.xml 文件

     是Ant项目管理工具的构建文件,Ant对GNU make中的缺陷设计的更为完善。

    Ant运行xml格式的文件,而不是shell命令。它又一个project组成,而一个project可以分为很多target,target又可分为很多task,每个task通过

一个实现特定接口的java类完成。


五:default.properties

    记录项目中需要的环境信息和版本号。


六:project.properties

   由Android工具自动生成,包括版本号和其他依赖文件,为Ant build所使用。

转载请表明:http://blog.youkuaiyun.com/wangjia55/article/details/8701319

安卓的pom项目 立即下载

相关推荐

Android studio 配置gradle 2.2.3 插件所需pom、jar文件

Android 开发配置studio gradle 插件文件:pom、jar; 该资源包含gradle-2.2.3的插件文件;

Androidstudio文件gradle无法获取‘.pom’文件

Could not GET ‘https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.1.3/gradle-3.1.3.pom ‘. Received status code 400 from server: Bad Request修改文件 将原来的:修改成:

u014388322的专栏 1873

在VM虚拟机的MobaXterm下安装JDK17

本文介绍了在Linux系统下安装配置JDK17的完整步骤:1)从Oracle或OpenJDK官网下载Linux版JDK17压缩包;2)上传至/usr/local目录;3)解压安装包;4)通过编辑/etc/profile文件配置环境变量,添加JAVA_HOME和PATH路径;5)使用source命令使配置生效;6)通过javac -version验证安装是否成功。整个过程涵盖了从下载到环境配置的完整流程,确保Java开发环境正确设置。

qq_2937655951的博客 441

android pom.xml在哪,如何拿Maven 构建 一个 Android 项目的pom配置

一个eclipse 普通的Android 项目,转成 maven项目只需要以下几步:1.根目录下增加一个pom.xml2.可以通过打包配置命令进行打包:mvn clean package -U​3.修改pom.xml 内容4.遇到Cannot find required methodjava.lang.NoSuchMethodException:com.android.sdklib.build.A...

weixin_34982726的博客 2883

【processing】创意编程

首先接到这个作业的时候,我是很崩溃的,我是真的不会画画QAQ,还画自己,这也太难了,于是我决定!还是祸害我爱豆吧!于是我从微博太太那里找了个图临摹 下面是太太的图 先给太太道歉!都是为了作业! 然后我画出来是这样子的 还可以!!!没有特别丑!(虽然也不是特别像吧) 但是画这个真是画死我了,下面贴上代码吧,没啥特殊的就是各种贝塞尔曲线各种圆各种线 //face stroke(70,27,11...

qq_25700571的博客 1267

绕过卡巴斯基通过RPC控制lsass注入DLL

参考国外的XPN以及3gstudent大佬的文章: https://blog.youkuaiyun.com/xiangshen1990/article/details/104872566 https://gist.github.com/xpn/93f2b75bf086baf2c388b2ddd50fb5d0 原理:正常的ssp扩展(dll)可以加载到lsass进程中去,比如kerberos验证都是通...

2ed 3524

android aar pom文件

Android AAR与POM文件生成指南 作为一名经验丰富的开发者,我将指导你如何生成Android AAR文件以及相应的POM文件。AAR文件是Android库项目的打包格式,而POM文件则是Maven项目描述文件,它们共同为Android库的分发和依赖管理提供了便利。 流程概览 以下是生成AAR和POM文件的步骤概览...

weixin_30686891的博客 521

【每天一个知识点】多视图子空间聚类(Multi-view Subspace Clustering)

本文深入解析了多视图子空间聚类技术,这是一种处理多源异构数据的先进方法。它通过融合多个数据视图(如文本、图像、网络结构)的共识与互补信息,学习统一的潜在子空间表示,从而获得比单一视图更鲁棒、准确的聚类结果。文章详细阐述了其核心思想、主流技术流派(如图融合、共同潜在子空间、张量及深度学习方法),并提供了Python实战代码与调优经验,适用于跨模态检索、生物信息学等多领域复杂数据分析。

weixin_29065015的博客 459

完美解决android studio需要xxxxx.pom文件的问题

forhaodream的博客 1万+

实验记录 | 如何拆分scATAC-seq数据成为单个细胞?(1、解决barcode问题)

在师兄的帮助下,我得到了师兄筛选过的细胞的barcode的数据,那么接下来我想根据这些barcode,将来源于同一个barcode的细胞的reads提取出来,这个还是一个蛮有技术含量的事情的,因为上次我有使用过perl的脚本进行提取,最后的实验结果很糟糕,故而这件事情一直搁置到现在,没有继续去做(我的脚本的编写能力还是有待于加强,可能是刚刚喝了奶茶,和老妈弟弟聊了好多闲话,很开心,觉得在某种程度上休息够了,对于工作也是一种非常快乐和积极的状态了)。 0。前期失败尝试回顾 ...

weixin_40640700的博客 1887

数字电视中的AD(Audio Description)音频描述技术详解

AD(Audio Description)音频描述是一种辅助技术,旨在帮助视障人士更好地理解视觉内容。通过在节目或视频的自然停顿处插入额外的语音叙述来解释屏幕上的视觉信息,如人物动作、场景变化、文字说明等,从而让视力受损的人士也能获得完整的观影体验。AD服务不仅限于电视广播,也广泛应用于电影、剧院表演、在线视频平台等领域。PID:用于标识和区分不同的音频流。PMT表:提供每个音频流的详细信息,包括PID、编解码器类型和语言代码。时间戳:PTS和DTS用于同步音频与视频内容。解复用。

以实战经验介绍行业知识 739

安卓APP——创建工程及工程文件介绍

目录一、创建安卓工程二、工程文件介绍 一、创建安卓工程 二、工程文件介绍 src:存放java代码,包,文件 gen:存放自动生成的文件,R.java,程序页面,按键,文本等空间ID Android 4.4:安卓开发的库 asserts:存放资源,配置文件,图片 bin:编译后生成的一些文件,包括apk libs:依赖库 res: drawable:存放app程序要的图片 layout:存放布局文件的文件夹,一个安卓页面对应一个布局 values:存放一些参数,或者自定义控件文件 Android

小伟的博客 584

090、Sensor上电时序与帧同步的驱动级实现——以索尼IMX766为例的AVDD/DVDD/IOVDD时序调优

摘要: 本文以索尼IMX766传感器为例,深入探讨了传感器上电时序与帧同步的驱动级实现问题。通过分析某车载项目量产中的高温黑屏故障,揭示了AVDD/DVDD/IOVDD时序偏差导致传感器内部状态机异常的根源。文章详细解读了IMX766三路电源的时序约束(如AVDD与DVDD需在1ms内同步至90%),并提供了驱动代码级实现方案,包括电源使能顺序、延时控制及帧同步配置。针对多摄同步场景,强调了曝光时间寄存器写入一致性的重要性。最后结合产线问题定位经验,提出通过示波器抓取电源波形验证时序合规性的方法。全文聚焦硬

zzfmlxs的博客 258

android的文件名的作用,eclipse下建立安卓(android)工程 文件和目录名介绍及作用

在Eclipse中新建立android工程时,左侧会出来一堆目录和文件等,以下是对应名称和作用介绍:Src:源代码Gen:资源编号录,各个资源的键值对目录R.java资源文件,这是一个静态类,不能人工修改,当在增加一个activity文件或者一个String,则生成相应的内存对应的资源键值对。Res:这个是图片,国际化文件的存储文件夹资源文件夹drawable-hdpi,这个是高分辨率图片的文...

weixin_34547167的博客 310

GStreamer Plugin之Gst-nvdewarper

支持三种投影类型 NVDS_META_SURFACE_FISH_PUSHBROOM, NVDS_META_SURFACE_FISH_VERTCYL 和NVDS_META_SURFACE_PERSPECTIVE_PERSPECTIVE。关于每个平面的NvDewarperSurfaceMeta参数(projection_type, surface_index, and source_id)以及内存中有效的矫正平面(num_filled_surfaces)包含RGBA格式的一帧的缓存。矫正后的RGBA格式。

pvmsmfchcs的博客 366

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

安卓的工程目录文件夹简单介绍

安卓工程结构介绍

m0_58985552的博客 3463

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

介绍Android应用工程文件组成

1,创建android工程.  File-->New-->others-->Android project.  选择版本,填写应用名,包名,主Activity名.finish.2,工程结构如下:由上至下.  a.src既源文件目录.  b.gen目录.包含R.java文件.它由Eclipse自动生成和修改,不需要我们去维护.下面的res文件夹中发生的任意变化,R.java都会重新编译,一直保持同步

xiaoxin888888的专栏 1516

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

android:新建工程文件介绍

4:gradle是我们的构建器,在他的下面还有一个wrapper,warpper下面有一个gradle—wapper.properties的版本。Structure:就是你选择哪个页面就会显示那个页面的结构,就比如说我选择的是MainActivity他就会显示这个页面所使用的方法。1:是通过build-makeProject自动生成的,代码压缩的时候可以选择把这个文件删除后进行压缩。6:项目全局的构建脚本,在公司接收本人的项目的时候这个东西是不用动的。5:是在版本控制的时候把指定文件排除在版本控制之外。

Rssqzqyp的博客 643

安卓的工程文件介绍

在Eclipse+ADT中创建HelloWorld非常简单,直接按照导航下一步就可以了。本文重点不在如何创建,而在理解HelloWorld项目的文件。 HelloWorld的目录结构有: src:存放应用程序的逻辑代码,这里面的代码是人工写的 gen:存放资源代码,这里面的代码是自动生成的 assets:存放mp3等视频资源 bin:生成的可执行的二进制文件目

网络改变中国 771

安卓各种资源介绍及使用方法以及工程各文件夹的介绍

新建一个项目工程后主要有四个文件夹或文件. 一.  src文件夹(源代码目录)。这个文件夹主要是放我们所建立的包下的各个应用程序的源文件,开发android大部分程序基本上与这个文件夹下和res目录下的xml打交道 二.            gen文件夹(自动生成目录)。这个目录下最关键的文件就是R.java。这个文件每个人都不应当手动的修改。当我们在xml描述文件 图像,字符串,界面组件,

大道至简——小石软件 1678

Android工程下的文件介绍

补充点Android 基础吧,懒得写了,直接copy 了一份。网上这些东西蛮多的。百度一下,全出来了。 一个 android 工程中,有各种类型的资源文件,大致可以分为以下几种: [b]1、颜色 #RGB #ARGB #RRGGBB #AARRGGBB [/b] 颜色资源应该位于 标签下 路径 res/values/colors.xml 名字可以随意 定义...

蜗牛/ 的博客 190

安卓工程目录文件夹介绍

Laucher->mainifirst->lauch标签的activity被加载->oncreat被调用->java关联xml布局页面->显示->等待用户触摸等操作。gen: 存放自动生成的文件,关心是R.java, 程序页面,按键,文本等空间的ID。Android:4.4: 存放安卓开发的一些库,供开发者调用。bin: 编译后会生成的一些文件,包括我们关心的apk。values: 存放一些参数,或者自定义控件的文件。src: 存放java代码的,有包,有文件。layout: 存放布局文件的文件夹。

lelebanaba的博客 238

Eclipse安卓的工程目录文件夹介绍

src: 存放java代码的,有包,有文件 gen: 存放自动生成的文件,关心是R.java, 程序页面,按键,文本等空间的ID Android:4.4: 存放安卓开发的一些库,供开发者调用 asserts: 存放一些资源,配置文件,图片 bin: 编译后会生成的一些文件,包括我们关心的apk lib: 依赖库 res:    drawable: 存放app程序要用到的一些图片    layout: 存放布局文件的文件夹       一般一个activity(安卓页面)对应一个布局    values:

one goto one 的博客 723

安卓各种资源介绍及使用方法及工程各文件夹的介绍

在搭建Android开发环境及简单地建立一个HelloWorld项目后,本篇将通过HelloWorld项目来介绍Android项目的目录结构。本文的主要主题如下: 1、HelloWorld项目的目录结构 1.1、src文件夹 1.2、gen文件夹 1.3、Android 2.1文件夹 1.4、assets 1.5、res文件夹 1.6、AndroidManifest.xm

dingwei8的专栏 852
上一篇: git命令之git fetch 用法 2
下一篇: C++后继有人——D语言
常用技术
博客等级 码龄17年 91粉丝 100原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值