搜档网
当前位置:搜档网 › Android中jar包封装及调用

Android中jar包封装及调用

Android中jar包封装及调用
Android中jar包封装及调用

Android中jar包封装及调用

在android开发过程中,我们经常会有这种需求,自己开发一个类库jar包,提供给别人调用。即把项目A封装成jar包,供项目B调用,而在项目B中调用项目A的activity 的时候问题就出现了:找不到资源文件(异常:ERROR/AndroidRuntime(3341):Caused by: android.content.res.Resources$NotFoundException: Stringresource ID #0x7f060007)。问题是,只能共享src文件夹下的代码,而不能共享res资源文件,够郁闷!创建一个Androidproject, 用eclipse的export导出,去掉AndroidManifest.xml,res 什么的,这样只共享了代码,而此代码中所调用的res资源文件却不能正常使用,否则会抛出res.Resources$NotFoundException异常。那么如何解决呢?

1.如果只用共享代码,而共享的代码中不涉及到res资源文件的调用的话,直接在Eclipse中导出jar包,在所需要的项目中引用即可。

2.如果共享代码,而且共享的代码中涉及到res资源文件的调用,网上通用的方法是把res资源文件放到assets文件夹中,再在src代码中加载处理,然后再用eclipse导出jar包,引用即可(res资源虽然可以打进jar包,但当其他项目调用jar包时jar包中引用ID 指向的是当前项目的资源,关于如何让jar包中的资源引用只想jar包中的res文件暂无解决方案。我的问题已解决,解决方案:把图片资源放入assets包中一并打入jar包,布局就只能用代码了。jar包中代码可以成功引用jar包内的assets文件。

另:JNI层不可被打包入jar包,只能同jar包一同提供给第三方并放入工程目录下的libs 包中)。

3.如果共享代码,而且涉及到res资源文件的调用,而且不想把res资源文件放到assets文件夹中的,直接生成jar包会出现的问题:

1).当在别的项目中引用此jar包时,在项目名上出现小红叉,并且在

console控制台上直接自动提示:Errorgenerating final archive: Found duplicate file for APK:res/drawable-hdpi/icon.png,通常的解决方法时,在能编译通过的此项目中直接去掉提示的资源文件,再生成jar包。

2).把公共的icon等资源文件删除,生成jar包之后,此时在项目中引用,console控制台上无自动报错现象。如果jar包中的activity调用了res资源文件夹中的文件,在当前项目中调用jar包中的acticity时,问题就出现了,activity所引用的res资源,如果引用的是Strings.xml文件中的值,则抛出异常ERROR/AndroidRuntime(3341):Caused by: android.content.res.Resources$NotFoundException:Stringresource ID#0x7f060007。如果引用的是layout文件夹中的文件,能找到layout中的xml,例如layout中ee.xml,可以找到https://www.sodocs.net/doc/538038226.html,yout.ee,但是在ee.xml中定义的控件id却引用不到,抛出异常ERROR/AndroidRuntime(13703):Caused by:https://www.sodocs.net/doc/538038226.html,ng.NullPointerException。如果在当前项目中调用不涉及jar包中的res的调用,一切OK。

4.如果共享代码,而且共享的代码中涉及到res资源文件的调用,如果封装成jar 包,这种方法是达不到要求的(调用jar中封装的activity,还得保证jar包中activity正常调用jar中所封装的res资源,上面说了,jar包中的res资源部分调用为空),那么如何能满足需求呢?把要生成jar包的项目做一下处理,在jar包项目的properties窗口中选择android的选项卡的isLibaray,点击apply按钮或者ok按钮(此时,jar包项目再点击右键选择runas → AndroidApplication就能正常运行了)。在要引用jar包的项目中,右击项目名称,打开properties框口,选择android的选项卡的isLibaray右侧的Add按钮,添加jar包项目。这样jar包项目中的activity就能正常引用到jar包项目中的res资源了。项目调用jar包项目的activity就正常了

Android系统哪些程序可以删除

Android系统哪些程序可以删除(仅供参考) 发布时间:2011-08-05 11:42:09 来源:本站原创浏览数:3605 资讯摘要:Android手机系统中默认会自带很多无用程序,这些应用,平时很少用不到,但因为是系统自带的,所以它们像牛皮癣一样内嵌在手机里,无法去除。下面列举一些能够删除和不能够删除的软件列表,希望对G友有用!怎么删除呢?当然是下载一个安卓优化大师 V2.0.2.apk来删除AccountsyncManager.apk(社交网络账号管理程序)#就是管理Facebook、Flickr账号的程序。删除了,未发现异... 字号:小中大 Android 手机系统中默认会自带很多无用程序,这些应用,平时很少用不到,但因为是系统自带的,所以它们像牛皮癣一样内嵌在手机里,无法去除。下面列举一些能够删除和不能够删除的软件列表,希望对G友有用!怎么删除呢?当然是下载一个安卓优化大师 V2.0.2.apk来删除 AccountsyncManager.apk(社交网络账号管理程序)#就是管理Facebook、Flickr账号的程序。删除了,未发现异常。 Browser.apk(浏览器) Calculator.apk(计算器) Calendar.apk(日历) CalendarProvider.apk(日历存储) checkin.apk(签入) CheckinProvider.apk(签入服务) com.htc.MusicWidget.apk(音乐小插件) com.htc.WeatherWidget.apk(天气小插件) Gmail.apk(GMail)#Google提供的免费网络邮件服务 GmailProvider.apk(Gmail存储) gtalkservice.apk(GTalk服务) Googlesubscribedfeedsprovider(同步供稿,不知道干什么的,删了) HTC_CIME.apk(Touch Input 中文)#可移除,但移除后在第一次进系统弹出的设置向导时要跳过键盘测试,否则会崩溃。 HTC_IME.apk(Touch Input)#同上 HTCAlbum.apk(相册) htccalendarwidgets.apk(日历小插件) HTCCamera.apk(相机) HtcClockWidget.apk(时钟小插件) HtcContacts.apk(联系人) htccontactwidgets.apk(联系人小插件) htcmailwidgets.apk(邮件小插件) htcmsgwidgets.apk(信息小插件) HtcMusic.apk(音乐) HtcPhotoWidget.apk(照片小插件) htcsearchwidgets.apk(搜索小插件)

教你彻底删除Android系统自带程序

教你彻底删除Android系统自带程序,注意是“彻底”。 新手升级必读| 性吧地址发布软件| 加入VIP会员- 享受尊贵待遇(官方唯一加入点) | 进入会员互助区得到帮助删除系统自带程序,估计有一定玩机经验的人都会说这很简单,root后通过root explorer或者专门的软件就行了。 是的,种方法是可以让程序消失达到删除的目的。 但是对于一些追求完美的人来说这还远远不够,因为这时候你只相当于把这个讨厌的客人赶出了你的房间,但是这个客人曾经在房间拉的大小便还在!! 高尚的狼亲们,你们允许吗当然不会,那么看完这个帖子后就顶我一下吧。 一般的删除方法仅仅删除了system/app里的文件,这样是没删干净的,还有许多没删掉。可以删除的区域有三: 区域一. system/app里的可删除文件如: 手机QQ QQ空间 支付宝 词酷 邮件 邮件插件 芒果TV 爱读 开心网 影音圈 QQ浏览器 办公软件 蜜蜂新闻 悦读圈 人人 三星App市场 三星App市场服务 新浪博客 新浪天气 新浪新闻 新浪股票 sns 账户 同花顺 社交圈 VIVA手机杂志 优酷

区域二:data/data里面(文件夹形式)如: 词酷 邮件 音乐 导航 爱读 支付宝 支付宝 QQ空间 人人网 影音圈 悦读圈 三星App市场 三星App市场服务 sns 账户 社交圈 邮件插件 新浪新闻 新浪天气 新浪股票 新浪微博 手机QQ 手机QQ 优酷 芒果TV VIVA杂志 区域三:data/dalvik-cache 里面(dex后缀文件)如@classes[/email] 支付宝 @classes[/email] 导航@classes[/email] 手机@classes[/email] QQQ空间 @classes[/email] 词酷@classes[/email] 芒果@classes[/email] 爱读@classes[/email] 开心网@classes[/email] 蜜蜂新闻@classes[/email] QQ浏览器@classes[/email] 办公软件@classes[/email] 人人网@classes[/email] 三星App市场@classes[/email] 三星App市场服务@classes[/email] 新浪博客@classes[/email] 同花顺@classes[/email] VIVA杂志 @classes[/email] 优酷 在这里说明下,这三个区域文件都是对应的 例如,删除开心网。先把区域一的删了,再删区域二,三的。 如此一来你就彻底抹除了这个程序。

Android实现获取系统应用列表

Android实现获取系统应用列表 本文介绍在Android中如何获取系统应用程序列表。 Android系统为我们提供了很多服务管理的类,包括ActivityManager、PowerManager(电源管理)、AudioManager(音频管理) 等。除此之外,还提供了一个PackageManger管理类,它的主要职责是管理应用程序包。通过它,我们就可以获取应用程序信息。 PackageManager的功能: ?安装,卸载应用 ?查询permission相关信息 ?查询Application相关信息(application,activity,receiver,service,provider及相应属性等)?查询已安装应用 ?增加,删除permission ?清除用户数据、缓存,代码段等 我们可以用PackageManager来显示系统安装的应用程序列表或者系统程序列表 相关类的介绍 PackageItemInfo类 说明:AndroidManifest.xml文件中所有节点的基类,提供了这些节点的基本信息:a label、icon、meta-data。它并不直接使用,而是由子类继承然后调用相应方法。 常用字段: public int icon 获得该资源图片在R文件中的值(对应于android:icon属性) public int labelRes 获得该label在R文件中的值(对应于android:label属性) public String name 获得该节点的name值(对应于android:name属性) public String packagename 获得该应用程序的包名(对应于android:packagename属性) 常用方法: Drawable loadIcon(PackageManager pm) 获得当前应用程序的图像 CharSequence loadLabel(PackageManager pm) 获得当前应用程序的label

Android系统应用开发作业1

Android系统应用开发作业1 单项选择题 第1题关于主题的说法,不正确的是 A、它是属性集合 B、它可以在程序中来设置 C、它通常用于一个Activity或所有Activity上 D、它可以用于单个TextView上 答案:D 第2题下列说法不正确的是 A、javac.exe 能指定编译结果要置于哪个目录(directory)? B、在编译程序时,所能指定的环境变量不包括class path? C、javac 一次可同时编译数个java 源文件 D、环境变量可在编译source code时指定 答案:D 第3题如果希望自定义TabHost标题部分的显示内容需要使用下列哪个方法() A、tabHost.addTab(tabHost.newTabSpec("tab1") B、setIndicator() C、setContent() D、setView 答案:B 第4题对一些资源以及状态的操作保存,最好是保存在Activity生命周期的哪个函数中进行? A、onStart( ) B、onPause( ) C、onCreate( ) D、onResume( ) 答案:A 第5题继承了Canvas类必须实现的方法是() A、paint() B、keyPressed() C、run() D、main() 答案:A 第6题下列关于XML布局文件在Java代码中被引用的说明中,不正确的是? A、在Activity中,可以使用findViewById( )方法,通过资源id,获得指定视图元素 B、在Activity中,可以使用R.drawable-system.***方式引用Android系统所提供的图片资源 C、在Activity中,可以使用setContentView( )方法,确定加载哪一个布局文件

Android系统发展史及未来之路

Android系统发展史及未来之路 从2007年苹果发布第一代iPhone,引发智能手机的革命之后,移动互联网,这个全新的市场就此打开。经过短短几年时间的发展,移动互联网行业已经发生了翻天覆地的变化,拥有令人惊叹的发展速度,取得了举世瞩目的成就,甚至显现出取代传统PC互联网的趋势。 当今的智能手机市场是巨头之间的博弈 而这其中,以苹果所主导的iOS平台、谷歌所主导的Android平台以及微软所主导的WP平台最为引人关注。通过这三大巨头互联网公司之间的互相博弈与牵制,目前的移动互联网市场已基本形成三强鼎立,互相制约与抗衡的局面。 移动互联网市场三强鼎立的局面基本形成 我们网易手机也以此为话题,聊聊如今在移动互联网市场叱咤风云的三大移动操作系统平台背后的成长故事,首先我们从目前市场份额最大但也非议最多的Android平台开始。

Android标志性的绿色小机器人 五年时间疯狂的扩张让世人惊叹 虽然苹果在移动互联网市场上抢占了先机,但此后的谷歌也便凭借其敏锐的眼光以及对未来市场的洞察力,联合HTC、高通以及摩托罗拉等30家公司共同宣布开发一款开源性质的操作系统,借此挑战苹果在当时移动互联网市场的统治地位。 一年以后的2008年9月23日,首款搭载Android平台的智能手机T-Mobile G1问世。尽管当时G1上市后并未立即取得成功,创造iPhone那样辉煌的市场销售业绩。但它的出现却真正意义上向世人宣告了Android统治移动互联网市场的时代来临。 首款搭载Android系统的手机-T Mobile G1问世 Android平台之所以能够在短时间内迅速崛起,同样也因为其抓住了市场发展的良好契机。iPhone的发布重新定义了智能手机的用户体验,而当时如日中天的Symbian平台在用户体验方面则根本无法与之抗衡,并且已显现出疲软的态势,运营商与终端厂商急需寻求一个可以在未来与苹果iOS分庭抗礼的系统平台,开源的Android系统无疑是最佳的选择。 Android平台不仅能够提供与iPhone类似的用户体验,其同时还有开源且低成本的门

Android手机常见系统软件和应用软件一览表

360安全卫士 360省电王 360手机助手 Adobe Flash player11.1 Android 动态壁纸Android键盘 Android 系统Bluetooth share Certificate installer com.android.provision Com.qualcomm.privinit Cw_system_service Es文件浏览器 HTML查看器 Live wallpaper picker Pico tts Sleep up Tts service Uc 浏览器 Uim卡应用 user dictionary 天翼空间 114 114火车票 189邮箱 Wiper app 爱动漫 爱音乐 爱游戏 安智市场 百度 百度地图 百度魔图 白乐通 拨号器 拨号器存储 餐馆 打包安装程序 大众点评 翻转静音 飞信 疯狂钓鱼 高德地图 功夫木马专杀

号百彩票 号百商旅 号薄助手 号码百事通 互联网 互联星空 计算器 健身动画教程 开心网 客户服务 快速问医生 联系人存储 联想服务框架 录音机 媒体存储 平台同步服务 启动器 日历 日历存储 软件包访问帮组程序 软件更新 三国时代 设置 存储设置 时钟 收音机 Qq 受drm保护的内容的存储数码相册 甩动切换 搜狗输入法 搜狐新闻 搜索 状态栏 装配测试 账户与同步设置 掌上营业厅 掌上猫扑 有道词典 隐私权设置 音乐播放 翼聊 一键root 虚拟专用网服务

信息 相机 下载内容 下载管理器 我查查 微信 通讯录 通话记录 天翼阅读 天翼手机 天翼视讯 天翼宽带 天天动听 搜索应用程序提供商搜索

Android系统架构概述

Android的架构图如下,图中按照功能结构及面向人群进行划分,可以看出Android分成三个部分: 应用部分:包含在Android设备上运行的所有应用,它们是Android系统中直接面向用户的部分。 核心部分:Android系统中核心的功能实现,包括应用框架、核心类库等,每个Android 应用的开发者,都是在此基础上进行应用开发的。 底层部分:主要指Android寄宿的Linux操作系统及相关驱动。通常来说,只有硬件厂商和从事Android移植的开发者,才会基于此来进行开发。 除了上述划分方式以外,从系统实际的架构模型来看,Android则可以分成以下几个层次:

应用层 框架层 运行时 核心类库 硬件抽象层 Linux内核 本文的后续内容将针对以上各层逐一进行分析。 1.1.1应用层 对于普通的用户而言,只能通过具体的应用来判断移动平台的优劣。即便一个移动平台具有最华丽的技术,但是如果不能给用户提供最得心应手的应用,顶多也只能赢得无冕之王的名头,而无法抓住用户的心,赢得市场的认可。 Android应用层由运行在Android设备上的所有应用共同构成,它不仅包括通话、短信、联系人等系统应用(随Android系统一起预装在移动设备上),还包括其他后续安装到设备中的第三方应用。 第三方应用都是基于Android提供的SDK(Software Development Kit)进行开发的,并受到SDK接口的约束。而预装在设备中的系统应用,则可以调用整个框架层的接口和模块,其中的很多接口在SDK中是隐藏的,因此,系统应用具有比第三方应用更多的权利。 Android的应用都是基于Java语言来开发的,但在很多应用(尤其是游戏)中,需要进行大规模的运算和图形处理,以及使用开源C/C++类库。通过Java来实现,可能会有执行效率过低和移植成本过高等问题。因此在Android开发中,开发者可以使用C/C++来实现底层模块,并添加JNI(Java Native Interface)接口与上层Java实现进行交互,然后利用Android提供的交叉编译工具生成类库并添加到应用中。 为了让应用开发者能够绕过框架层,直接使用Android系统的特定类库,Android还提供了NDK(Native Development Kit),它由C/C++的一些接口构成,开发者可以通过它更高效地调用特定的系统功能。 但在Android上,开发者通常只能使用C/C++编写功能类库,而不是整个应用。这是因为,诸如界面绘制、进程调度等核心机制是部署在框架层并通过Java来实现的,应用只有按照它们规定的模式去编写特定的Java模块和配置信息,才能够被识别、加载和执行。 小贴士从Android 2.3(API 9)开始,新增了android.app.NativeActivity类,它是通过调用

【Android自带系统程序对照表】

*Accountprovider 账号管理器 ApkManager.apk APK安装器(即N多安装器) advancedsettings.apk 高级设置 AlarmClock 闹钟 AndroidSyncService 系统同步服务 AndroidUI 索尼爱立信X10UI界面程序 appinstaller.apk app安装器 *ApplicationsProvider 程序管理器 AutoSettingDispatcher 自动设置修补 bootinfo 启动信息 Bluetooth.apk 蓝牙(删了就没有蓝牙了) Browser 自带浏览器 Bugreport.apk Bug报告 btoppservice 蓝牙设置服务 Calculator 系统自带计算器 Calendar 系统自带日历程序 CalendarProvider 系统自带日历管理器 *Camera 系统自带相机 CapabilitySetupReceiver 接收器安装能力 *CertInstaller.apk 证书服务 CdfInfoAccessor CDF信息访问器 *Contacts 联系人储存 CredMgrService CredMgr服务 *DefaultContainerService.apk 默认通讯录服务 DeskClock.apk 自带闹钟(用第三方闹钟的可删) DigitalClock 数字时钟 *DownloadProvider 下载管理器 *DrmProvider DRM信息管理器 SPManager.apk DSP音频管理(不太会使用这个的,可以删了 EMAIL 伊妹儿。。。 Emeual (干什么用的我毫不知情) Enhanced Google searchProvider 增强谷歌搜索管理器 Facebook 脸谱~ FaceRecognition 脸部识别程序(MS里面看照片的时候可以关联联系人) filemanager.apk 文件管理 FileCopier 文件复制器 Fota FOTA解决方案 Generic-app-Installer 全球版的APK安装器 GlobalSearch 全球搜索 Gmail 谷歌MAIL GmailProvider GMAIL管理器 Gallery3D.apk 3D浏览器(嫌弃它速度慢的,可删) GenieWidget.apk 天气与新闻(我自己不用他看新闻,删了) GoogleApps 谷歌程序 googlebackuptransport.apk googlecheckin.apk googlecheckinhelper.apk GoogleFeedback.apk ***(据说删除后开机会提示googlefeedback.apk,不过我删了没什么副作用)googlepartnersrtup.apk Google助手(删了没感觉有特殊)GoogleCalendarSyncAdapter.apk 存储日历信息(删了没感觉有特殊)

精简你的Android 彻底删除系统应用方法

很多刚刚收入Android手机的朋友都会问,如何删除自带的应用程序呢?这样可以节省出更多内存,来安装自己想用的软件,下面,我们就教您如何办到。 首先强调一下,需要完全root权限,网上的无痛root是部分权限,不好用的。大家一般都会删除自己安装的程序了,最简单的办法就是,设置——应用程序——管理应用程序,找到并卸载。 这种办法的话,系统自带的程序是删除不掉的。可是很多人可能有整洁癖,看着自己手机里有自己用不上的程序就闹心,恨不得用手指甲把这几个程序从手机里面抠出。 别闹心!来教你怎么删除系统自带的应用程序吧。 先提示:系统程序的文件在删除的时候,请慎重,再慎重,后悔药,世上是没有卖的,如果出现问题就只能重新刷机了,万一一着急又没有备份,手机里对于自己重要的东西可是哭都哭不回来。后路想得要充分!那我们就开始吧。 1、使用的工具:RootExplorer管理器,这个管理器可以查看并改写系统文件。它有几种状态,比如说只读、读写。 2、系统文件的位置:System/app,每个系统程序基本上都是成对的,一般有两个,前面的名字一样,后缀分别是.apk 和.odex。 3、删除系统程序的办法:我们要做的就是把你不想要的系统程序的这两个文件搞掉(删除或者更名让手机的系统自己找不到,目的就算达到)。 4、举例说明:比如,我们想要删除系统自带的股票软件,那么使用RootExplorer管理器进入System/app,点menu 搜索,键入“*stock*”,查找,这样就找到6个包含stock 的文件,将RootExplorer管理器状态变为“读/写”(这样可以删除文件或者改名),那么,为了保险,我们不做删除操作,进行重命名即可,将com.htc.StockWidgets.apk 这个文件改为com.htc.StockWidgets.apk.old (多加一个后缀.old),同理,把6个文件都这样进行重命名即可,这样,就达到了在系统中删除股票软件的目的了。然后退出RootExplorer管理器的时候,系统会进行自动更新,重排程序。 为增加感官认识,下面上几张图,大家可以看下。

android 系统框架图

Android系统架构图及简单的系统架构介绍 Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。

Android系统架构图 1.应用程序 Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。 2.应用程序框架 开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。 隐藏在每个应用后面的是一系列的服务和系统, 其中包括; * 丰富而又可扩展的视图(Views),可以用来构建应用程序,它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons),甚至可嵌入的web浏览器。 * 内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据 * 资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串,图形,和布局文件( layout files )。 * 通知管理器(Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。 * 活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。 有关更多的细节和怎样从头写一个应用程序,请参考如何编写一个Android 应用程序. 3.系统运行库 1)程序库 Android 包含一些C/C++库,这些库能被Android系统中不同的组件使用。它们通过Android 应用程序框架为开发者提供服务。以下是一些核心库:* 系统 C 库- 一个从BSD 继承来的标准C 系统函数库( libc ),它是专门为基于embedded linux 的设备定制的。 * 媒体库- 基于PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。 * Surface Manager - 对显示子系统的管理,并且为多个应用程序提供了2D 和3D图层的无缝融合。 * LibWebCore - 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。 * SGL - 底层的2D图形引擎 * 3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。

Android系统应用开发作业2

Android系统应用开发作业2 单项选择题 第1题onPause 什么时候调用? A、当界面启动时 B、当onCreate 方法被执行之后 C、当界面被隐藏时 D、当界面重新显示时 答案:B 第2题在Activity 中,如何获取service 对象? A、可以通过直接实例化得到。 B、可以通过绑定得到。 C、通过startService() D、通过getService()获取 答案:D 第3题在表格布局中,android:collapseColumns="1,2"的含义是? A、在屏幕中,当表格的列能显示完时,显示1,2 列 B、在屏幕中,当表格的列显示不完时,折叠 C、在屏幕中,不管是否能都显示完,折叠1、2 列 D、在屏幕中,动态决定是否显示表格 答案:D 第4题在使用SQLiteOpenHelper 这个类时,它的哪一个方法是用来实现版本升级之用的? A、onCreate() B、onCreade() C、onUpdate() D、onUpgrade() 答案:D 第5题TabHost.newTabSpec("tab1")的作用是? A、为tab 页创建标题为tab1 B、为tab 页创建ID 为tab1 C、为tab 页创建内容 D、为tab 页创建新空格 答案:B 第6题若在界面上显示“Hello,World”,应该使用以下哪个控件是() A、TextView B、ImageView C、ListView D、以上都不对

答案:A 第7题Matrix 类的作用是? A、可以存储缩小或放大比列 B、存储文件中的图片信息 C、存储资源中的图片信息 D、存储内存中的图片信息 答案:C 第8题android:completionThreshold=1 是哪个组件的属性? A、ImageButton B、EditText C、TextView D、AutoCompleteTextView 答案:D 第9题对于一个Activity,在AndroidManifest.xml中对他这样进行定义这样的描述代表什么含义?() A、无明确含义,每个Activity都需要这样定义 B、代表该Activity将作为程序的主Activity,并且在LAUNCHER菜单中启动 C、代表该Activity将在桌面上建立图标并启动 D、代表该Activity的优先级高于其他的Activity 答案:B 第10题Activity生命周期中,第一个需要执行的方法是什么? A、onStart B、onCreate C、onReStart D、onResume 答案:B 第11题在AndroidManifest.xml中描述一个Activity时,该Activity的icon属性是指定什么的?( ) A、指定该Activity的图标 B、指定该Activity的显示标签 C、指定该Activity和类相关联的类名 D、指定该Activity的唯一标示 答案:A 第12题在Android应用程序中,布局文件应放在那个目录下?( ) A、raw B、values C、layout D、drawable 答案:C

Android应用程序开发课后习题答案

第一章Android简介 1.简述各种手机操作系统的特点. 答案: 目前,手机上的操作系统主要包括以下几种,分别是Android、iOS、Windows Mobile、Windows Phone 7、Symbian、黑莓、PalmOS和Linux。 (1)Android是谷歌发布的基于Linux的开源手机平台,该平台由操作系统、中间件、用户界面和应用软件组成,是第一个可以完全定制、免费、开放的手机平台。Android底层使用开源的Linux操作系统,同时开放了应用程序开发工具,使所有程序开发人员都在统一、开放的开发平台上进行开发,保证了Android应用程序的可移植性。 (2)iOS是由苹果公司为iPhone、iPod touch、iPad以及Apple TV开发的操作系统,以开放源代码的操作系统Darwin为基础,提供了SDK,iOS操作系统具有多点触摸操作的特点,支持的控制方法包括滑动、轻按、挤压和旋转, 允许系统界面根据屏幕的方向而改变方向,自带大量的应用程序。 (3)Windows Mobile是微软推出的移动设备操作系统,对硬件配置要求较高,一般需要使用高主频的嵌入式处理器,从而产生了耗电量大、电池续航时间短和硬件成本高等缺点,Windows Mobile系列操作系统包括Smartphone、Pocket PC和Portable Media Center。随着Windows Phone 7的出现,Windows Mobile 正逐渐走出历史舞台。 (4)Windows Phone 7具有独特的“方格子”用户界面,非常简洁,黑色背景下的亮蓝色方形图标,显得十分清晰醒目,集成了Xbox Live游戏和Zune音乐功能,可见Windows Phone 7对游戏功能和社交功能的重视。 (5)Symbian是为手机而设计的实时多任务32位操作系统,它的功效低,内存占用少,提供了开发使用的函数库、用户界面、通用工具和参考示例。操作系统不是完全开放的,核心代码不开放,但是API文档是公开的。 (6)黑莓系统主要在黑莓手机上使用,其特色是支持电子邮件推送功能,邮件服务器主动将收到的邮件推送到用户的手持设备上,而不需要用户频繁地连接网络查看是否有新邮件。同时,黑莓系统提供手提电话、文字短信、互联网传真、网页浏览及其它无线信息服务功能。黑莓系统主要针对商务应用,具有很高的安全性和可靠性。 (7)PalmOS由拥有较多的第三方软件,是32位的嵌入式操作系统,主要在移动终端上使用,操作系统本身所占的内存极小,不具备录音和MP3播放功能。 (8)Linux手机操作系统具有开放源代码的特性,但是也包含入门难度高,集成开发环境差,Linux的产品与个人计算机的连接性较差,具有较强的开发实力的公司很少等不足。 2.简述Android平台的特征 答案: Android广泛支持GSM、3G和4G的语音与数据业务,支持接收语言呼叫和SMS

相关主题