Android应用程序开发作者汪杭军第10章综合案例一课件PPT格式课件下载.pptx
《Android应用程序开发作者汪杭军第10章综合案例一课件PPT格式课件下载.pptx》由会员分享,可在线阅读,更多相关《Android应用程序开发作者汪杭军第10章综合案例一课件PPT格式课件下载.pptx(49页珍藏版)》请在冰点文库上搜索。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,10.2.1创建项目1、选择开发环境创建项目前首先要选择合适的系统开发环境,“智能农苑助手”软件的开发环境主要包括Eclipse编程软件、JDK1.6及其以上版本、Android系统(SDK22.0.1和ADT22.0.1)。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,2、创建“智能农苑助手”项目,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,*,10.2系统实现,浙江农林大学,*,*,3、测试项目模拟器调试配置如下:
Target设置成android2.3.1-api9,设置成可以使用键盘输入,内存设置在256M以上,sdk存储设置在256M以上。
手机调试:
只要手机运行版本为Android2.1、Android2.2或者更高的版本都可以。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,10.2.2界面设计1、欢迎界面,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,*,10.2系统实现,浙江农林大学,*,*,2、界面总体框架Tabhost设计,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,3、界面之植物查询设计,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,*,10.2系统实现,4、界面之主界面设计,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,*,10.2系统实现,浙江农林大学,*,*,5、设计界面设计,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,10.2.3天气系统项目中选用的是Ksoap2。
开发者可以从http:
/,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,具体使用webservice的方法有如下几个步骤:
1、指定webservice的命名空间和调用的方法名,如:
SoapObjectrequest=newSoapObject(http:
/service,”getName”);
2、设置调用方法的参数值,如果没有参数,可以省略,设置方法的参数值的代码如下:
Request.addProperty(“param1”,”value”);
Request.addProperty(“param2”,”value”);
3、生成调用Webservice方法的SOAP请求信息。
该信息由SoapSerializationEnvelope对象描述,代码如下所示:
SoapSerializationEnvelopeenvelope=newSoapSerializationEnvelope(SoapEnvelope.VER11);
Envelope.bodyOut=request;
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,3、生成调用Webservice方法的SOAP请求信息。
SoapSerializationEnvelopeenvelope=newSoapSerializationEnvelope(SoapEnvelope.VER11);
4、创建HttpTransportsSE对象。
通过HttpTransportsSE类的构造方法可以指定WebService的WSDL文档的URL,代码如下所示:
HttpTransportSEht=newHttpTransportSE(“http:
/192.168.18.17:
80/axis2/service/SearchNewsService?
wsdl”);
5、使用call方法调用WebService方法,代码如下所示:
ht.call(null,envelope);
6、使用getResponse方法获得WebService方法的返回结果,代码如下所示:
SoapObjectsoapObject=(SoapObject)envelope.getResponse();
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,“智能农苑助手”项目中天气系统的效果,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,*,10.2系统实现,浙江农林大学,*,*,10.2.4网络通讯服务在“智能农苑助手”项目中,获取天气数据需要连接网络,首先要在配置文件AndroidManifest.xml中加入权限,代码如下所示:
在获取天气预报数据的时候是通过借用第三方SDK调用WebService数据,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,10.2.5图形图像处理界面设计中使用tabhost处理一些图像动画的效果,使应用切换界面更加快捷方便,用户可以通过左右滑动的方式来切换界面,增加交互效果。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,10.2.6数据存取在“智能农苑助手”项目中数据储存主要有file文件存储和SharedPreferences存储两种。
1、File文件存储:
在植物界面中有相关植物的介绍,用到的是ExpandableListView列表的形式,主要保存在本地的数据。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,2、SharedPreferences存储:
“智能农苑助手”项目中还用到了SharedPreferences。
实际上SharedPreferences处理的就是一个key-value(键值对)。
SharedPreferences常用来存储一些轻量级的数据.要使用SharedPreferences存储数据,首先要实例化一个SharedPreferences对象,然后要实例化SharedPreferences.Editor对象,用putString的方法保存数据,提交当前数据,最后使用toast信息提示框提示成功写入数据。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,*,3、数据库存储:
数据库存储首先要利用文件存储打开数据库文件,代码如下所示:
privateFilepath=newFile(/sdcard/com.alarm.stab);
/数据库文件目录privateFilef=newFile(/sdcard/com.alarm.stab/db_weather.db);
/数据库文件然后打开数据库文件,一般数据库文件保存在sd卡中.打开数据库中获取城市名,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.2系统实现,浙江农林大学,*,26,10.2.7Service服务“智能农苑助手”项目主要采用本地service的闹钟提醒方式来实现植物助手浇水、施肥、松土等提醒功能。
采用的是本地服务,通过LocalService用于应用程序内部实现。
在Service中可以调用Context.startService()启动,调用Context.stopService()结束。
在内部也可以调用Service.stopSelf()或Service.stopSelfResult()来自己停止。
无论调用了多少次startService(),都只需调用一次stopService()来停止。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,浙江农林大学,*,27,10.3.1添加广告Android应用常见的盈利模式:
收费模式商业合作模式免费+广告”模式,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,浙江农林大学,*,28,添加“有米”广告,步骤如下所示:
1、进入有米官网,注册用户。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,2、进入邮箱激活账户,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,29,10.3应用程序的发布,3、点击有米官网中开发者选项,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,30,10.3应用程序的发布,4、进入插播广告界面。
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,31,10.3应用程序的发布,5、下载所需广告类型,这里以插播广告条为例,下载广告条sdk。
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,32,10.3应用程序的发布,浙江农林大学,*,33,6、将SDK嵌入到项目中,需进行下面两部操作:
步骤一:
将youmi-android.jar导入您的工程中。
步骤二:
在AndroidManifest.xml文件中配置用户权限。
步骤三:
在AndroidManifest.xml中添加AdActivity和YoumiReceiver。
步骤四:
初始化账号信息。
步骤五:
修改proguard.cfg。
步骤六:
设置发布渠道号。
步骤七:
在activity_main首页界面中使用xml布局嵌入广告。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,34,10.3应用程序的发布,浙江农林大学,*,35,10.3.2生成签名文件在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系。
Android使用Java数字证书相关机制,来给apk加盖数字证书。
Android系统要求每一个安装的应用程序都是经过数字证书签名。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,浙江农林大学,*,36,同一个开发者的多个程序尽可能使用同一个数字证书,这可以带来以下好处:
有利于程序升级。
有利于程序的模块化设计和开发。
可以通过权限(permission)的方式在多个程序间共享数据和代码。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,浙江农林大学,*,37,数字证书的有效期有以下几点要求:
(1)数字证书的有效期要包含程序的预计生命周期,一旦数字证书失效,持有该数字证书的程序将不能正常升级。
(2)如果多个程序使用同一个数字证书,则该数字证书的有效期要包含所有程序的预计生命周期。
(3)AndroidMarket强制要求所有应用程序数字证书的有效期要持续到2033年10月22日以后。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,浙江农林大学,*,38,使用Android数字证书要注意以下几个问题:
所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序。
Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证。
如果要正式发布一个Android,必须使用一个合适的私钥生成的数字证书来给程序签名,而不能使用adt插件或者ant工具生成的调试证书来发布。
数字证书都是有有效期的,Android只是在应用程序安装的时候才会检查证书的有效期。
如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能。
Android使用标准的java工具KeytoolandJarsigner来生成数字证书,并给应用程序包签名。
使用zipalign优化程序。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,浙江农林大学,*,39,开发者使用自己的数字证书给apk包签名,有两种方法:
命令行下使用JDK中的和Keytool(用于生成数字证书)和Jarsigner(用于使用数字证书签名)来给apk包签名。
使用ADTExportWizard进行签名(若没有数字证书可能需要生成数字证书)。
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,浙江农林大学,*,40,10.3.3使用签名文件这里使用Keytool和Jarsigner给“智能农苑助手”手机程序添加签名,命令如下所示:
keytool-genkey-v-keystoreandroid.keystore-aliasandroid-keyalgRSA-validity20000接着对程序进行签名,签名格式如下所示:
jarsigner用法:
选项jar文件别名jarsigner-verify选项jar文件,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,41,10.3应用程序的发布,10.3.4发布应用将“智能农苑助手”应用发布到“安卓市场”应用市场有如下几个步骤:
1、注册“安卓市场”开发者账号,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,42,10.3应用程序的发布,2、注册后需在邮箱中激活,激活后显示提交审核,但须在3个工作日内审核完毕,如图10-22所示。
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,43,10.3应用程序的发布,3、审核完成后,可以在安卓市场中发布软件。
发布软件需上传AKP文件、上传软件截图、添加软件信息等步骤,如图10-23所示。
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,44,10.3应用程序的发布,发布成功后,软件处于待审核状态。
浙江农林大学,*,45,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,10.3应用程序的发布,4、审核通过后,在系统已发布软件列表中显示审核通过。
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,46,10.3应用程序的发布,5、最后在“安卓市场”中搜索“智能农苑助手”,能够看到软件已经发布到“安卓市场”。
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,47,10.3应用程序的发布,6、点击“智能农苑助手”,进入应用介绍页面,如图10-27所示。
在此页面中可以看到“智能农苑助手”应用的简介,并且可以下载安装到手,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,机。
*,浙江农林大学,48,EvaluationWarning:
ThedocumentwascreatedwithSpire.Presentationfor.NET,浙江农林大学,*,49,