开源项目Jchat 编译以及源码分析
2012-07-11 08:20
591 查看
Android jChat 是一个 Android 手机上基于位置的聊天软件,采用P2P通讯机制。
本下载包含有:开发文档以及AndroidjChat源码和JADE应用的一个聊天测试程序(JadeAndroid-Programming-Tutorial 有说明)。
JChat 的编译:
1、 配置环境,需要的软件有Android 模拟器,JADE Leap(JADE是多agent开发框架),J2SE (至少1.5),如果需要编译LocationProvider,就需要下载ant工具了。
2、 进入开发设置,运行模拟器,安装JChat文件(可通过命令adbinstall <PATH_TO_APK>\jChat.apk),运行JADE平台(可通过命令java-cp <PATH_TO_JADE_LEAP_JAR>\JadeLeap.jar-Djade_domain_df_autocleanup=true jade.Boot -gui ),从模拟器中运行程序JChat,在JADE平台菜单中设置主机以及端口。设置措施需要在官网中下载MockedGPS项目进行设置(MockedGPSLocationProvider.apk),也可自己使用ant编译源码,这个也是开源的,最后在JChat程序菜单中点击连接按钮进行连接操作(详情可以看官方文档--下载包中有)。
3、 源码分析之前,需要认真学习一下Jade的Android的编程(有聊天程序源码下载,都在下载包中),编译源码,需要到google中申请 map api 的key,不过由于神奇的国度制约的原因,申请连接的网站无法访问,需要通过其它的方法,比如***等等,申请到的key 需要放到homepage.xml中。
下面来进行分析吧,分析只是针对源码,其它的不涉及。
本项目共25个目标文件。
ContactListActivity程序的启动页,内部含有控制地图以及Jade连接等操作,方法onConnected是JadeGateWay里面的回调方法。JadeGateWay是开源里面的一个库,目前没开源。
ChatActivity 是聊天的主界面,主要通过JadaGateway操作连接,发送,接受等
ChatSessionNotificationManager聊天会话通知管理自定义类,记录了所有的进程清单。
Contact 接触者自定义类,含有名称,电话号码,状态值,是否在sd卡里面…。
ContactListAdapter接触者列表适配器,主要用户显示联系人列表的信息。
ContactListChanges接触者列表变化的自定义类,接触者列表状态更新。
ContactLocation 接触者位置类,是否有移动等动作。
ContactManager 接触者管理类,主要负责接触者的添加、删减以及UI更新等功能。
ContactsPositionOverlay接触者的位置显示物,Overlay的子类,主要负责在地图上显示自定义图像,内置滚动与否以及图像大小改变与否,在地图上话画在线联系人以及场景等。
ContactsUpdaterBehaviour主要表现在其设置由MsnAgent执行。它基本上执行主要业务:定期更新的DF的手机中所有接触的位置(由模拟的GPS更新)。
GeoNavigator 自定义导航类,启动或关闭联络位置的更新。
GuiEventHandlerUI处理类。
IEventHandler 事件处理类接口。
JadeParameterDialog Jade参数设置对话框。
JChatApplication 应用程序类,存贮了全局变量信息,以及初始化服务器以及端口号,手机号等
MsnAgent 消息代理(Jade的Android的编程)
MsnEventMgr消息事件的自定义类,含有事件名,地图存储事件等参数信息,
MsnSession 消息会话,含有所有参与者的电话号码,以及消息,
MsnSessionAdapter消息会话适配器,显示消息会话视图。
MsnSessionManager消息会话管理的自定义类,主要是启动会话,添加会话,移除会话,返回会话,添加消息到会话等操作。
MsnSessionMessage消息会话消息的自定义累,含有时间、内容、发送者姓名以及电话号码等。
MultiSelectionListView多选列表
SendSMSActivity 发送消息界面,执行发送任务。
SMSIntentReceiver消息接收广播,主要负责消息的接收。
程序主要是已消息会话为主,引用了Google地图显示联系人的位置以及更新等功能。
开源项目Jchat 编译以及源码分析
本下载包含有:开发文档以及AndroidjChat源码和JADE应用的一个聊天测试程序(JadeAndroid-Programming-Tutorial 有说明)。
JChat 的编译:
1、 配置环境,需要的软件有Android 模拟器,JADE Leap(JADE是多agent开发框架),J2SE (至少1.5),如果需要编译LocationProvider,就需要下载ant工具了。
2、 进入开发设置,运行模拟器,安装JChat文件(可通过命令adbinstall <PATH_TO_APK>\jChat.apk),运行JADE平台(可通过命令java-cp <PATH_TO_JADE_LEAP_JAR>\JadeLeap.jar-Djade_domain_df_autocleanup=true jade.Boot -gui ),从模拟器中运行程序JChat,在JADE平台菜单中设置主机以及端口。设置措施需要在官网中下载MockedGPS项目进行设置(MockedGPSLocationProvider.apk),也可自己使用ant编译源码,这个也是开源的,最后在JChat程序菜单中点击连接按钮进行连接操作(详情可以看官方文档--下载包中有)。
3、 源码分析之前,需要认真学习一下Jade的Android的编程(有聊天程序源码下载,都在下载包中),编译源码,需要到google中申请 map api 的key,不过由于神奇的国度制约的原因,申请连接的网站无法访问,需要通过其它的方法,比如***等等,申请到的key 需要放到homepage.xml中。
下面来进行分析吧,分析只是针对源码,其它的不涉及。
本项目共25个目标文件。
ContactListActivity程序的启动页,内部含有控制地图以及Jade连接等操作,方法onConnected是JadeGateWay里面的回调方法。JadeGateWay是开源里面的一个库,目前没开源。
ChatActivity 是聊天的主界面,主要通过JadaGateway操作连接,发送,接受等
ChatSessionNotificationManager聊天会话通知管理自定义类,记录了所有的进程清单。
Contact 接触者自定义类,含有名称,电话号码,状态值,是否在sd卡里面…。
ContactListAdapter接触者列表适配器,主要用户显示联系人列表的信息。
ContactListChanges接触者列表变化的自定义类,接触者列表状态更新。
ContactLocation 接触者位置类,是否有移动等动作。
ContactManager 接触者管理类,主要负责接触者的添加、删减以及UI更新等功能。
ContactsPositionOverlay接触者的位置显示物,Overlay的子类,主要负责在地图上显示自定义图像,内置滚动与否以及图像大小改变与否,在地图上话画在线联系人以及场景等。
ContactsUpdaterBehaviour主要表现在其设置由MsnAgent执行。它基本上执行主要业务:定期更新的DF的手机中所有接触的位置(由模拟的GPS更新)。
GeoNavigator 自定义导航类,启动或关闭联络位置的更新。
GuiEventHandlerUI处理类。
IEventHandler 事件处理类接口。
JadeParameterDialog Jade参数设置对话框。
JChatApplication 应用程序类,存贮了全局变量信息,以及初始化服务器以及端口号,手机号等
MsnAgent 消息代理(Jade的Android的编程)
MsnEventMgr消息事件的自定义类,含有事件名,地图存储事件等参数信息,
MsnSession 消息会话,含有所有参与者的电话号码,以及消息,
MsnSessionAdapter消息会话适配器,显示消息会话视图。
MsnSessionManager消息会话管理的自定义类,主要是启动会话,添加会话,移除会话,返回会话,添加消息到会话等操作。
MsnSessionMessage消息会话消息的自定义累,含有时间、内容、发送者姓名以及电话号码等。
MultiSelectionListView多选列表
SendSMSActivity 发送消息界面,执行发送任务。
SMSIntentReceiver消息接收广播,主要负责消息的接收。
程序主要是已消息会话为主,引用了Google地图显示联系人的位置以及更新等功能。
开源项目Jchat 编译以及源码分析
相关文章推荐
- vs2008编译QT开源项目--太阳神三国杀源码分析(一) 项目编译及整体分析
- vs2008编译QT开源项目--太阳神三国杀源码分析(一) 项目编译及整体分析
- vs2008编译QT开源项目--太阳神三国杀源码分析(三) 皮肤
- vs2008编译QT开源项目--太阳神三国杀源码分析(五) 分牌及出牌
- vs2008编译QT开源项目--太阳神三国杀源码分析(二) 客户端添加武将
- vs2008编译QT开源项目--太阳神三国杀源码分析(四) 动画
- vs2008编译QT开源项目--太阳神三国杀源码分析(三) 皮肤
- Android部分开源项目源码分析之--图片滑动的效果
- Android部分开源项目源码分析之---Volley源码分析(一)
- 【Android开源项目分析】android轻量级开源缓存框架——ASimpleCache(ACache)源码分析
- Eclipse 项目转 android studio 编译apk太大原因分析,以及解决方法
- 开源项目ExpandableTextView使用和源码分析
- 开源项目GridViewWithHeaderAndFooter使用和源码分析
- Android 开源项目源码分析第一期正式发布
- 7 用gradle 编译 开源项目源码