当前位置:文档之家› 安卓编译详解

安卓编译详解

安卓编译详解
安卓编译详解

安卓编译详解1.关于make

1.Make命令在执行的时候,默认会在当前目录找到Makefile文件,根据Makefile文件中的指令来对代码进行编译

2.Makefile文件中的指令可以是编译命令,例如gcc,也可以是其它命令,例如Linux系统中的shell命令cp、rm

3.make命令事实也是通过shell命令来完成任务的,但是它的神奇之处是可以帮我们处理好文件之间的依赖关系

1.Makefile文件最基础的功能就是描述文件之间的依赖关系以及怎么处理这些依赖关系

2.Make根据Makefile指令两个文件之间存在依赖关系,以及当被依赖文件发生变化时如何处理目标文件

4.Makefile可划分为Makefile片段(fragement),Makefile通过include指令来将片段组装在一个Makefile 2.build/envsetup.sh脚本文件

1.envsetup.sh会在vendor和device两个目录将厂商指定的envsetup.sh也source到当前shell,

通过vendor和device两个目录的envsetup.sh可获得厂商提供的产品配置信息

2.envsetup.sh还提供了以下几个重要的命令来帮助我们编译Android源码mm

1.lunch:用来初始化编译环境,例如设置环境变量和指定目标产品型号

1.设置TARGET_PRODUCT、TARGET_BUILD_VARIANT、TARGET_BUILD_TYPE和TARGET_BUILD_APPS等环境变量,

用来指定目标产品类型和编译类型

2.通过make命令执行build/core/config.mk脚本

1.build/core/config.mk会加载build/core/dumpvar.mk打印出当前的编译环境配置信息

2.build/core/config.mk脚本还会加载BoradConfig.mk和envsetup.mk配置目标产品型号相关信息

2.m:相当于是在执行make命令。对整个Android源码进行编译

3.mm

1.如果是在Android源码根目录下执行,那么就相当于是执行make命令对整个源码进行编译

2.如果是在子目录执行,则从当前目录往上寻找Android.mk文件,使用其对模块进行编译

4.mmm

1.后面可以跟多个目录,每个目录下都必须存在一个Android,mk文件

2.可使用冒号指定模块名称,如果没有指定,那么在Android.mk文件中描述的所有模块都会被

编译,如果需要同时指定多个模块,那么这些模块名称必须以逗号分隔语法:

mmm ... [:module-1,module-2,...,module-M]

3.命令会通过make命令来执行Android源码根目录下的Makefile文件,该Makefile文件又会将build/core/main.mk

加载进来。文件build/core/main.mk在加载的过程中,还会加载以下几个主要的文件:

1.build/core/config.mk:该文件加载lunch命令产生的mk文件,获取必要配置信息

2.build/core/definitions.mk:定义了在编译过程需要调用到的各种自定义函数

3.指定的Android.mk:指定的Android.mk环境是由mmm命令通过环境变量递给build/core/main.mk

4.build/core/Makefile:包含了用来制作system.img、ramdisk.img、boot.img和recovery.img等镜像文件的脚本3.Android编译环境初始化

1.对编译环境进行初始化,其中最主要就是指定编译的类型和目标设备的型号

1.Android的编译类型主要有eng、userdebug和user三种

2.Android支持的目标设备型号则是不确定的,由当前的源码配置决定

2.为支持特定目标设备,Android编译系统在初始化的过程中,需要在特定的目录中加载特定的配置文件

3.google给出的编译步骤

source build/envsetup.sh#加载命令lunch#选择平台编译选项make#执行编译

4.envsetup.sh其主要作用如下

1.加载了编译时使用到的函数命令

2.添加了两个编译选项:generic-eng和simulator,这两个选项是系统默认选项

3.查找vendor/<-厂商目录>/和vendor/<厂商目录>/build/目录下的vendorsetup.sh

1.如果存在的话,加载执行它,添加厂商自己定义产品的编译选项

2.vendorsetup.sh中可使用add_lunch_combo xxx-xxx添加厂商自己定义产品的编译选项

示例:

add_lunch_combo myProduct-eng

5.LOCAL_MODULE_TAGS:每个目标的Android.mk中有声明LOCAL_MODULE_TAGS指定当前的目标编译完了属于哪个分类

1.Android.mk和Linux里的makefile不一样,它是Android编译系统自己定义的一个makefile来方便编译

成c,c++的动态、静态库或可执行程序,或java库或android的程序4.make

1.执行make命令的结果就是去执行当前目录下的Makefile文件,所有的Makefile都通过build/core/main.mk这个文件组织

2.build/core/config.mk文件被main.mk包含,定义了以下环境变量

........

....

======================= Android Makefile 如何识别 TARGET_PRODUCT 变量

1.make使用参数showcommands可显示编译命令,否则看不到细节

2.Android Makefile 的引用关系

Makefile -> build/core/main.mk -> build/core/config.mk --> build/core/envsetup.mk -> build/core/product_config.mk 1.build/core/product.mk中定义的函数get-all-product-makefiles ,来遍历整个vendor 的子目录, 找到vendor下所有的 AndroidProducts.mk。不同子目录下的AndroidProducts.mk 中定义了不同的 PRODUCT_NAME, PRODUCT_DEVICE 等信息

2.build/core/product_config.mk 会调用resolve-short-product-name 将TARGET_PRODUCT匹配的AndroidProducts.mk 中定义的 PRODUCT_DEVICE 赋值给TARGET_DEVICE

3.build/core/config.mk 会include $(TARGET_DEVCIE)/BoardConfig.mk,配置文件BoardConfig.mk 决定了目标系统编 译属性,比如使用ALSA还是不是 GENERIC_AUDIO 等等,还有输出目录等

=======================

Android中m、mm、mmm、mma、mmma的区别

1.m:编译整个安卓系统

2.mm:编译当你前目录下的模块

3.mma:当前目录新增或删除文件后,可以用mma重新编译

4.mmm:编译指定路径下的模块,指定路径下需要有Android.mk的makefile文件

1.mmma:指定目录下新增或删除文件后,可用mmma重新编译

2.mmm编译过程

build/core/main.mk#Android编译系统的入口文件build/core/config.mk#会定好编译类型和目标文件build/core/definitions.mk#定义在编译过程中用到的宏)ONE_SHOT_MAKEFILE->build/core/package.mk#编译Apk库文件build/core/java_library.mk#编译Java库文件build/core/static_java_library.mk#编译Java静态库文件(#基本变量的值,并创建一些基本的依赖规则build/core/shared_library.mk

build/core/dynamic_library.mk

build/core/binary.mk

build/core/base_rules.mk

)

/static_library.mk#编译.a静态库文件build/core/executable.mk#编译可执行文件build/core/prebuilt.mk#编译已经预编译好的第三方库文件build/core/Makfile#有system.img、boot.img、recovery.img等镜像

#文件生成规则环境变量ONE_SHOT_MAKEFILE中存放

#要编译模块的Android.mk的文件路径,如果环境变

#量值为空,表示执行的是m或者make命令,会对Android #源代码中的所有模块进行编译4.编译某些模块

1.需要在Android根目录下配置环境

source build/envsetup.sh

lunch

2.进入特定模块目录

cd $path

mm(mma、mmm、mmma) -B -j2 2>&1 开始编译模块

安卓手机文件夹解析

手机中那些英文文件夹名意思 dcim 文件下的文件名, dcim 是相机的文件夹。一般将相机里的内存卡或是手机内存卡连接到电脑上时显示的文件夹名称 .smpo 是快速浏览用的信息文件,不能删除,删除了的话看图的初始速度会减慢 .thumbnails 是存放缩率图的,及时手机相机曾删过在这里也能找到。 aired 是米田科技有限公司开发的全球首家“智慧广告”平台。airAD是一套完善的网络广告平台。它主要针对中国庞大的手机用户群体,通过平台将广告商,移动终端程序开发者以及众多的手机用户联系在一起,使得所有人都从广告中受益,可以删除如果你没刻意安装他们的软件的话 .android_secure 是软件的主程序安装在内存里。软件的一些附件是存放卡上的 这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\data\文件夹中。 \system\bin 这个目录下的文件都是系统的本地程序,从bin文件夹名称可以看出是binary二进制的程序,里面主要是Linux系统自带的组件(命令)

\system\etc 从文件夹名称来看保存的都是系统的配置文件,比如APN接入点设置等核心配置。. \system\fonts 字体文件夹,除了标准字体和粗体、斜体外可以看到文件体积最大的可能是中文字库,或一些unicode字库,从T-Mobile G1上可以清楚的看到显示简体中文正常,其中DroidSansFallback.ttf文件大小。\system\framework framework主要是一些核心的文件,从后缀名为jar可以看出是是系统平台框架。 \system\lib lib目录中存放的主要是系统底层库,一些so文件,如平台运行时库。 \system\media \system\media\audio 铃声音乐文件夹,除了常规的铃声外还有一些系统提示事件音。 \system\sounds 默认的音乐测试文件,仅有一个test.mid文件,用于播放测试的文件。 \system%usr 用户文件夹,包含共享、键盘布局、时间区域文件等。 \system\app

Android百度地图API开发

最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地图入手,其实他们的用法都差不多,本篇文章就带领大家在自己的Android项目中加入百度地图的功能,接下来我会写一系列关于百度地图的文章,欢迎大家到时候关注! 一申请API key ?在使用百度地图之前,我们必须去申请一个百度地图的API key,申请地址https://www.doczj.com/doc/db16542917.html,/apiconsole/key,自己自行注册一个百度账号,很快就能申请到的,如下图 ?点击"创建密钥",系统将为我们自动生成密钥,当然我们在使用密钥之前还必须配置,点击"设置"如下图

Key type 选择“for mobile”,安全码是Android签名证书的证书指纹(SHA1)值+ “;” + 你的应用程序包名,所以当你配置好了API key 你不能随意更换应用程序的包名,如果更换了包名我们需要重新配置API key,接下来我们来介绍怎么获取数字签名 我们知道我们开发的Android程序是需要给他签名的,如果没有签名是不允许被安装到手机或者模拟器的,那么你会有疑问,我平常开发的应用确实没签名,怎么能在模拟器或者手机上直接运行呢,其实ADT会自动的使用debug密钥为应用程序签名,当然你也可以自己创建一个属于你自己的密钥,直接用Eclipse可视化创建就行了,很方便的,这里我就不介绍了 这里我们用debug.keystore来生成Android签名证书的证书指纹(SHA1)值,可以在eclipse中直接查看:winows -> preferance -> android -> build。如下图示: 然后我们使用keytool工具来获取签名证书的sha1值,在DOS输入keytool -list -keystore C:\Users\bds\.android\debug.keystore红色部分为debug.keystore的路径,接下来会要你输入输入密钥库口令,默认输入“android”,这样子我们就能获取证书指纹(SHA1),如下图

手机文件夹解释

.91Calendar:91黄历天气的缓存文件 .alirpt:缓存文件,开机自动生成,删不删除无所谓 .android_secure:官方app2sd的产物,删了之后装到sd卡中的软件无法使用.apprush:成语词典 .deviceidInfo:设备系统信息,不建议删除 .:奇虎应用商店缓存 .mreader:不明 .mymoney:随手记缓存文件夹 .QQ:QQ的缓存文件夹 .wochachaCache:我查查缓存文件夹 360:360的缓存文件夹,360本地备份的短信、联系人也在这里 360Download:不明 Albums:相册缩略图的缓存文件夹 Android:主程序不建议删除;里面是一些程序数据,如google map地图缓存Anyview:Anyview免费的阅读器 Autonavi:高德地图的缓存文件 autonavidata2c:高德导航地图文件 autonavidata50:高德导航地图文件, C:不明,直接删了 CarBox:感觉是车标品牌图片 Com:不明 :淘宝 Crashreport:崩溃报告把 Cut the Rope:割绳子游戏文件夹 Data:GalleryLock文件夹 DCIM:相机缓存文件夹 Download:下载文件夹,不建议删除,32M---可删内容 DX-Theme:点心桌面文件夹 Gameloft:手机游戏文件夹,内含极速狂飙:喷射游戏, :新华字典的数据文件夹 LeDong:乐动舞指的文件夹 :卡上丢失或出错的文件会跑这里,不建议删除,可删内容 Mapbar:图吧地图文件夹 Meishichina:美食中国的文件夹

androidAPIlevel

Android API Levels As you develop your application on Android, it's useful to understand the platform's general approach to API change management. It's also important to understand the API Level identifier and the role it plays in ensuring your application's compatibility with devices on which it may be installed. The sections below provide information about API Level and how it affects your applications. For information about how to use the "Filter by API Level" control available in the API reference documentation, see Filtering the documentation at the end of this document. What is API Level? API Level is an integer value that uniquely identifies the framework API revision offered by a version of the Android platform. The Android platform provides a framework API that applications can use to interact with the underlying Android system. The framework API consists of: A core set of packages and classes A set of XML elements and attributes for declaring a manifest file A set of XML elements and attributes for declaring and accessing resources A set of Intents A set of permissions that applications can request, as well as permission enforcements included in the system Each successive version of the Android platform can include updates to the Android application framework API that it delivers. Updates to the framework API are designed so that the new API remains compatible with earlier versions of the API. That is, most changes in the API are additive and introduce new or replacement functionality. As parts of the API are upgraded, the older replaced parts are deprecated but are not removed, so that existing applications can still use them. In a very small number of cases, parts of the API may be modified or removed, although typically such changes are only needed to ensure API robustness and application or system security. All other API parts from earlier revisions are carried forward without modification. The framework API that an Android platform delivers is specified using an integer identifier called "API Level". Each Android platform version supports exactly one API Level, although support is implicit for all earlier API Levels (down to API Level 1). The initial release of the Android platform provided API Level 1 and subsequent releases have incremented the API Level.

Android QQ SDK API

【QQ登录】Android_SDK使用说明 QQ登录Android SDK以Jar包形式提供,封装了QQ登录的登录授权以及大部分OpenAPI,应用只需要修改少量代码,不需要理解验证授权流程,即可快速实现QQ登录功能。 Android平台上的应用,请在申请appid,appkey后,使用QQ互联提供的Android SDK。 注意: 1. QQ登录Android SDK支持的Android版本: 2.1及以上版本。 2. 支持的第三方浏览器:Android系统自带浏览器,Firefox,Opera Mobile。 3. 支持web view与浏览器两种方式,即支持跳转到手机浏览器上进行QQ登录与验证流程,开发者可在SDK包中选择浏览器模式即可,但浏览器方式用户跳跃较大,不建议使用。 4. 仅适用于移动应用,即基于【QQ登录】使用Implicit_Grant方式获取Access_Token接入的应用。 1. Android SDK 下载 请到【QQ登录】SDK下载页面下载QQ登录Android SDK。 2. 创建工程及引用SDK源码文件 以下以eclipse为开发的IDE进行范例说明: 1. 创建一个工程,并把tencent_openapi.jar 放到lib中,如下图所示:

2. 将tencent_openapi.jar加入编译路径中。 具体的操作步骤为:选中tencent_openapi.jar ,右键菜单中选择Build Path,选择Add to Build Path,如下图所示:

看到类似以下的样子,说明已经成功将jar包加入build path : 3. 修改必要的代码 3.1 使用SDK提供的按钮样式 SDK提供了大中小3种登录按钮,开发者可以在代码中设置按钮样式。 示例代码如下(在SDK包中的位置:\TAuthDemo\src\com\tencent\tauthdemo\TAuthDemoActivity.java )ImageViewloginBtn = (ImageView) findViewById(R.id.login); //大按钮 loginBtn.setImageDrawable(TencentOpenRes.getBigLoginBtn(getAssets())); //中按钮 //loginBtn.setImageDrawable(TencentOpenRes.getLoginBtn(getAssets())); //小按钮 //loginBtn.setImageDrawable(TencentOpenRes.getSmallLoginBtn(getAssets())); 3.2 获取access token (1)获取Access token 需要访问网络,所以需要修改AndroidManifest.xml,加入以下代码:

Android—API中文文档

Android2.2——API中文文档 LLGYZB@https://www.doczj.com/doc/db16542917.html, 目录: (1)—— TextView (2)—— EditText (3)—— AccessibilityService (4)—— Manifest (5)—— View (6)—— ImageView (7)—— ImageButton (8)—— QuickContactBadge (9)—— ZoomButton (10)—— CheckBox (11)—— RadioButton (12)—— Button (13)—— ToggleButton (14)—— ViewStub (15)——GridView 一、TextView 1、结构 https://www.doczj.com/doc/db16542917.html,ng.Object ?android.view.View ?android.widget.TextView 2、已知直接子类: Button, CheckedTextView, Chronometer, DigitalClock, EditText 3、已知间接子类: AutoCompleteTextView, CheckBox, CompoundButton, ExtractEditText, MultiAutoCompleteTextView, RadioButton, ToggleButton

二、EditText 1、结构 https://www.doczj.com/doc/db16542917.html,ng.Object ? android.view.View ? android.widget.TextView ? android.widget.EditText 已知直接子类: AutoCompleteTextView, ExtractEditText 已知间接子类: MultiAutoCompleteTextView 2、xml 属性

手机常用垃圾文件的解释

手机用久了,内存卡里会出现一些我们不认识的垃圾文件,很多是删除程序之后的剩余文件。既占据空间,又影响速度。下面给大家分享一篇对安卓手机内存卡里的文件进行解析的帖子,让机油们知道哪些可以删掉: SD卡常见文件详解: 本帖隐藏的内容 1、.android_secure 是官方app2sd的产物,删了之后装到sd卡中的软件就无法使用了 2、.Bluetooth 顾名思义,用蓝牙之后就会有这个。 3、.mobo 顾名思义,Moboplayer的缓存文件。 4、.QQ 顾名思义,QQ的缓存文件。 5、.quickoffice 顾名思义,quickoffice的缓存文件。 6、.switchpro 顾名思义,switchprowidget(多键开关)的缓存文件。 7、.ucdlres 顾名思义,UC迅雷的缓存文件。 8、albumart 音乐专辑封面的缓存文件夹。 9、albums 相册缩略图的缓存文件夹。 10、Android 比较重要的文件夹,面是一些程序数据,比如google map的地图缓存。 11、backups 一些备份文件,比如联繫人导出到SD卡时会导入到此文件夹。 12、baidu 顾名思义,掌上百度、百度输入法之类程序的缓存文件夹。 13、bugtogo 系统出现问题的时候会形成一些报告文件,存放于此文件夹。" 14、cmp 个人初步判断是音乐的缓存文件夹。 15、data 同样是缓存数据的文件夹,与Android性质类似。 16、DCIM 相机的缓存文件夹,里面是你照的照片。 17、documents Documents To Go 的相关文件夹。 18、etouch 易行的缓存文件夹。 19、extracted androzip等解压缩软件默认的解压目录。 20、gameloft 顾名思义,gameloft游戏数据包存放的文件夹。 21、handcent 顾名思义handcent(超级短信)数据文件夹。* 22、handyCurrency 货币汇率相关的文件夹,装了handycalc(科学计算器)之后才会有。 23、ireader 顾名思义,ireader的缓存文件夹。 24、KingReader 顾名思义,开卷有益的缓存文件夹。 25、LazyList Applanet(黑市场)的缓存目录,也许和其他程序也有关,暂时不太清楚。 26、LOST.DIR 卡上丢失或出错的文件会跑这裡,此目录无用,删了会自动生成。 27、moji 顾名思义,墨迹天气的缓存目录。 28、MusicFolders poweramp产生的缓存文件夹。 29、openfeint 顾名思义,openfeint的缓存文件夹。 30、Picstore 图片浏览软件建立的一个目录。 31、Playlists 播放列表的缓存文件夹。 32、renren 顾名思义,人人网客户端的缓存文件夹。 33、screenshot 貌似是截屏图片保存的目录,

Android开发之- API包类最全面说明

android-->包含应用平台和在定义应用程序所用到android系统功能的应用权限的资料文件类, android.accessibilityservice-->这个包中的类用于为无障碍服务的开发提供替代或增强的反馈给用户 android.accounts--> android.animation-->这些类提供动画系统的功能特性,它允许使用任何类型的动画对象属性,int,float和16进制颜色值都是默认支持的,也可以通过自定义一个动画让告诉应用按你的设置去运行 android.app-->封装好的Andorid全部应用程序模型类 android.app.admin-->提供系统级的设备管理功能,允许您创建安全感知的应用程序用于android系统企业级别的设置,如可以让你的应用程序也能执行屏幕锁定,屏幕亮度调节、出厂设置等功能 android.app.backup-->此包下的类包含了备份和修复应用程度功能的,如果用户清除设备上的数据或升级到一个新的系统,当应用程序在重新安装时可通过已启用的备份用于修复用户之前的数据 android.appwidget-->此包下的类包含在创建一个应用小部件时所必需要组件,用户可将它嵌入在其他应用程序(如主屏幕),无需启动一个新的活动就可快速访问自身应用程序的数据和服务, android.bluetooth-->此包下的类提供手机蓝牙管理功能,例如搜索设备,连接设备,管理设备之间的数据的传输, android.content-->设备上的数据访问和发布。 android.content.pm-->此包下的类提供访问一个应用包的相应信息,信息内容包括:活动,权限,服务,应用签名,提供者, android.content.res-->此包下的类用于访问应用程序的资源,例如:原文件,颜色,图片,多媒体等,和一些可影响设备运行的重要配置的详细信息 android.database-->此包下类的用于探索通过内容提供者返回的数据 android.database.sqlite-->此包下类的包含SQLITE数据库管理类,用于一个应用程序去管理的它所拥有的私有的数据库 android.drm-->此包下的用于管理DRM系统机制和控件DRM机制的插件的功能,DRM解释:DRM提供一套机制对用户使用手机上的媒体内容(如ringtong, mp3等)进行限制,如限制拷贝给第三方,限制使用次数或时限等,从而保护内容提供商的权利, android.gesture-->此包下的类用于创建,识别,加载,保存一个手势 android.graphics-->此包下的类提供一些低级的绘图功具,例如:画布,颜色过滤,顶点坐标,和长方形以便于发开者的绘图直接处理在设备屏幕上, android.graphics.drawable.shapes-->此包下的类用于几何绘图 android.hardware-->提供支持硬件功能的类,例如:照像机和其它传感器 android.hardware.input--> https://www.doczj.com/doc/db16542917.html,b-->提供支持android系统设备的USB接口与外围设备的相连 android.inputmethodservice-->输入法的基类 android.location-->包括的类用于定义android地理位置和与此关系的服务 android.media-->提供管理各种各样音频和视频接口的类 android.media.audiofx-->提供管理多媒体框架中实现的音频效果的 android.media.effect-->提供允许你运用各种图像和视频的视觉效果的类 android.mtp-->提供的API让你直接连接照像机和其它设备与之互动,

安卓系统文件夹结构及其文件解析(详细)

安卓系统文件夹及其文件解析 打开Android文件管理器,会发现里面数十个英文名称命名的文件夹罗列其中,很多功能我们可以从其名字上略有所知,内部大批量的文件却让我们有些一头雾水。这些文件是什么?有什么用?我们能不能删?这些都是我们脑中充满疑问的。现在将将Android手机内部文件夹的架构和各文件的功能描述介绍给大家,让大家自己手机的内部资源有个比较透彻的理解,同时也避免了用户误删造成的数据丢失和系统崩溃。 【文件夹功能简介】 \system\app 这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\data\文件夹中。 \system\bin 这个目录下的文件都是系统的本地程序,从bin文件夹名称可以看出是binary二进制的程序,里面主要是Linux 系统自带的组件(命令) \system\etc 从文件夹名称来看保存的都是系统的配置文件,比如APN接入点设置等核心配置。 \system\fonts 字体文件夹,除了标准字体和粗体、斜体外可以看到文件体积最大的可能是中文字库,或一些unicode字库,从T-Mobile G1上可以清楚的看到显示简体中文正常,其中DroidSansFallback.ttf文件大小。 \system\framework framework主要是一些核心的文件,从后缀名为jar可以看出是是系统平台框架。 \system\lib lib目录中存放的主要是系统底层库,一些so文件,如平台运行时库。 \system\media \system\media\audio 铃声音乐文件夹,除了常规的铃声外还有一些系统提示事件音。 \system\sounds 默认的音乐测试文件,仅有一个test.mid文件,用于播放测试的文件。 \system\usr 用户文件夹,包含共享、键盘布局、时间区域文件等。 \system\app 这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\data\文件夹中。 \system\app\AlarmClock.apk 闹钟

安卓 英文 外文文献翻译 Android API级别

本科毕业设计(论文) 外文翻译(附外文原文) 学院:信息科学与工程学院 课题名称:基于腾讯微博开放平台的 数字教学交流系统 专业(方向):计算机科学与技术 班级: BCU09-4 学生:周杰伦 指导教师:方文山 日期: 2013/4/19

Android API级别 当你开发你的Android应用程序时,了解该平台API变更管理的基本方法和概念是很有帮助的。同样的,知道API级别标识以及该标识如何保障你的应用与实际硬件设备相兼容对于开发及后续的发布、维护都是有益的。 本节内容告诉你API级别的知识,以及它如何影响你开发和使用的应用。 关于如何使用“以API级别进行过滤”来使用API参考手册,从本文末尾的文档过滤(Filtering the documentation)中可以得到更多信息。 API级别是什么? API级别是一个整数值,它唯一标识了一个具体版本的Android平台,及其框架的API的版本。 Android平台提供了一套框架API,使得应用程序可以与系统底层进行交互。该框架API由以下模块组成: ?一组核心的包和类 ?清单(manifest)文件的XML元素和属性声明 ?资源文件的XML元素和属性声明及访问形式 ?各类意图(Intents) ?应用程序可以请求的各类授权,以及系统中包含的授权执行 每个Android平台的后续版本会包括它提供的更新的Android应用程序框架的API。 该框架的API的更新设计,使高版本的API与早期版本兼容。也就是说,在新版本API中大多数都是新增功能,和引进新的或替代的功能。作为API的部分升级,老的替换的部分已过时,但不会从新版本中删除,使得已有的应用程序仍然可以使用它们。在极少数情况下,旧版本API的部分可能被修改或删除,通常这种变化是为了保障API的稳定性及应用程序或系统的安全。所有其他早期版本的API将不做修改的保留。 一个Android平台提供的框架API,被指定一个整数标识符,称为“API级别”。每一个版本的Android平台只支持有一个API级别,虽然该支持是隐含地包括了所有早期的API级别(一直到API级别1级)。Android平台的最初版本提供的框架API级别是1级,随后的版本依次递增。 下表说明了具体平台版本和支持的API级别的对应关系。

安卓手机文件夹名称大全

For personal use only in study and research; not for commercial use For personal use only in study and research; not for commercial use 手机文件夹名称大全 1、.android_secure 是官方app2sd的产物,删了之后装到sd卡中的软件就无法使用了。 2、.Bluetooth 顾名思义,用蓝牙之后就会有这个。 3、.mobo 顾名思义,Moboplayer的缓存文件。 4、.QQ 顾名思义,QQ的缓存文件。 5、.quickoffice 顾名思义,quickoffice的缓存文件。 6、.switchpro 顾名思义,switchprowidget(多键开关)的缓存文件。 7、.ucdlres 顾名思义,UC迅雷的缓存文件。 8、albumart 音乐专辑封面的缓存文件夹。 9、albums 相册缩略图的缓存文件夹。 10、Android 比较重要的文件夹,里面是一些程序数据,比如google map的地图缓存。 11、backups 一些备份文件,比如联系人导出到SD卡时会导入到此文件夹。 12、baidu 顾名思义,掌上百度、百度输入法之类程序的缓存文件夹。

13、bugtogo 系统出现问题的时候会形成一些报告文件,存放于此文件夹。 14、cmp 个人初步判断是音乐的缓存文件夹。 15、data 同样是缓存数据的文件夹,与Android性质类似。 16、DCIM 相机的缓存文件夹。 17、documents Documents To Go 的相关文件夹。 18、etouch 易行的缓存文件夹。 19、extracted androzip等解压缩软件默认的解压目录。 20、gameloft 顾名思义,gameloft游戏数据包存放的文件夹。 21、handcent 顾名思义handcent(超级短信)数据文件夹。 22、handyCurrency 货币汇率相关的文件夹,装了handycalc(科学计算器)之后才会有。 23、ireader 顾名思义,ireader的缓存文件夹。 24、KingReader 顾名思义,开卷有益的缓存文件夹。 25、LazyList Applanet(黑市场)的缓存目录,也许和其他程序也有关,暂时不太清楚。 26、LOST.DIR 卡上丢失或出错的文件会跑这里,此目录无用,删了会自动生成。 27、moji 顾名思义,墨迹天气的缓存目录。 28、MusicFolders poweramp产生的缓存文件夹。 29、openfeint 顾名思义,openfeint的缓存文件夹。 30、Picstore 图片浏览软件建立的一个目录。

Android 2.3 r1 API中文文档——BluetoothServerSocket(Android Club SYSU)

BluetoothServerSocket 译者署名:Android Club SYSU 译者链接:https://www.doczj.com/doc/db16542917.html, 版本:Android 2.3 r1 结构 继承关系 public final class BluetoothServerSocket extends Object implements Closeable https://www.doczj.com/doc/db16542917.html,ng.Object android.bluetooth.BluetoothServerSocket 类概述 一个蓝牙监听端口。 蓝牙端口监听接口和TCP端口类似:Socket和ServerSocket类。在服务器端,使用BluetoothServerSocket类来创建一个监听服务端口。当一个连接被BluetoothServerSocket所接受,它会返回一个新的BluetoothSocket来管理该连接。在客户端,使用一个单独的BluetoothSocket类去初始化一个外接连接和管理该连接。 最通常使用的蓝牙端口是RFCOMM,它是被Android API支持的类型。RFCOMM是一个面向连接,通过蓝牙模块进行的数据流传输方式,它也被称为串行端口规范(Serial Port Profile,SPP)。 为了创建一个对准备好的新来的连接去进行监听BluetoothServerSocket类,使用BluetoothAdapter.listenUsingRfcommWithServiceRecord()方法。然后调用accept()方法去监听该链接的请求。在连接建立之前,该调用会被阻断,也就是说,它将返回一个BluetoothSocket 类去管理该连接。每次获得该类之后,如果不再需要接受连接,最好调用在BluetoothServerSocket类下的close()方法。关闭BluetoothServerSocket类不会关闭这个已经返回的BluetoothSocket类。 BluetoothSocket类线程安全。特别的,close()方法总会马上放弃外界操作并关闭服务器端口。 注意:需要BLUETOOTH权限。 参见 BluetoothSocket 公共方法 Block until a connection is established, with timeout. 阻塞直到一个带超时的连接已经建立。 在一个成功建立的连接上返回一个已连接的BluetoothSocket类。 每当该调用返回的时候,它可以在此调用去接收以后新来的连接。 close()方法可以用来放弃从另一线程来的调用。 参数 timeout (译者注:阻塞超时时间) 返回值

Android系统文件夹目录结构详解

Android系统文件夹目录结构详解 内容手机核心提示:本文介绍的是Android手机系统的文件夹结构,帮助大家更直观地了解系统,作为查询工具加入收藏夹还是很不错的哦*^_^*\\system\\app这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\\data\\文件夹中。 下面是详细的介绍: \\system\\app\\AlarmClock.apk闹钟 \\system\\app\\AlarmClock.odex\\system\\app\\Browser.apk浏览器 \\system\\app\\Browser.odex\\system\\app\\Bugreport.apk Bug报告 \\system\\app\\Bugreport.odex\\system\\app\\Calculator.apk计算器 \\system\\app\\Calculator.odex\\system\\app\\Calendar.apk日历 \\system\\app\\Calendar.odex\\system\\app\\CalendarProvider.apk日历提供 \\system\\app\\CalendarProvider.odex\\system\\app\\Camera.apk照相机 \\system\\app\\Camera.odex\\system\\app\\com.amazon.mp3.apk亚马逊音乐 \\system\\app\\Contacts.apk联系人 \\system\\app\\Contacts.odex\\system\\app\\DownloadProvider.apk下载提供 \\system\\app\\DownloadProvider.odex\\system\\app\\DrmProvider.apk DRM数字版权提供 \\system\\app\\DrmProvider.odex\\system\\app\\Email.apk电子邮件客户端 \\system\\app\\Email.odex\\system\\app\\FieldTest.apk测试程序 \\system\\app\\FieldTest.odex\\system\\app\\GDataFeedsProvider.apk GoogleData提供 \\system\\app\\GDataFeedsProvider.odex\\system\\app\\Gmail.apk Gmail电子邮件 \\system\\app\\Gmail.odex\\system\\app\\GmailProvider.apk Gmail提供 \\system\\app\\GmailProvider.odex\\system\\app\\GoogleApps.apk谷歌程序包 \\system\\app\\GoogleApps.odex\\system\\app\\GoogleSearch.apk搜索工具 \\system\\app\\GoogleSearch.odex\\system\\app\\gtalkservice.apk GTalk服务 \\system\\app\\gtalkservice.odex\\system\\app\\HTMLViewer.apk HTML查看器 \\system\\app\\HTMLViewer.odex\\system\\app\\IM.apk即时通讯组件包含MSN、yahoo通 \\system\\app\\ImCredentialProvider.apk\\system\\app\\ImProvider.apk\\system\\app\\ImProvider. odex\\system\\app\\Launcher.apk启动加载器 \\system\\app\\Launcher.odex\\system\\app\\Maps.apk电子地图 \\system\\app\\Maps.odex\\system\\app\\MediaProvider.apk多媒体播放提供 \\system\\app\\MediaProvider.odex\\system\\app\\Mms.apk短信、彩信 \\system\\app\\Mms.odex\\system\\app\\Music.apk音乐播放器 \\system\\app\\Music.odex\\system\\app\\MyFaves.apk T-Mobile MyFaves程序 \\system\\app\\MyFaves.odex\\system\\app\\PackageInstaller.apk apk安装程序 \\system\\app\\PackageInstaller.odex\\system\\app\\Phone.apk电话拨号器 \\system\\app\\Phone.odex\\system\\app\\Settings.apk系统设置 \\system\\app\\Settings.odex\\system\\app\\SettingsProvider.apk设置提供 \\system\\app\\SettingsProvider.odex\\system\\app\\SetupWizard.apk设置向导 \\system\\app\\SetupWizard.odex\\system\\app\\SoundRecorder.apk录音工具

Android UHF API

ANDROID UHF API

1包和库导入工程 UHF函数封装在uhf.jar中com.android.hdhe.uhf.reader.Uhfreader中。 2函数说明 2.0.1获取UhfReader实例getInstance() 功能:获取UhfReader实例,调用UHF封装指令 参数:无 返回:UhfReader实例 2.0.2设置发射功率setOutputPower(int value) 功能:设置发射功能(调节读取标签距离) 参数:int value,value范围16-26即14dBm~26dBm 返回:boolean flag,true设置成功,false设置失败 2.0.3多标签盘存inventoryMulti() 功能:芯片内部多次调用盘存,适用于多标签环境(盘存10000次,自动停止,如需请再次调用) 参数:无 返回:List list,list不为null时,返回盘存列表,list为null,无标签或标签不在天线区域。 2.0.4停止多标签盘存stopInventoryMulti() 功能:停止多标签盘存

参数:无 返回:无 2.0.5实时盘存inventoryRealTime() 功能:实时盘存,为单次执行指令,盘存时可循环调用,实现多标签盘存 参数:无 返回:List list,list不为null时,返回盘存列表,list为null,无标签或标签不在天线区域。 2.0.6选择标签selectEPC(byte[] epc) 功能:选择标签,在读写标签之前,应调用。 参数:byte[] epc,标签的EPC数据 返回:无 2.0.7取消选择标签unSelectEPC() 功能:取消选择标签,在重新选取标签或盘存时应调用。 参数:无 返回:int, 为0时正确执行,其他则错误。 2.0.8读标签数据readFrom6C(int memBank, int startAddr, int length, byte[] accessPassword) 功能:读标签存储区数据,读出的数据是以word为单位。 参数:int memBank 存储区RESEVER 区0,EPC 区1,TID区2,USER区3; int startAddr 起始地址(不可过大,视数据区大小而定); int length 读数据长度,其单位为word(1word = 2bytes); byte[] accessPassword 密码4个字节 返回:byte[] data;data不为null,则为数据区数据,为null则读数据失败,返回一个字节的错误码

安卓系统文件夹对照表

首先简单介绍一下安卓系统文件夹对照表主要介绍的是Android 手机系统的文件夹结构,帮助大家更直观地了解系统 \\system\\app 这个里面主要存放的是常规下载的应用程序,可以看到都是以APK 格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\\data\\文件夹中。 下面是详细的介绍: \\system\\bin 这个目录下的文件都是系统的本地程序,从bin 文件夹名称可以看出是binary 二进制的程序,里面主要是Linux 系统自带的组件 分析介绍:\\system\\bin\\akmd \\system\\bin\\am \\system\\bin\\app_process 系统进程 \\system\\bin\\dalvikvm Dalvik 虚拟机宿主 \\system\\bin\\dbus-daemon 系统BUS 总线监控 \\system\\bin\\debuggerd 调试器 \\system\\bin\\debug_tool 调试工具 \\system\\bin\\dexopt DEX 选项 \\system\\bin\\dhcpcd DHCP 服务器 \\system\\bin\\dumpstate 状态抓取器 \\system\\bin\\dumpsys 系统抓取器 本帖隐藏的内容需要回复才可以浏览 \\system\\bin\\dvz \\system\\bin\\fillup \\system\\bin\\flash_image 闪存映像 \\system\\bin\\hciattach \\system\\bin\\hcid HCID 内核 \\system\\bin\\hostapd \\system\\bin\\hostapd_cli \\system\\bin\\htclogkernel \\system\\bin\\input \\system\\bin\\installd \\system\\bin\\itr \\system\\bin\\linker \\system\\bin\\logcat Logcat 日志打印\\system\\bin\\logwrapper \\system\\bin\\mediaserver \\system\\bin\\monkey \\system\\bin\\mountd 存储挂载器 \\system\\bin etcfg 网络设置 \\system\\bin\\ping Ping 程序 \\system\\bin\\playmp3 MP3 播放器 \\system\\bin\\pm 包管理器 \\system\\bin\\qemud QEMU 虚拟机 \\system\\bin\\radiooptions 无线选项 \\system\\bin\\rild RIL 组件 \\system\\bin\\sdptool \\system\\bin\\sdutil \\system\\bin\\service \\system\\bin\\servicemanager 服务管理器 \\system\\bin\\sh \\system\\bin\\ssltest SSL 测试 \\system\\bin\\su**ceflinger 触摸感应驱动\ \system\\bin\\svc 服务 \\system\\bin \\system_server \\system\\bin\\telnetd Telnet 组件 \\system\\bin\\toolbox \\system\\bin\\wlan_loader \\system\\bin\\wpa_cli \\system\\bin\\wpa_supplicant \\system\\etc 从文件夹名称来看保存的都是系统的配置文件,比如APN 接入点设置等核心配置。

相关主题
文本预览
相关文档 最新文档