欢迎来到天天文库
浏览记录
ID:6056779
大小:27.50 KB
页数:2页
时间:2018-01-01
《开源项目jchat 编译以及源码分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Author:banketreeAndroidjChat是一个Android手机上基于位置的聊天软件,采用P2P通讯机制。JChat的编译:1、配置环境,需要的软件有Android模拟器,JADELeap(JADE是多agent开发框架),J2SE(至少1.5)。2、进入开发设置,运行模拟器,安装JChat文件(可通过命令adbinstalljChat.apk),运行JADE平台(可通过命令java-cpJadeLeap.jar-Djade_domain_df_autocleanup=tr
2、uejade.Boot-gui),从模拟器中运行程序JChat,在JADE平台菜单中设置主机以及端口。最后在JChat程序菜单中点击连接按钮进行连接操作(详情可以看官方文档--下载包中有)。3、源码分析之前,需要认真学习一下Jade的Android的编程(有聊天程序源码下载,都在下载包中),编译源码,需要到google中申请mapapi的key,不过由于神奇的国度制约的原因,申请连接的网站无法访问,需要通过其它的方法,比如代理等等,申请到的key需要放到homepage.xml中。下面来进行分析吧,分析只是针对源码,其它的不涉及。本项目共25个目标文件。Conta
3、ctListActivity程序的启动页,内部含有控制地图以及Jade连接等操作,方法onConnected是JadeGateWay里面的回调方法。ChatActivity是聊天的主界面,主要通过JadaGateway操作连接,发送,接受等ChatSessionNotificationManager聊天会话通知管理自定义类,记录了所有的进程清单。Contact接触者自定义类,含有名称,电话号码,状态值,是否在sd卡里面…。ContactListAdapter接触者列表适配器,主要用户显示联系人列表的信息。ContactListChanges接触者列表变化的自定义类
4、,接触者列表状态更新。ContactLocation接触者位置类,是否有移动等动作。ContactManager接触者管理类,主要负责接触者的添加、删减以及UI更新等功能。ContactsPositionOverlay接触者的位置显示物,Overlay的子类,主要负责在地图上显示自定义图像,内置滚动与否以及图像大小改变与否,在地图上话画在线联系人以及场景等。ContactsUpdaterBehaviour主要表现在其设置由MsnAgent执行。它基本上执行主要业务:定期更新的DF的手机中所有接触的位置(由模拟的GPS更新)。GeoNavigator自定义导航类,启
5、动或关闭联络位置的更新。GuiEventHandlerUI处理类。IEventHandler事件处理类接口。JadeParameterDialogJade参数设置对话框。JChatApplication应用程序类,存贮了全局变量信息,以及初始化服务器以及端口号,手机号等MsnAgent消息代理(Jade的Android的编程)MsnEventMgr消息事件的自定义类,含有事件名,地图存储事件等参数信息,MsnSession消息会话,含有所有参与者的电话号码,以及消息,MsnSessionAdapter消息会话适配器,显示消息会话视图。MsnSessionManag
6、er消息会话管理的自定义类,主要是启动会话,添加会话,移除会话,返回会话,添加消息到会话等操作。MsnSessionMessage消息会话消息的自定义累,含有时间、内容、发送者姓名以及电话号码等。MultiSelectionListView多选列表SendSMSActivity发送消息界面,执行发送任务。SMSIntentReceiver消息接收广播,主要负责消息的接收。程序主要是已消息会话为主,引进了Google地图显示联系人的位置等信息。
此文档下载收益归作者所有