基于Android平台的天气预报系统的设计与开发_第1页
基于Android平台的天气预报系统的设计与开发_第2页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于Android平台的天气预报系统的设计与开发基于Android平台的天气预报系统的设计与开发摘要:安卓是谷歌于2008年推出的一个智能手机操作系统,其独特的设计模式使得开发手机软件变得非常简单。该论文介绍了一款安卓天气预报的设计与实现过程。用户可以通过主界面选择城市来获得包括风力、风向、紫外线强度等的天气信息。基于手机的天气预报系统能够使用户对于各地的天气情况实时掌握,方便用户的出行和行程安排,具有一定的实用性。关键字:实时预报,Android,温度检测,定位TheDesignandDevelopmentofWeatherForecastSystembasedontheAndroidISy

2、stemAbstract.AndroidisaSmartphonesystemlaunchedbyGooglein2008,whoseuniquedesignpatternmakesiteasiertodevelopmobilephonesoftwares.ThepaperintroducestheprocessofthedesignandimplementationofaAndroidweatherforecastsystem.Userscanchooseacitywhathelikesfromthehomescreentogetaccesstotheweatherinformationin

3、cludingwind,winddirection,strongofultravioletlightandsoon.Weatherforecastsystembasedonmobilephoneenablesuserstotakethereal-timecontrolofweatherconditionsofallparts,thusbringinggreatconveniencetotheuserstravelandtravelarrangements,andhasacertainpracticalityKeywords:real-timeforecast,Android,Temperatu

4、redetection,location毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。作者签名:日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解*学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论

5、文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。作者签名:指导教师签名:日期:日期:II注意事项1. 设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结7)参考文献8)致谢9)附录(对论文支持必要时)2. 论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3. 附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4. 文字、图表要求:1)文字通顺,语言

6、流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5. 装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文译文原文(复印件)次序装订3)其它II03vs0361Ir.LIr.u俸硏!a誉mmpiojpuv944SWWb曹P痒進*卿美PPPUD乙E痒進宙取硏丄导击鮭PPPUDb|6o

7、oe)TEPiojpuv3|6oo9*E議蜩竝NZliSfWIN33puesq3M乙乙zi乙z事標昌竝乙T蜩挥昌迹lMTasexTS蜩SilTWl沓目53测试内容和结果2054测试结果226结束语23致谢24参考文献24II1.绪论1.1系统开发的目的由于智能手机的快速普及,智能操作系统在手机市场占据了很大一部分,其中以Andriod和iOS最为流行。为了让智能手机用户能够随时随地查询互联网所提供的信息,一种非常高效的方法就是将网络系统的功能扩展到智能手机终端上,让手机能够通过移动网络访问Web网站并处理各种各样的业务。由于在大学学习过java语言,并且Andriod系统是基于java语言开发

8、的,因此想开发一套基于Andriod平台的3G手机气象软件并从网上获取天气预报信息。Android平台的天气预报软件的开发可以进一步扩大气象信息的覆盖面让广大Android手机用户能够在第一时间获取最新的天气预报信息,以便提前预防,方便出行。同时,把气象灾害造成的损失降到最低,也可以提高公共服务质量,更好的发挥气象事业对经济社会发展的现实性作用,有巨大的实用价值。虽然该技术在Android平台已经比较成熟,但是通过该软件的开发仍然能帮助我更好的认识Android系统的工作1.2系统开发工具(1) win7系统jdk1.8Eclipse标准版及ADT插件SensorSimulator(用来模拟安

9、卓手机中的温度传感器)1.3项目需求分析(1)系统能够通过手机精确定位全国各个城市未来几天的天气情况(2) 系统具有安全性,独立性,可靠性(3) 系统界面设计优美,符合用户的操作习惯,且在一定程度上节省流量开销12.项目设计2.1系统架构图2.1系统构架图2.2webservice网络拓扑图本系统是基于提供webservice服务的网站接收数据,然后对数据进行解析,从中找到需要的数据。如图2.2所示为提供webservice服务的网站网络拓扑图SmtMlWDRIf甜旧侶zsq叱酒誉圣*心SIPVMjAJOSqoAVW礙MWSHSsdoVPRKftfjApovsdo中意書目程工EZaiiadoi

10、dpafod冒5pp朋&0dILUX:pppUGjpIdpLI02叫I凹百4m5百耳sapuapu.3d.3popu廿三巨科甘eepp4?ueB気gagPAziiaivuiBo-i吁4BAErF|iinjeAUQ97-Einsrifljnps田rbab|!1门0心阴日臥Jf:心!叫口可吕申AJ3qBM3L|W百陋呼BAEplAipVSdg3ddesnfunps出r込第rsauEjqq79九idpiopuy。三自!旦qqp30LJ3Jd|SsdEE円dpuyWOLUaaJBL|lBa/V.gF删昌竝EZ理经纬度转换的类,LoginActivity是处理登录界面的类。3GoogleAndroid平

11、台的相关理论3.1GoogleAndroid移动平台下的应用研究Android系统提供给应用程序开发者的只是一个框架,在该平台下开发应用程序必须要遵守这个框架原则。我们开发的应用程序其实就是在这个框架上进行拓展,下面介绍一下android这个框架所提供的功能。Androidapp:提供最上层的程序模型和运行环境Androidcontent:包含对设备上的据进行访问和发布的类Androiddatabase:Android系统内置一个轻量级的SQLite据库Androidgraphics:底层的图形库,包含颜色过滤,画布,矩形,点,可以用来将它们直接绘制到屏幕上。Androidnet:提供用来帮助

12、访问网络的类。Androidlocation:定位以及与定位有关的一些类。Androidutil:涉及到一些实用性的方法,例如对时间和日期进行操作。Androidmedia:提供一些管理多种视频,音频的媒体接口。Androidos:提供了系统服务,IPC机制和消息传输。Androidopngl:提供了OpenGL的工具。Androidprovider:提供了访问Android中的内容提供者的类。Androidtelephony:提供用来与拨打电话相关的API交互的类。Androidview:提供最基本的用户界面接口框架。Addroidwebkt:提供用来调用默认浏览器的接口。Android.w

13、idget包含各种UI元素,可以在应用程序的布局中使用。3.2Android关键技术研究Android平台是基于java语言开发的,其中主要由四大组建构成,分别为:25Activity、Service、BroadcastReceiver、ContentProvider。1.ActivityActivity就是一个用户界面,每一个Activity就是一个独立的界面。比如照相机程序,实现一个拍照的Activity,短信也是一个Activity,拨号界面也是一个Activity等等,这些Activity都是相互独立的,但组合在一起它们就变成一个完整功能的应用程序了。我们可以把Activity理解成j

14、ava中的JFrame控件,不过它与JFrame的别在于:java中的JFrame本身可以设置布局理器,不断的向JFrame中添加组件,但Activity只能通过setContentView(layout)方法在主界面显示布局。2.ServiceService与Activity的地位是相同的,它也代表一个独立的Android组件,Service与Activity的别在于:Service通常在后台运行,它不需要与用户进行交互,此Service没有用户界面。与Activity需要继承Activity的基类一样,Service同样也需要继承Service基类。当一个Service组件在后台运行起来后

15、尼就会和Acitivity同样也有自己的生命周期。Service组件通常用于为一些不需要界面但是又必须在后台运行的程序提供服务,比如音乐或者音频播放软件。名思义它主要就是用来3.BroadcastReceiver中文意思是广播接收者,接收来自广播和系统中的应用程序发送的消息。在Android中广播的用处非常广泛,例如当开机后会自动产生一条广播,接收到这条广播后系统就能及时的做出提示和保存数据等操作;当电池电量低的时候系统也会产生一条广播,这样就能及时提示用户进行充电等的操作。本质上BroadcastReceiver就是一种全局的监听器,我们用它来监听系统向应用程序发送的广播消息。基于以上所述我

16、们可以用它非常方便的实现系统中不同组件之间的相互通信。4.ContentProvider它是不同APP之间进行交换数据的核心的API,ContentProvider在系统中以某种URI的形式对外提供数据允许其他应用查询或者修改数据;其他应用程序使用ContentResolver根据URI去访问和操作指定的数据.事实上这里有一个简单的类比:可以把ContentProvider看作安卓系统内部提供的一个网站,这个网站以固定的URI对外提供I服务;而ContentResolver可以当成系统内部的HttpClient,它可以向指定的URI发送请求,这种请求最后委托给ContentProvider处理

17、,从而实现对网站内部数据进行操作。3.3小结本单元主要概括了关于Android平台的三个方面的内容:I.Googleandroid移动平台的概述2.googleandroid移动平台开发过程的研究3.Googleandroid移动平台下的应用研究,概要的介绍了Googleandroid移动平台相关知识,4.介绍了Android平台下的四大组件的相关内容。通过本章我们对Googleandroid移动平台有初步的认识和了解,为后面的开发做了坚实的基础。4.天气预报程序设计4.1Android的UI界面的实在Android中用户界面都是布局在XML文件中的。这些XML文件放在工程/res/layou

18、t下面。这对以前熟悉java可视化编程的人来说可能有些不太习惯。可能有人疑问为什么要把布局文件放在XML文件里呢?其实有过web基础的都应该知道mvc框架,这是一种用于网站开发的非常优秀的思想,在安卓系统中,安卓开发人员把用户界面放在XML文档中定义,这样就可以让XML文档专门负责用户UI界面设置,而java程序专门负责业务实现,从而降低程序的耦合,便于程序的维护和扩展,符合mvc设计思想。在XML中Android开发人员放置了很多我们经常用到的一些组件,比如view,Button,EditText等,通过这些系统提供的控件,我们可以开发出我们想要的程序界面来。Layout是一类特殊的View

19、Group控件,它们本身并不显示任何的内容,存在的惟一原因就是其中的内部结构,能够更好地摆放它的子控件。比如Linearlayout(线性布局),可将子控件按水平或垂方向按顺序排列下去;Tablelayout(表格布局),可以将子控件按照表格的形式,一枚枚放好Relativelayout(相对布局)”实际应用中这个布局更灵活,它可以设定各个控件之间的对齐和排列关系,适合编写复杂的界面。有了Layout的存在,控件和控件之间不再是独立地存在,而是更有机地结合在一起,设定起来也更为方便。在本程序中布局文件我一共用到了如图4.1所示的布局文件丿#layout粗ity_de-tail.ximl粗cit

20、y_e-nvironment.xrnIgcityjayout.xml血content_layqut.ximIQgps_vieLv.xinllogir.xmlOjmain.xml血tqyb.yml图4.1布局文件图其中city_detail用来显示城市简介的信息,city_environment用来显示当前所在城市的生活指数信l,city_layout用来显示用来选择城市布局content_layout用来显示天气情况,gps_view用来显示gps定位信息,login用来显示登录欢迎界面,main包含了用来切换的三个界面,tqyb显示主界面布局4.2欢迎界面的实现考虑到程序界面的美观效果,在进

21、入主界面之前我首先设置了一个用来跳转的Activity,并命名为LoginActivity。在LoginActivity中显示login布局Timertimer=newTimer();finalIntentintent=newIntent(this,edu.njue.app.WeatherWebServiceActivity.class);TimerTasktask=newTimerTask()Overridepublicvoidrun()startActivity(intent);LoginActivity.this.finish();timer.schedule(task,1000);程序

22、显示画面一秒后会进入主程序天气界面,如图4.2所示程序欢迎界面L:14.2欢迎界面4.3主界面功能实现第一次安装好进入程序界面时,系统会显示“本程序是第一次运行,请选择想要了解的城市”的窗口。在这里我把默认城市设置为南京,如果用户不单击城市选择按钮的时候,则会显示的是南京近两天的天气情况。如图4.3所示。第一次运行时我是通过在手机文件系统中判断是否存在一个名为shared_prefs的文件来判断是否为第一次运行,如果存在则不是第一次运行,系统会继续执行向下执行代码,如果系统中不存在该文件,则为第一次运行该程序,程序弹出对话框告诉用户。0:50:17南京(城今日天气6月6日今日天气实况Q提示由于

23、本程序是第一次运行n点击右上角设置城市r左右还可以滑动杳看详细信息一-确定晴23gC/32aC4.3第一次运行效果图在主程序界面,我运用的主要是ViewFlipper组件,通过该组件可以实现滑动显示界面,不过在设置滑动界面之前我们要先设定滑动的动画。该动画实在resanim中设置,如图4.4所示为左右滑动效果布局J&anim|C1|left_in.xml,口.left_out.xml,口.rightJn.Kml,C1|right_out.Kml4.4界面滑动布局其中left_in中的代码为:Al.2A)qQnojuouuqooq启-qnd:lchwapg0nom=o眉ns-nnVA-jiiai

24、uuojyiuar总$80&更也!10言JgaulgoyAgar:+MHPFsO.IPUUapaQ.svq&0no&=o眉apnRUJVW0气1p1mu=HJqs-asqjuoaefsojpub=W0气夷dpsPEJnoAa“p-5JPUU3恳恳枣宣&FpvipueJoddJIHgAVowmsBeessfr142100)从左往右滑动viewFlipper.setAnimation(AnimationUtils.loadAnimation(this,android.R.anim.slide_in_left);viewFlipper.setAnimation(AnimationUtils.load

25、Animation(this,android.R.anim.slide_out_right);viewFlipper.showPrevious();elseif(touchDownX-touchUpX100)viewFlipper.setAnimation(AnimationUtils.loadAnimation(this,R.anim.right_in);viewFlipper.setAnimation(AnimationUtils.loadAnimation(this,R.anim.left_out);viewFlipper.showNext();returntrue;returnfals

26、e;获取天气信息并显示天气预报系统最重要的当然是如何才能有效的获取天气信息了,要想获取实想要的信时的天气信息,我们就要访问专门提供天气信息的网站把网站返回的信息解析出并显示在手机上。通过网上的搜索,我找到了一个提供webservice的网站:Webservice的出现成功的解决了不同平台和语言之间进行数据交换的问题,它主要使用XML文档来传递消息,并将该消息发送给任何请求对象,由于不同系统对XML的完美支持,因此从根本上完善了跨平台服务,任何时刻、任何平台我们可以使用任何语言来访问该Webservice服务。对于Webservice使用者而言,webserviceAPI与任何操作平台无关,它只

27、是以XML语言作为数据交换格式。Webservice平台主要涉及到的技术是SOAP(SimpleObjectAccessProtocol),WSDL(WebServiceDescriptionLanguage)SOAP依赖于XML文档来构建,一条SOAP消息就是一份特定的XML文档,SOAP主要包含三个方面的主要元素:(1)(2)(3)根元素,该元素是必填的。其中SOAP消息用来传递的数据的XML文档以该元素作为根元素元素,该元素是选填的。它包含了SOAP消息的头信息元素,该元素是必填的。它包含所有的调用和相应的内容Java本身提供了很丰富的WebService支持比如Sun公司制定的JAX-

28、WS2规范,Apache开源组织提供的Axis1,Axis2,CXF等。我们可以使用Google公司为Android平台开发的专门处理Webservice信息的ksoap2-android进行客户端的开发。使用该第三方包的方法为:1创建HttpTrasportSE对象2.创建SoapSerializationEnvelope对象3创建SoapObject对象创建该对象时需要传入所要调用WebService的命名空间4如果有参数需要传给WebService服务器端,调用SoapObject对象的addProperty(Stringname,Objectvalue)方法来设参数,该方法的name参

29、数指定参数名,value指定参数值5调用SoapSerializationEnvelope的setOutputSoapObjectO方法,或者直接对bodyout属性赋值,将前两步创建的SoapObject对象设SoapSerializationEnvelope的传出SOAP消息体6调用对象的call。方法,并以SoapSerializationEnvelope作为参数调用远程的WebService7调用完成后访问SoapSerializationEnvelope对象的bodyin属性该属性返回一个SoapObject对象,该对象就代表了WebService的返回消息,解析该基于此SoapOb

30、ject对象,即可获取调用WebService的返回写调用webservice服务的类WebServiceUtil返回城市列表publicstaticListgetProvinceList()/需要调用的方法名(获得本天气预报WebServices支持的洲、国内外省份和城市信息)/StringmethodName=getRegionProvince;StringmethodName=getSupportProvince;/创建HttpTransportSE传输对象HttpTransportSEhttpTranstation=newHttpTransportSE(SERVICE_URL);htt

31、pTranstation.debug=true;/使用SOAP1.1协议创建Envelop对象SoapSerializationEnvelopeenvelope=newSoapSerializationEnvelope(SoapEnvelope.VER11);/实例化SoapObject对象SoapObjectsoapObject=newSoapObject(SERVICE_NS,methodName);envelope.bodyOut=soapObject;设置与.Net提供的WebService保持较好的兼容性envelope.dotNet=true;tryII调用WebServiceht

32、tpTranstation.call(SERVICE_NS+methodName,envelope);if(envelope.getResponse()!=null)II获取服务器响应返回的SOAP消息SoapObjectresult=(SoapObject)envelope.bodyIn;SoapObjectdetail=(SoapObject)result.getProperty(methodName+Result);解析服务器响应的SOAP消息。returnparseProvinceOrCity(detail);catch(Exceptione)e.printStackTrace();r

33、eturnnull;解析出省份和城市,把返回的数据用split方法切割,只取需要的省份数据privatestaticListparseProvinceOrCity(SoapObjectdetail)ArrayListresult=newArrayList();for(inti=0;idetail.getPropertyCount();i+)Stringstr=detail.getProperty(i).toString();/解析出每个省份result.add(str.split()0);returnresult;publicstaticSoapObjectgetWeatherByCity(S

34、tringcityName)/根据城市或地区名称查询获得未来三天内天气情况、现在的天气实况、天气和生活指数/StringmethodName=getWeather;StringmethodName=getWeatherbyCityName;HttpTransportSEhttpTranstation=newHttpTransportSE(SERVICE_URL);httpTranstation.debug=true;SoapSerializationEnvelopeenvelope=newSoapSerializationEnvelope(SoapEnvelope.VER11);SoapObj

35、ectsoapObject=newSoapObject(SERVICE_NS,methodName);/soapObject.addProperty(theCityCode,cityName);soapObject.addProperty(theCityName,cityName);envelope.bodyOut=soapObject;envelope.dotNet=true;try/调用WebServicehttpTranstation.call(SERVICE_NS+methodName,envelope);if(envelope.getResponse()!=null)/获取服务器响应

36、返回的SOAP消息SoapObjectresult=(SoapObject)envelope.bodyIn;SoapObjectdetail=(SoapObject)result.getProperty(methodName+Result);/解析服务器响应的SOAP消息。returndetail;catch(Exceptione)e.printStackTrace();returnnull;如图45所示为调用此方法后返回的为XML文档iXj?#4J82亠.iS23Ljpj2Ql4-5I3J3.17:SC;30C/strings.;/2Q日晴转爭云西凤H级转南风3-0.叮:.wrw.iFSw唱

37、曰tringA今兀气实况:气温:2oC;巩向/佩力:两南凤:衆;湿度:7X;主气质星:暂兀:紫扑鶴强度:強4=.strin卩穿歳摘数:热,迂喰穿T血、蝮舷L枣等夏拿服装。疋敏指数:辔乃。运动梏数,较运官.孔力较旷.排祥您进行寧冋运动.洗车楷也适肓.天气郵奸.适合撐岚汽车:瞬陌拓,数:阪适宜,代弋环错,抓為丸机让衣物硒人肥吧。旅游磁暂无a路况抬数:干燥.无吒较好.路而较干燥.路况较好舒适度抬数:较舒适,白无晴,早晚凉爽*舒适,出心偏热。空气巧染腊数:暂无。紫夕、锁奋数:强.涂擦S吓大干15、PA+防晒护肤品a:yCf2C/stringsrstrings5J210c/strings“tiring东

38、南凤H飯转禄凤5-+-1I.w/trinqn亠strinq:,1r:tC/strings./22El亠4.5网站返回XML文档接下来我们只需要对该文件解析就可以拿出我们需要的数据了。然后把对应的据添加在相应的地方即可。城市列表的选择:当我们单击城市选择按钮的时候会跳出图4.6的城市选择界面直辖市北京取涓城市Q请选择所属城市4.6城市选择界面对应的方法为确走publicvoidshow_dialog(intcityld)city_text=(TextView)findViewById(R.id.city_text);switch(cityId)caseCITY:/取得city_layout.xm

39、l中的视图finalViewview=LayoutInflater.from(this).inflate(R.layout.city_layout,null);省份Spinnerprovince_spinner=(Spinner)view.findViewById(R.vince_spinner);城市Spinnercity_spinner=(Spinner)view.findViewById(R.id.city_spinner);provinces=WebServiceUtil.getProvinceList();ArrayAdapteradapter=newArrayAdapt

40、er(this,android.R.layout.simple_spinner_item,provinces);adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);province_spinner.setAdapter(adapter);/省份Spinner监听器province_spinner.setOnItemSelectedListener(newOnItemSelectedListener()OverridepublicvoidonItemSelected(AdapterViewv

41、iew,Viewparent,intposition,longid)citys=WebServiceUtil.getCityListByProvince(provinces.get(position);ArrayAdapteradapter1=newArrayAdapter(WeatherWebServiceActivity.this,android.R.layout.simple_spinner_item,citys);adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);city_sp

42、inner.setAdapter(adapter1);OverridepublicvoidonNothingSelected(AdapterViewarg0);城市Spinner监听器city_spinner.setOnItemSelectedListener(newOnItemSelectedListener()OverridepublicvoidonItemSelected(AdapterViewarg0,Viewarg1,intposition,longarg3)city_str=citys.get(position);OverridepublicvoidonNothingSelecte

43、d(AdapterViewarg0);/选择城市对话框25AlertDialog.Builderdialog=newAlertDialog.Builder(this);diaogsetTitle(请选择所属城市”);dialog.setView(view);dialogsetPositiveButton(确定,newDialogInterfaceOnClickListener()OverridepublicvoidonClick(DialogInterfacedialog,intwhich)city_textsetText(city_str);writeSharedPreference(cit

44、y_str);refresh(city_str);checkWeather(city_str););dialog.setNegativeButton(取消,newDialogInterfaceOnClickListener()OverridepublicvoidonClick(DialogInterfacedialog,intwhich)dialog.dismiss(););dialog.show();break;default:break;编写gps定位转换类用于定位当前位信ConverUtil。由于GoogleSDK内部的一个小bug,我们不能直接利用手机内部来定位地址必须要把当前的经纬度

45、信息发送给谷歌网站来解析。publicstaticStringgetAddress(doublelongitude,doublelatitude)/HttpClientclient=newDefaultHttpClient();Gt方法得到内容HttpGethttpGet=newHttpGet(+geocode/json?latlng=+latitude+,+longitude+&sensor=false®ion=cn);StringBuildersb=newStringBuilder();tryHttpResponseresponse=client.execute(httpGet);H

46、ttpEntityentity=response.getEntity();/获取服务器响应的字符串InputStreamis=entity.getContent();intb;while(b=is.read()!=-1)sb.append(char)b);把服务器相应的字符串转化为JSon对JSONObjectjsonObj=newJSONObject(sb.toString();/解析出相应结果中的地址信息Strings1=jsonObj.getJSONArray(results).getJSONObject(0).getString(formatted_address);Strings2=s1.split(,)3;Log.i(start,s2);returnjsonObj.getJSONArray(results).getJSONObject(0).getString(formatted_address);catch(Exceptione)e.printStackTrace();returnnull;本软件同样实现了传感器接口,可以实时监测当前外部温度,增加用户的友好体publicvoidonSensorChanged(Se

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论