`
zhonglunshun
  • 浏览: 139095 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

一口气看完驴友源码

阅读更多

 

一口气看完一个项目源码(一)

自学安卓也有一年时间了,很快到了要找工作的时候了,但是自己还只做了一个项目,怎么办?听前辈们说,找别人的源码研究,于是,说干就干,我这次找了网上找的一个驴友的源码,和大家讲解下里面的实现思路,帮助大家更快看完一个源码。为了读者方面,我也把这个源码贴出来,有兴趣的朋友根据步骤一步一步来。

 

       我们把这个软件安装完成后,发现里面的功能分为四个模块:旅游记忆,结伴游,好友/关注者,其他功能。其中,数其他功能里面的子模块数最多,所以我们从最多的讲起。

 

用户注册:这个功能整体上来说就是在安卓端填写信息提交到服务端保存起来这样一个需求,所以我们要做的就是写好安卓端的界面,然后一个提交按钮,把数据提交到服务器,怎么提交呢?驴友是这么做的:安卓端把用户信息以xml的形式装在一个StringBuilder里面,然后便是通过一个非常简单的HttpURLConnection请求,将数据写到服务器端,服务器端的servlet收到了数据就把客户端提交过来的这些数据保存到服务器的MySQL数据库中,(源码没做任何优化,我觉得可以加一个数据库连接池)。服务器对客户端提交的数据处理完了以后,给用户写响应数据,用户拿到这些数据判断是否登陆成功,是的话就转到主界面。

 

 

用户登陆:这个也很简单,原理和注册一样,也是安卓端写一个界面,然后用户提交用户信息到服务器,服务器也写一个servlet来处理这些数据,处理过程就是查询数据库,看有没有用户提交过来的这条用户记录,然后给用户回写一个响应,用户根据响应判断是否登陆成功。

 

 

新建记忆:这个也很简单,说的通俗点,和前面注册登陆流程没啥两样,还是客户端写好界面,提交数据到服务器,然后服务器处理数据,把这些数据保存到数据库,就这么简单。用户还可以选择保存到本地,也就是暂存,点击暂存按钮,数据就保存在Androidsqlite服务器中。

 

 

继续未发布的消息:这个也是很简单,因为新建记忆有暂存到本地Sqlite数据库,因此,我们就直接把暂存的数据从数据库里面取出来,然后装到一个bundle里面,通过intent 带到新建记忆的activity,然后新建记忆的activity对这些数据处理并填充到界面中。

 

 

发起结伴游:原来以为这个会有点不同的,看了以后发现和前面的几乎没啥不同,点击发起按钮的时候,把用户填写的数据发送到服务器servlet接受处理,然后给用户一个响应结果,客户端发过去用的还是StringBuilderXml格式,然后服务器通过Sax解析解析数据保存到服务器端的MySQL数据库。

 

 

以上便是“其他功能”这个模块里面的所有子功能实现。接下来讲旅游记忆模块。

旅游记忆模块实现步骤,第一步发一条消息给服务器,发消息的格式和上面讲的一样,只是发送的只有一条请求多少条数据的消息,服务器得到了用户要请求的条数后,取用户需要的条数返回给客户端,客户端通过inputStream 拿到服务端返回的数据,通过解析这些数据,把这些数据封装到集合里面,然后填充到ListView里面,显示给用户看。

 

 

结伴游模块和旅游记忆模块类似,请求方式和数据处理方式参照旅游记忆,但是这个新增了条目点击,点击条目跳转到详情显示页面,通过intent携带数据过去显示。

 

 

好友/关注者模块:

1)因为小生资质愚钝,里面的表结构没看懂,看懂的同学告诉我下。

大体步骤为下:

 

1.开启线程t1,用户请求服务器获取服务端数据库中的好友联系人列表,得到了好友列表后,通过客户端的解析,把数据封装在list容器中(这里是放在String类型的list中,我觉得可以放在一个BeanList中),也就是所有的好友。

 

2.开启线程t2,获取关注者数据,方法和t1一样,通过请求服务器获取到所有关注者的list

 

3.开启线程t3,获取所有好友申请的数据,然后也是装在好友申请的list中。

 

4.把获取到的这些数据填充到expandableListView里面,中间用到了onCreateContextMenu,百度之,发现这个东西和onCreateOptionMenu的最大区别在于前者是针对每一个View的,而后者只是针对当前activity的,只要给某一个view注册了contentMenu,长按这个view的时候都会响应菜单弹出事件,这个菜单和activity的菜单当然是区分开的。源码中对每一个expandableListViewitem都注册了相应的contentMenu,当用户长按的时候会有不同响应事件,然后通过调用onContextItemSelected处理菜单点击事件。以拒绝好友请求为例,当用户选择拒绝好友请求,响应事件就是向服务器的DeleteApplyServlet发送请求,然后服务器端删除这条请求记录。其它类似。

 

这样一个源码大致了解了,需要深入的朋友可以仔细看看源码,里面确实有些可以借鉴的地方。

 

 

0
0
分享到:
评论

相关推荐

    驴友格子网源码

    驴友格子网源码,作为一款asp网站源码,是专为户外爱好者打造的社区平台,其设计思路独特,以“格子”为特色,旨在构建一个简洁、易用且充满互动性的网络空间。在深入分析这个源码之前,我们先来了解一下驴友文化与...

    Android 驴友社交系统源码-IT计算机-毕业设计.zip

    本篇我们将深入探讨一个名为“Android驴友社交系统”的毕业设计项目源码,这是一款专为爱好旅行的用户打造的社交应用。通过对源码的分析,我们可以了解Android应用开发的基本流程,以及如何构建一个功能完善的社交...

    驴友源码站长俱乐部论坛源码

    驴友源码站长俱乐部论坛系统 V2.01 演示地址:http://www.zzlmw.com/ 下载地址:http://www.caifuw.com/zzlmwFree.rar 论坛系统后台地址:登录论坛点管理即可进入 管理员账号:admin 密码:admin888

    Android 驴友社交系统源码.rar

    【Android 驴友社交系统源码】是一个专门为户外旅行爱好者设计的移动应用程序源代码,它提供了丰富的功能,旨在帮助驴友们发现、分享旅行信息,结伴同行,并进行社交互动。这个系统的实现基于Android平台,涵盖了...

    Andorid项目源码 驴友社交系统 客户端+ 服务器端 (源码)

    Andorid项目源码 驴友社交系统 客户端+ 服务器端 (源码)Andorid项目源码 驴友社交系统 客户端+ 服务器端 (源码)Andorid项目源码 驴友社交系统 客户端+ 服务器端 (源码)Andorid项目源码 驴友社交系统 客户端+ ...

    Android应用源码驴友社交系统.zip

    首先,从标题“Android应用源码驴友社交系统”可以看出,这是一个基于Android平台开发的社交应用。Android作为全球最大的智能手机操作系统,拥有庞大的开发者社区和丰富的开发资源。开发者们可以使用Java或Kotlin这...

    安卓app开发项目-驴友社交系统(源码).zip

    安卓app开发项目-驴友社交系统(源码).zip安卓app开发项目-驴友社交系统(源码).zip安卓app开发项目-驴友社交系统(源码).zip安卓app开发项目-驴友社交系统(源码).zip安卓app开发项目-驴友社交系统(源码).zip安卓app...

    驴友社交网络源码

    【驴友社交网络源码】是一个专为户外爱好者设计的社交平台,其核心是通过Android技术构建的。在深入探讨这个源码之前,我们需要了解Android平台的基础知识,它是一种基于Linux内核的操作系统,主要用于移动设备,如...

    小程序源码 聊天通讯 驴友社交系统源码.rar

    免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...

    Android代码-驴友社交系统源码.zip

    本篇将详细探讨一个以“驴友”为主题的社交系统源码,深入了解其背后的Android开发技术,以及如何构建一个支持用户互动、分享旅行经验、发现新旅程的平台。 首先,我们来关注这个系统的整体架构。在Android应用开发...

    Android 驴友社交系统源码.zip

    "Android 驴友社交系统源码"就是一个典型的例子,它专门服务于热爱旅行、户外探险的驴友们,提供了一个分享旅行经历、寻找同行伙伴、交流旅行心得的平台。本文将深入探讨这一系统的源码,揭示其背后的设计理念和技术...

    驴友社交系统源码.rar

    驴友社交系统源码.rar 驴友社交系统是一个基于场景的Mobile SNS系统,它的目标是开发一种新型的Mobile SNS的结构。这种新型的结构包括不同于传统SNS的新颖的用户界面以及驱动Mobile SNS的..

    Android源码——驴友社交系统源码.zip

    今天我们将探讨的是一个特别的案例——"Android源码——驴友社交系统源码.zip"。这个压缩包包含了构建一个针对旅行爱好者,或者说“驴友”的社交平台的源代码。这样的系统设计涉及到众多Android开发的关键知识点,...

    Android 驴友社交系统源码

    基于android的开发交友系统驴友社交系统是一个基于场景的Mobile SNS系统,它的目标是开发一种新型的Mobile SNS的结构。这种新型的结构包括不同于传统SNS的新颖的用户界面以及驱动Mobile SNS的逻辑设计。新颖的用户...

    Android源码——驴友社交系统源码.7z

    本篇将重点解析"Android源码——驴友社交系统源码",旨在帮助读者理解和学习如何构建一个面向旅行爱好者的社交应用。 首先,我们看到压缩包中包含了一个名为"源码说明.txt"的文件,这通常是项目开发者的注释或指南...

    安卓Android源码——驴友社交系统源码.zip

    【安卓Android源码——驴友社交系统源码.zip】是一个包含安卓应用开发源代码的压缩包,主要针对驴友社交这一特定应用场景。该系统旨在为爱好旅行的用户提供一个互动交流的平台,可能包括功能如发布旅行日志、分享...

Global site tag (gtag.js) - Google Analytics