基于Android的仪器管理系统App设计与实现_第1页
基于Android的仪器管理系统App设计与实现_第2页
基于Android的仪器管理系统App设计与实现_第3页
基于Android的仪器管理系统App设计与实现_第4页
基于Android的仪器管理系统App设计与实现_第5页
已阅读5页,还剩110页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

页脚...学院:信息与通信学院 专业:电子信息工程 副教授 2016年6月10日..摘要之间实验室资源分布不均匀,仪器重复购买的情况极为普遍。再加上仪器共享信息道不通畅,管理方式和管理思想落后,从而导致了仪器设备利用率低下等问题日益。为了提高实验室仪器的使用效率,现本人受市国创信息科技委托,开发一款基于及使用仪器,为仪器的效益评价效率。鉴于使用过程中产生的数Abstract页脚.页脚...Withtheincreasinginvestmentinscientificresearch,Lackofequipmentresourcescannotmeettheneedsofalargenumberofdevelopers.LaboratorynnstrumentsharinginformationchannelsarenotmodeandmanagementthinkingbehindWhichleadstothelowutilizationratioofinstrumentandequipmentInordertoimproveefficiencyinformationtechnologyco.,LTD.,DevelopanAndroid-basedlaboratoryemAPPlaboratoryinstrumentstoachievesharedmanagementinthemobileinternet.TheresearchcontentofthispaperisthedesignanddevelopmentofmbasedonAndroidplatformItintendstouseJavatudioasadevelopmenttooltoSDKasadevelopmentenvironment.AppmanagementinstrumentdesigntakesadvantageofadvancedeplacethetraditionalmanagementmethodslaboratoryortheusertocheckthestatusoftheinstrumentmakeanappointmentanduseofequipmenttoprovideadequateandreliabletechnicalsupportforaluationoftheinstrumentsoastoimprovetheefficiencyoftheuseoflaboratoryequipmentGiventheamountofdatageneratedduringtheuseofsswillnotbetoomuchconsiderusingthirdpartyserverLeanCloudforstoragesystembasedinformation. id id 页脚. .. 页脚...各实验室之间资闲置,利用率低下与需求旺盛矛盾备资源的共享,成为了解决仪器设。日常生活中,它的应用也越动设备的应用程序,并结合统也不同。而常见的移动设备开发。鲜的运行界面,简单、亲切的用享的管理、服务信息;同时,为用..各实验室之间资闲置,利用率低下与需求旺盛矛盾决这种不平衡,提高仪器设备效益的意见》,明确指出需通过深化改础设施和大型科研仪器向社会开器设备和优质资源共享系统”(CERS)中。,仪器使用人的复杂性理难度和管理成本;另外,设备(1)仪器共享信息渠道不够通畅:不少仪器使用率不高、有充分的共享条件,但备;仪器预约靠书面(2)仪器管理方式落后、运行成本高、代价大:大多数仪器单机工作,缺少人机共享的难度很大、代价很1]。(3)仪器管理思想落后,管理机制没有理顺,缺乏必要监控手段:由于仪器自身下任意使用仪器,甚页脚...中天,连续多年独霸全球手机销不顺应时代的改变,坚持选择使步。d经快速的拓展到了相关的电子领oid操作系统。它的用户几乎验室资源分布不均匀,仪器重复息和状态展示提供到一个上展示出来,并且给研究人员共享了仪器设备的预约使用,用户们只需要拥有一部用仪器,这不但节省了研究人员宝贵的时间,也很方便实验室管理人员对仪器使用id下且仪器共享信息渠道不通畅的间、方便实验室管理员对仪器的oid页脚...操作系统称呼为“安,第三层是系统运行库层,最后(1)应用程序层态之间任意的切换,这跟电脑系统活。值得一提的是该层中所有的代(2)应用程序框架层页脚...这对开发者能快速的开发而简化程序开发的构架设计,并(3)系统运行库层oid(4)Linux核层Linux核层给开发者提供一些基础功能,核心服务都依赖于Linux2.6核,其中相互的调用。例如:假设现在我自来编写一个浏览器,而是我们就是说,不同于我们平常编写的(1)活动(Activities)组件片、文字、列表等任意一种形式表现出来,也可以是两种或多种不同的形式组合而所有的活动(Activities)都是与用户交互的,活动的展示方式通常为全屏,但也会有一个窗口和它相对应。整个屏幕一般,如果开发者对它进行了修改那么也可能页脚...种额,会以一个弹出窗口的方式给用(2)服务(Services)组件在用户在收听电台广播的同又或者同时去完成一些其它的活动(activities)需要的计算,而且服务没有可视化的用户界面。服务(services)跟活动(activities)还有其他组件一样,在应用程序的耗时任务,但是它们不会阻止和干(3)广播接收者(Broadcastreceivers)组件公告并会做出量不足、已更换来电铃声、用户统的代码。当然开发者开发的应显示的用户界面的。最终广播多种方式去提醒用户从而获得用户可以通过操作该图标来得到相(4)容提供者(Contentproviders)组件需要互相共享数据,那么就要用到容提供者了。例如,通话记录Google在I/O大会上推出了一款全新的Android开发环境AndroidStudioAndroid工具,利用这译等五个全新的基础功能,这对开页脚.页脚...dAndroid不同是厂商,它们的屏幕给开发者提供下载,这对我们中发工具最显著的改变莫过于增加Beta捷的试运行开发的应用程(1)为用户提供账号的注册功能,用户点击进入注册界面,在用户名和密码上填(2)用户登录功能,用户注册好账号以后,在登录界面输入正确的登录信息,如..(3)仪器展示、新闻公告和规章制度的查看功能,用户可点击查看系统发布的相(4)仪器设备的预约功能,用户可对想使用的仪器设备进行提前的预约使用;(5)历史记录、使用状况等信息的查看功能; (6)使用具有管理权限的账号登录客户端,可对仪器的预约进行审核。(1)管理员登录服务器管理平台,可查看注册用户的基本信息、查看用户预约仪(2)管理员登录服务器管理平台,可管理仪器展示的基本信息,对服务器上展示(3)管理员登录服务器管理平台,可管理新闻公告和规章制度等信息,可对服务结得出,在数据库上需要建(1)用户表:该表用来保存注册用户的各项信息,其中包含用户名,用户密码,(2)仪器展示表:该表为仪器展示功能提供相关的信息和数据,其中包含仪器设(3)预约表:该表用来存储预约者申请使用仪器设备的各项信息,其中包含预约(4)中心资讯表:该表为新闻规章功能提供相关的信息和数据,其中包含新闻标(3)其它。(1)后台服务器:LeanCloud服务器;页脚...(2)客户端开发平台:AndroidStudio2.0;(3)客户端开发语言包:AndroidSDK+JDK1.6;算机操作系统:WindowsXP操作系统或以上操作系统;(5)手机操作系统:Android操作系统;(6)其它。进行设计和编程、使用手机4系统的概要设计1总体设计个端。分别是:前台客户端登录、预约和相关信息的查看,后各项信息的管理。对该系统的总体数据交互和逻辑处理服务端客户端页脚...而主界面中又分为首页、中(1)仪器展示功能:提供给用户查看实验室仪器的信息;(2)仪器预约:提供用户选择开始使用时间、结束使用时间和需要预约的仪器,(3)预约结果:提供给申请仪器预约的用户查看管理员对申请的答复状况;(4)历史记录查询:提供用户对预约的历史记录进行查询;(5)频率统计:把各仪器预约使用的次数转换成百分比的形式,显示在界面中,(1)提供用户上传头像;(2)提供用户填写手机;(3)提供用户修改性别。(1)提供给管理员一个上传仪器信息的平台,方便管理员能够很好发布实验室仪(2)提供给管理员一个发布新闻公告、规章制度的平台,方便管理员能够第一时(3)提供给管理员一个预约处理预约申请的平台,方便管理员处理用户对仪器设体-联系图..4.3数据库设计用户名仪器名称仪器图片仪器信息新闻标题数据库的设计是为了将存放在后台数据库中的资源共享,并提供给系统页面对其数密码用户新闻规章新闻图片据进行显示,同时也为管理员修改、添加、管删理除和更新信息提供便利,因此数据表的具体的关系话型可以通过上述的实体-联系图转换而来,并将关系模型图建立成正系表,(1)新闻规章表页脚.新闻图片新闻规章表预约状态页脚...(2)用户表用户用户ID密码根据图4-4可以定义出用户的数据表user,用户表用来提供给注册的用户保存所有用户手机号的注册信息。结构如表2所示:eilePhoneNumber性别说明用户名用户名(3)仪器展示表信息。它的属性图如图..仪器名称仪器名称仪器详情根据图4-5可定义出仪器展示的数据表display,仪器展示表用来保存、添加、修仪器展示表改和删除所有仪器展示的信息。结构如表3所示:仪器图片(4)仪器预约表间等基本信息。它的属预约用户名预约用户名开始时间字段预约仪器名..eonmber的设计原则(1)界面干净简洁而又不简单;(2)关注容而非修饰;(3)避免频繁使用状态对话框;(4)避免使用太过于固定和太过绝对的定位布局;(5)注重界面与用户的交互性,能给用户带来良好的使用体验。,及可维护(1)适当的为代码增加注释,包括一些方法和一些类,都必须加一些描述性的话,(2)各功能模块在编写代码时,间尽量分开来写,这有利于代码的修改和维护;(3)合理分配和使用各变量的作用域及周期;(4)变量、类、资源文件和布局的命名需要结合实际意义,尽量使用英文意思来(1)用户注册功能,如图5-1所示:输入用户名、密码客户端将输入内容以字节流发送至客户端服务器页脚.客户端接收数据,做相应跳转..(2)客户端登录功能,如图5-2所示:输入用户名、密码客户端将输入内容以字节流发送至客户端服务器的用户的信息,如果登入时输入并上传到服务器的信息与数据库中所保存的信息相匹True用户名、密码判断False配,便可实例化一个Intent对象,实现从登录界面到应用主界面的跳转。如果信息匹配有误,则登录失败并保存在登录界面上,出现弹窗消息提示登录信息有误。实现功能的关键代码在附录一中可见。(3)仪器预约功能,如图5-3所示:客户端接收数据,做相应跳转选择需要预约的仪器和时间将预约请求发送至服务器在预约仪器中添加使用一个监听器,实现onClick的方法,在判断到点击选择时间服务器保存预约信息进行预约处理实现功能的关键代码在附录五中可见。(4)仪器展示、历史记录、频率统计、新闻规章的查看功能,如图5-4所示:预约用户收到预约结果页脚.将列表元素在客户端显示.将列表元素在客户端显示Tab将请求发送至服务器同样是调用LeanCloud的jar包连接到数据库,将读取数据请求发送到服务器,服选择历史记录Tab将相对应的数据表结果造到数据库中返回的预约状态。实现这五个功能的关键代码分别在附录四、附录七、附录后台系统主要有用户信息管理,仪器信息管理,预约审核管理,新闻规章管理等。(1)管理员登录管理,如图5-5所示:向服向服务器发送登录请求,验证用户名和密码TrueFalse的管理界面,在控制台数据库中找到管理员客户端账号的登录publicstaticfinalStringADMINID74d0dcba157a6ba9af839940e2318639";重新登录页脚.管理员登录页脚.询.询publicstaticfinalStringADMINUSERNAME"管理员";(2)新闻规章和仪器展示管理,如图5-6所示:新闻规章列表向数据库发送请求,将数据显示到页面中(3)预约管理,如图5-7所示:加除改用户预约请求服务器接收到请求,把请求传给管理员账号处理将预约处理结果推送给预约用户将预约处理结果推送给预约用户IUI要开发者对艺术方面有一定的XMLUIAPP的UI界面进行布..(1)在AndroidStudio的应用程序工程的res/layout目录下对布局文件xml进行编(2)在Activity中调用setContentView(R.layout.布局文件名)的方法,从而对设使用XML布局文(1)在AndroidStudio中创建Android项目,名称为Instrument,新建一个用户注在该文件中,采用线性布局(LinearLayout)用水平居中方式呈现(vertical),并且xmlversionencodingutf>outxmlnsandroidschemasandroidapkresandroidayoutwidthmatchparentyoutheightmatchparentientationvertical满局ididetwritenameyoutwidthmatchparentlayoutheightdproidhintdmaxLengthddingdpingleLinetrue页脚.页脚...表示从0~256色extSizesptTypetextPasswordididetwritepwdyoutwidthmatchparentlayoutheightdpoidhintddingdpndroidsingleLinetrueoidtextColorffpdroidididbtnloginyoutwidthmatchparentbackgrounddrawableicphoneregbgxtColorffffffandroidtextSizesp/>I页脚...(3)在用户注册活动中,也就是在与UI设计界面相对应的Activity中,应用代ck{ateEditTextetwritenameateEditTextetwritepwdprotectedvoidonCreateBundlesavedInstanceState//生命周期初始化ceStatetivityregister数mBarUtilsinitSystemBarcontextRcolorcolorPrimaryprivatevoidinitView//初始视图、界面控件pwdEditTextfindViewByIdRidetwritepwdButtonbtn_login=(Button)findViewById(R.id.btn_login);nloginsetOnClickListenerthis}..publicvoidonClickViewvswitchv.getId()){caseR.id.btn_login:StringnameetwritenamegetTexttoStringtrim;StringpwdetwritepwdgetTexttoString.trim();wdnullnamelengthpwdlengthAVUseruser=newAVUser();表ersetUsernamenameersetPasswordpwdusersignUpInBackgroundnewSignUpCallbackpublicvoiddone(AVExceptione){if(e==null){ogressdismissToastmakeTextcontext功",Toast.LENGTH_SHORT).show();finish();}ull败ogressdismissToastmakeTextcontext册失败",Toast.LENGTH_SHORT).show();}}}elseToastmakeTextcontextToastLENGTHSHORTshow}}}将文本框填息插入到后台数据t页脚.页脚...(1)首先进入LeanCloud的官网,使用填写好注册信息后,登录到LeanCloud的得到新创建的数据库..(2)在LeanCloud的官网下载Android的SDK,将下载后的文件解压缩后的所以页脚.页脚...publicvoidonCreate(){AVOSCloud.initialize(this,"48Uf0C9eF3TIcV4nfJ7kaYpk-gzGzoHsz",mxAVInstallation.getCurrentInstallation().saveInBackground();}permissionandroidnameandroidpermissionINTERNETissionandroidnameandroidpermissionACCESSNETWORKSTATE(4)最后,就可以在Android工程项目中编写代码,建立需要的数据库了。假设AVObjecttestObject=newAVObject("display");estObjectputpicdescnameBackground..6实验与验证注册”按钮完成账号的注册。如写的信息,并将这些信息插入到密码功能;此外还添加了两录”按键,会向服务器发送登录并跳转到主界面,若登页脚.页脚...文本框来填写用户名和密码,等待用户按下“登录”按键后,开始判断用户在文本框输入的信息,并发送至服务器对其进行验证,在文本框中填写的登录信息无误,便实例化“登录失败”的提示窗口;若用户填写的登录信息不完整,会弹出“请填写登录信息”通过Fragment的方法,把主界面并分为“首页”、“中心资讯”和“我的信息”我的信..键,都会跳转到相理者对用户的预约请求进“预约结果”、“历史记录查询”、“使用频率..(1)仪器展示功能,该界面采用LinearLayout线性布局,列表以horizontal形页脚.页脚...(2)预约仪器功能,该界面采用LinearLayout线性布局,添加了三个可编辑文本间和仪器后,点击第四个按键“确定”键即可后向服务点击确定键,会出现“选项不能为交”的字样;若因为网络状况不良将预约用户名、预约开始时间、预约结束时间、预约仪..(3)预约管理功能,该功能只有在YyActivity中定义的ADMIN_USERNAME用户在限的用户称为管理员,管..据库提供的预约用户名、预约的仪,判断是否同意该用户提出的预约(4)预约结果、历史记录查询和使用频率统计的查看功能,用户在首页界面中点跳转进入..获取数据库是通过获取也同样是获室的相关动态,新闻规章..页脚...传到服务器,关键代码关键代码在附录十二中7总结和可靠性等因素。经过反复的思考器设备的展示、新闻规章、仪器使行预约。数据接收和处理在后台服学交流,一步一个脚印的前进。在在老师和同学的帮助还有我的努力次毕业设计,我在很多方面都得到这方面使我从中受益匪浅,也为我程并没有想象中的那么它编程实现,并不是一件简单的程的基本方法,但从来没有完整。通过这次的毕业设计,我深深,力争把学好这门专业知识并把理。还有我们平时会经常忽略一个问,都要把它当作一个实际使用的到完美的水平,并且更要符合实页脚.页脚...的计讨论设计制作遇到的计方案,并且在交流体的智慧与力量是个质的修炼,在以后的有些问题我还是没有感那些所有给我提出..辞孜孜教诲,我相信这会对我今后的进步都倾注了老师的心血,因为每解和虚心地指导,直到我真的弄明在毕步。我讲解我不懂的程序,让我能够更作生活里事事顺利,前途无量。感;是我伸出援助之手,让我可以顺顺利给我怀抱,在我失落的时候,是他。页脚...[1]琰.开发式实验室管理系统的设计与实现[D].:大学,2011.[2]扬.:全面推进依法治国也需要深化改革[EB/OL].news.xinhuanet./politics/2014-10/27/c_1112998021.htm,2014-10-27.Android的设计与实现[D].:大学,2013.[4]毕广吉.Java程序设计实例教程[M].:冶金工业,2007.[5]王保罗.Java面向对象程序设计[M].:清华大学,2003.[7]腾红,细明.信息系统分析与设计[M].:科学,2003.[8]吴亚峰,索依娜.Android核心技术与实例讲解[M].:电子工业,2010.AndroidD:交通大学,2009.[10]超.Android经典应用程序开发[J].:人力资源,2011.AndroidD:理工大学,2010.[12]靳岩,尚朗.Android开发入门与实践[M].:人民邮电,2009.[13]平,Android手机访问服务器的一种数据交互方法[J].:财经学院,2010.[14]玉平.Java输入输出流及在开发中的应用探讨[J].:市科技局,2009[15]丰盛.Android应用开发揭秘[M].:机械工业,2010.[16]马越.Android的架构与应用[D].:中国地质大学,2008.[17]云君.Android的设计与实现[M].:机械工业,2013.[18]卫国,昱禹.Android的架构与应用开发研究[J].:中南大学,2008[19]骏,小玉.Android驱动开发与移植实战详解[M].:人民邮电,2012..基于Android的僵尸网络设计与实现[J].:大学学报,2016.[21]丰生强.Android软件安全与逆向分析[M].:人民邮电,2013.[22]于志龙,名杰等.AndroidSDK开发例大全[M].:人民邮电,2012.Android物流信息采集系统[J].:大学学报,2016.[24]佐彬.Android开发入门与实战体验[M].:机械工业,2010.Android人事务管理系统设计[J].:建筑大学学报,2015.[26]吴志霞.基于Android平台的“战斗士”游戏软件案例设计及实现[J].:学院报,2016.[27]王向辉,国印等.Android应用程序开发[M].:清华大学,2010.页脚...一、实现用户登录界面功能关键代码:publicclassLoginActivityextendsActivityimplementsViewOnClickListenervateLoginActivitycontextteEditTextetnameteEditTextetpwdectedvoidonCreateBundlesavedInstanceStateeStateoutactivitylogin数arUtilsinitSystemBarcontextRcolortransparent}privatevoidinitView//初始视图、界面控件Buttonbtn_login=(Button)findViewById(R.id.btn_login);his片TextViewtvzhuceTextView)findViewById(R.id.tv_zhuce);tvzhucesetOnClickListenerthis//获取登录按键背景图片TextfindViewByIdRidetpwd}publicvoidonClick(Viewv){件login码ifusername=null&&username.length()>0&&password!=null&&password.length()>0){AVUser.logInInBackground(username,password,newLogInCallback(){//查到了publicvoiddone(AVUseruser,AVExceptione){if(e==null){ogressdismisse}else{ogressdismiss页脚...ToastmakeTextcontext登录失败",Toast.LENGTH_SHORT).show();}}}else{ToastmakeTextcontext登录信息",Toast.LENGTH_SHORT).show();er}privatevoidRegister(){}privatevoidinitView(){meFragmentnewHomeFragmenttsettingFragmentnewSettingFragmentsecondFragmentnewSecondFragmentfragmentsnewFragmenthomeFragmentsecondFragmentsettingFragment};TABnewRelativeLayoutTAB(RelativeLayout)findViewById(R.id.rl_search);TAB=(RelativeLayout)findViewById(R.id.rl_2);TABRelativeLayoutfindViewById(R.id.rl_me);findViewByIdRidibsearchiewfindViewByIdRidibViewByIdRidibmeABsetOnClickListenerthisABsetOnClickListenerthisABsetOnClickListenerthismentManagerbeginTransactiondfragmentcontainerhomeFragmenthomefragmentcontainersecondFragmentsecondRidfragmentcontainersettingFragmentset页脚...thidesecondFragmentntcommitpublicvoidonClick(Viewv){hvgetIdcaseRidrlsearchindexbreakidrlindexbreakidrlmeindexbreakif(currentTabIndex!=index){FragmentTransactiontrxgetSupportFragmentManagerbeginTransaction);currentTabIndexif(!fragments[index].isAdded()){fragmentcontainerfragmentsindexlectedfalseIndexindexprivatevoidinitView(Viewview){RelativeLayoutrlzdRelativeLayoutviewfindViewByIdR.id.rl_zd);RelativeLayoutrlyy=(RelativeLayout)view.findViewById(R.id.rl_yy);RelativeLayoutrlzs=(RelativeLayout)view.findViewById(R.id.rl_zs);RelativeLayoutrltj=(RelativeLayout)view.findViewById(R.id.rl_tj);manageview.findViewById(R.id.manage);页时获得“预约管理”这个按键的访问权限setOnClickListenerthissetOnClickListenerthiscordsetOnClickListenerthissetOnClickListenerthissetOnClickListenerthismanagesetOnClickListenerthis);}publicvoidonClick(Viewv){switch(v.getId()){dmanagestartActivitynewIntentcontextManagerActivityclassbreak管理,跳转到该界面idrlzdstartActivitynewIntentcontextZDActivityclassbreak结果eRidrlyystartActivitynewIntentcontextYyActivityclass页脚.页脚...break预约break记录查询idrlzsstartActivitynewIntentcontextZSActivityclassbreak展示caseR.id.rl_tj:getData();break;}}}privatevoidgetData(){query.findInBackground(newFindCallback<AVObject>(){publicvoiddoneListAVObjectlistAVExceptione){//查表pternewAppCommentAdapterAVObjectcontextlist,R.layout.item_device){publicvoidconvert(ViewHolderhelper,AVObjectitem){Viewviewhelper.getConvertView();TextViewtvtitleTextView)view.findViewById(R.id.tv_title);tv_title.setText(item.getString("name"));//读取仪器名称TextViewtvtitlesTextView)view.findViewById(R.id.tv_titles);TextitemgetStringdescAVFileavFile=item.getAVFile("pic");geViewviewfindViewByIdRidivpicncedisplayImageavFilegetUrlimgTouXAdapter}publicclassYyActivityextendsActivity{publicstaticfinalStringADMINUSERNAME"管理员";vateYyActivitycontext页脚..teTimePickerViewpvTimerivateLinearLayoutrltimerivateTextViewtvtimeprivateLinearLayoutrltime_end;privateTextViewtvtime_end;vateOptionsPickerViewsexPvOptionsivateLinearLayoutrldeviceivateTextViewtvdeviceprivateButtonbtnyyprivatebooleanstartTimetrue;protectedvoidonCreate(BundlesavedInstanceState){ceStateutactivityyyarUtilsinitSystemBarcontextRcolorcolorPrimaryeViewfindViewByIdRidivbackiewOnClickListenerpublicvoidonClick(Viewv){}}privatevoidinitView(){rltimeLinearLayoutfindViewByIdRidrl_time);rltimeendLinearLayoutfindViewByIdRid.rl_time_end);rldeviceLinearLayoutfindViewByIdRidrl_device);tvtimeTextViewfindViewById(R.id.tv_time);ndTextViewfindViewByIdRidtvtimeendtvdeviceTextViewfindViewByIdR.id.tv_device);btnyy(Button)findViewById(R.id.btn_yy);rl_device.setOnClickListener(newView.OnClickListener(){publicvoidonClick(Viewv){页脚...}btn_yy.setOnClickListener(newView.OnClickListener(){publicvoidonClick(Viewv){tringtimetvtimegetTexttoStringtringtimeendtvtimeendgetTexttoStringtringdevicetvdevicegetTexttoStringlltimelengthtimeendnulltime_end.length()>0&&device!=null&&device.length()>0){AVObjectrecord=newAVObject("record");dputusernameAVUsergetCurrentUser().getUsername());recordputuserAVUsergetCurrentUser);dputManagerActivityCOLUMNINSTALLATIONIDAVInstallationgetCurrentInstallation().getInstallationId());recordputtimetime;recordputtimeendtime_end);recordputdevicedeviceordsaveInBackgroundnewSaveCallbackpublicvoiddone(AVExceptione){ogressdismissif(e==null){ToastmakeTextcontext申请已提交",ToastLENGTHSHORTshow);push的预约需要审核",ADMIN_ID);}else{ToastmakeTextcontext失败",ToastLENGTHSHORTshow);}}}else{ToastmakeTextcontext能为空",ToastLENGTHSHORTshow);}}}页脚...privatevoidpush(Stringalert,StringinstallationId){AVPushpush=newAVPush();tobjectnewJSONObjectputalertalertsetPushToAndroidtruehsetDataobjectpushsetCloudQueryselectfromInstallationwhereinstallationIdstallationId");push.sendInBackground(newSendCallback(){publicvoiddone(AVExceptione){if(e==null){Toast.makeText(getActivity(),"推送成功",ToastLENGTHSHORTshow);//pushsuccessfully.}else{ToastmakeTextYyActivitythis失败"+ssageToastLENGTHSHORTshow//somethingwrong.}}}privatevoidinitTime(){TimenewTimePickerViewthismePickerViewTypeMONTHDAYHOURMINalendarcalendarCalendargetInstancepvTimesetRangecalendarget(Calendar.YEAR)-20,endarYEARvTimesetTimenewDateimesetCyclicfalseimesetCancelabletruesetOnTimeSelectListenernewTimePickerView.OnTimeSelectListener(){publicvoidonTimeSelect(Datedate){if(startTime){.etTimedate}else{extgetTimedate}}rl_time.setOnClickListener(newView.OnClickListener(){publicvoidonClick(Viewv){}rl_time_end.setOnClickListener(newView.OnClickListener(){publicvoidonClick(Viewv){}}privatevoidsetData(List<AVObject>list){cyclerViewsetAdapternewCommonAdapterAVObjectManagerActivitythisR.layout.item_manage,list){publicvoidconvertViewHolderholderfinalAVObjectavObject{holdersetTextRidnameavObjectgetString(COLUMN_USERNAME)+"预约"ObjectgetStringCOLUMNDEVICE仪器设备名getStringCOLUMNDATEENDOLUMNPERMISSIONif(permission==0){holdersetTextRidpermission受");holder.setOnClickListener(R.id.permission,newView.OnClickListener(){页脚...publicvoidonClick(Viewv){avObjectput(COLUMN_PERMISSION,1);avObject.saveInBackground(newSaveCallback(){publicvoiddone(AVExceptione){tMessage}holdersetVisibleRidrefusetrue);holder.setOnClickListener(R.id.refuse,newView.OnClickListener(){publicvoidonClick(Viewv){vObjectputCOLUMNPERMISSIONavObject.saveInBackground(newSaveCallback(){publicvoiddone(AVExceptione){tMessage}elseifpermissionholdersetTextRidpermission意");holdersetBackgroundResRidpermission0);}elseif(permission==2){holdersetTextRidpermission拒绝");holdersetBackgroundResRidpermission}}}privatevoidsetData(List<AVObject>list){cyclerViewsetAdapternewCommonAdapterAVObjectZDActivitythisR.layout.item_manage,list){publicvoidconvertViewHolderholderfinalAVObjectavObject{holder.setText(R.,"预约"+页脚...getStringManagerActivityCOLUMNDEVICEegetStringManagerActivityCOLUMNDATEtgetStringManagerActivityCOLUMNDATEENDManagerActivityCOLUMNPERMISSIONif(permission==0){holdersetBackgroundResRidpermission,0);holdersetTextRidpermission理员审核中");}elseif(permission==1){holdersetTextRidpermission理员已同意");holder.setBackgroundRes(R.id.permission,0);}elseif(permission==2){holdersetTextRidpermission管理员拒绝");holder.setBackgroundRes(R.id.permission,0)};}}publicclassRecordActivityextendsActivity{vateRecordActivitycontextateSwipeRefreshLayoutswipeRefreshLayoutivateListViewlistViewprivateListRecordtotleListnewArrayList>();vateAppCommentAdapterRecordappcommentAdapterprotectedvoidonCreate(BundlesavedInstanceState){ceStatetivityrecordarUtilsinitSystemBarcontextRcolorcolorPrimaryeViewfindViewByIdRidivbackiewOnClickListenerpublicvoidonClick(Viewv){页脚.页脚...}}privatevoidinitView(){ipeRefreshLayoutewByIdRidswipefreshlayoutmoviefragmenttColorSchemeColorsnewintRcolorcolorRedorcolorgreenfreshListenernewSwipeRefreshLayout.OnRefreshListener(){publicvoidonRefresh(){freshingfalse}ewByIdRidlistviewmoviefragmentappcommentAdapter=newAppCommentAdapter<Record>(context,totleList,R.layout.item_record){publicvoidconvertViewHolderhelperRecorditem{Viewviewhelper.getConvertView();TextViewtv_title=(TextView)viewfindViewByIdRidtvtitle);TextitemgetUsergetUsernameTextViewtv_content=(TextView)viewfindViewByIdRidtvcontent);}dapter}privatevoidgetData(){AVQueryAVObjectquery=newAVQuery<AVObject>("record");imitudeuseryDescendingcreatedAtquery.findInBackground(newFindCallback<AVObject>(){..publicvoiddoneListAVObjectlistAVExceptione){if(list!=null&&list.size()>0){for(AVObjectobj:list){AVUseruser=obj.getAVUser("user");gdeviceobjgetStringdevicegtimeobjgetStringtimeStringurl="";dnewRecordusertimedevice}dapternotifyDataSetChanged}}}}publicclassChartActivityextendsActivity{vateChartActivitycontextvateHistogramViewhvvateHistogramViewhvvateHistogramViewhvvateHistogramViewhvvateHistogramViewhvprotectedvoidonCreate(BundlesavedInstanceState){ceStatetactivitychartarUtilsinitSystemBarcontextRcolorcolorPrimaryeViewfindViewByIdRidivbackiewOnClickListenerpublicvoidonClick(Viewv){}ratesgetIntentgetDoubleArrayExtraARG}privatevoidinitView(double[]rates){页脚...hvHistogramViewfindViewByIdRid.hv1);hvsetRateBackgroundIdRdrawabledqcolumn);etOrientationLinearLayoutVERTICALhvHistogramViewfindViewByIdRid.hv2);hvsetRateBackgroundIdRdrawabledqcolumn);etOrientationLinearLayoutVERTICALhvHistogramViewfindViewByIdRid.hv3);hvsetRateBackgroundIdRdrawabledqcolumn);etOrientationLinearLayoutVERTICALhvHistogramViewfindViewByIdRid.hv4);hvsetRateBackgroundIdRdrawabledqcolumn);etOrientationLinearLayoutVERTICALhvHistogramViewfindViewByIdRid.hv5);hvsetRateBackgroundIdRdrawabledqcolumn);etOrientationLinearLayoutVERTICALhvsetProgressrateshvsetProgressrateshvsetProgressrateshvsetProgressrateshvsetProgressrates}}publicclassSecondFragmentextendsFragment{vateFragmentActivitycontextateSwipeRefreshLayoutswipeRefreshLayoutprivateListnewstotleListnewArrayList>();vateAppCommentAdapternewsappcommentAdapterivateListViewlistViewteBitmapUtilsbitmapUtilsublicViewonCreateViewLayoutInflaterinflaterViewGroupcontainerBundlesavedInstanceState){Viewviewinflaterinflate(R.layout.fragment1,container,ivitybitmapUtilsnewBitmapUtilscontextview}privatevoidinitView(Viewview){页脚.页脚...ipeRefreshLayoutviewfindViewByIdRidswipefreshlayoutmoviefragment);tColorSchemeColorsnewintRcolorcolorRedorcolorgreenfreshListenernewSwipeRefreshLayout.OnRefreshListener(){publicvoidonRefresh(){freshingfalse}mmentAdapternewAppCommentAdapternewscontexttotleListR.layout.item_detailactivity){publicvoidconvertViewHolderhelpernewsitem{Viewviewhelper.getConvertView();TextViewtv_title=(TextView)viewfindViewByIdRidtvtitle);xtitemgetTitleTextViewtv_content=(TextView)viewfindViewByIdRidtvcontent);TextitemgetContentImageViewimgTouX=(ImageView)viewfindViewByIdRidivpic);BitmapDisplayConfigconfignewBitmapDisplayConfig();adingDrawablegetResourcesgetDrawableRmipmappersonalavatadFailedDrawablegetResourcesgetDrawableRmipmappersonalaif(item.getPicurl()!=null){bitmapUtilsdisplayimgTouXitemgetPicurlconfig);}else{personalavatar}}dapter页脚...{longid){ewsntotleListgetpositionlActivityclasstleContentrl}}privatevoidgetData(){AVQueryAVObjectquery=newAVQuery<AVObject>("news");imityDescendingcreatedAtquery.findInBackground(newFindCallback<AVObject>(){publicvoiddoneListAVObjectlistAVExceptione){if(list!=null&&list.size()>0){for(AVObjectobj:list){gtitleobjgetStringtitleStringcontent=obj.getString("content");AVFilefile=obj.getAVFile("pic");Stringurl="";if(file!=null){urlfilegetUrl;}dnewnewstitlecontenturl}dapternotifyDataSetChanged}}}}publicclassNewsDetailActivityextendsActivity{vateNewsDetailActivitycontextivateStringtitlevateStringcontent..ateStringpicteBitmapUtilsbitmapUtilsprotectedvoidonCreate(BundlesavedInstanceState){ceStatetactivitydetailbitmapUtilsnewBitmapUtilscontextarUtilsinitSystemBarcontextRcolorcolorPrimaryeViewfindViewByIdRidivbackiewOnClickListenerpublicvoidonClick(Viewv){}tentgetStringExtratitletIntentgetStringExtracontentpicgetIntentgetStringExtra"pic");TextViewtvtitleTextViewfindViewByIdR.id.tv_title);TextViewtvcontentTextViewfindViewByIdR.id.tv_content);ImageViewivpicImageViewfindViewByIdR.id.iv_pic);titlesetTexttitletcontentBitmapDisplayConfigconfignewBitmapDisplayConfig();adingDrawablegetResourcesgetDrawableRmipmappersonalavatadFailedDrawablegetResourcesgetDrawableRmipmappersonalaif(pic!=null){bitmapUtilsdisplayivpicpic,config);ersonalavatar}}}publicvoidonClick(Viewv){etIdcaseRidbackfinishbreakRidrlsexsexPvOptionsshowbreak页脚.页脚...seRidrlpicIntentintentnewIntentsultintentTakePhotobreakrlphonebuildernewCustomDialogBuildercontextbuildersetTitle机号");LinearLayoutlview=(LinearLayout)View.inflate(context,R.layout.edittext,ndViewByIdRidinputildersetConte

温馨提示

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

评论

0/150

提交评论