SlideShare a Scribd company logo
推聊 - 3 分钟可运行起来的开源 Android

手机聊天系统



推聊概述 PushTalk Overview

推聊是一个基于极光推送的 Android 手机聊天系统。支持群聊与点对点聊天。当前包括 An

droid 客户端与 Java 服务器端。3 分钟就可以整套系统跑起来。




开源项目官方网站


http://github.com/good-life/pushtalk
功能与特点


功能列表



        频道里群聊

        与其他用户点对点聊天

        聊天支持文字、表情、URL 等

        创建频道、加入频道

        注册用户(不需要密码)

        我的频道

        我的最近聊天

        聊天记录缓存

        客户端选择聊天服务器、添加聊天服务器



特点
简单到极致的 http 聊天服务器:一个 jar 包跑起来

                 轻量级客户端:聊天界面使用 Webview 的方式

                 下行消息推送基于 JPush
                              (一个免费的第三方 Android Push 服务),

                 上行消息采用 http 请求的方式实现



聊天服务器


推聊的服务器端使用 Java 语言编写,基于最简单实用的开源框架。



                 http 服务器使用 Jetty:轻量级的 Java Servlet 容器。

                 数据库使用 H2: 轻量级的 Java 内存/文件数据库。

                 页面模板使用 Freemarker:轻量级的 Java 页面模板引擎。

                 打包时集成为一个整体 jar 包(包含所有的依赖包)



要运行推聊服务器端,请在 github 文件下载页 https://github.com/good-life/PushTalk/dow

nloads/ 下载推聊服务器 jar 文件。



使用如下命令运行服务器:



java -Dfile.encoding=UTF-8 -jar pushtalk-server-with-dependencies.jar


注:实际的文件名后边一般会加上一个版本号。


上述命令运行后:



                 一个 http server 启动了,监听端口为 10010

                 浏览器里输入 http://localhost:10010 则可以访问到界面
要正确地运行服务器,需要通过客户端访问



推聊服务器默认使用 10010 端口。可以在上述命令后指定使用另外的端口。比如以下命

令指定使用 10011 来启动推聊聊天服务器:



java -jar pushtalk-server-with-dependencies.jar 10011


Android 客户端


客户端运行,请在 github 文件下载页 https://github.com/good-life/PushTalk/downloads/

下载 Android apk 安装到 Android 手机即可。



你也可以自己编译 /client-android 项目之后安装到手机。



客户端默认内置官方聊天服务器地址。也可以直接在客户端添加新的服务器,选择新的聊天

服务器。



如果你有服务器资源,可以长期运行,欢迎你架设推聊聊天服务器,请添加到以下的页面。

经过测试没有问题,会被选择预置到客户端代码里:


https://github.com/good-life/PushTalk/wiki/PushTalk-Third-Party-Servers



开发者支持


欢迎广大开发者加入本开源项目,大家一起来不断地丰满、完善推聊。



本人是因为兴趣业余时间来开发推聊,考虑到 IM 占用的时间太多,所以请谅解,不提供

任何 IM 的沟通方式。希望大家以如下的方式交流:
Email: pushtalk.org@gmail.com

             项目 Wiki: https://github.com/good-life/PushTalk/wiki

             项目 Bug: https://github.com/good-life/PushTalk/issues


             PushTalk 频道:pushtalk, 报告 bug, 新功能讨论 等



代码提交方式:请先提交 Bug 修复,把 diff 以文件方式发邮件给我。合作多次后,我可以

把你加入到本项目贡献者里来,你就可以随时自由地提交代码了。



你也可以自由地 fork 本项目,自己去发布新的版本。



推聊使用的开源协议:Apache License 2.0

More Related Content

DOCX
Javascript加载总结
DOC
Ubuntu 下安装 svn 服务器
PPT
Firefox OS Overview
PDF
Debian Policy - 5.6.12 Version
DOC
X64服务器 lamp服务器部署标准 new
DOC
康盛创想项目部Linux 服务器部署标准(最新版)
PPTX
Gentoo linux
PDF
Hongxing
Javascript加载总结
Ubuntu 下安装 svn 服务器
Firefox OS Overview
Debian Policy - 5.6.12 Version
X64服务器 lamp服务器部署标准 new
康盛创想项目部Linux 服务器部署标准(最新版)
Gentoo linux
Hongxing

Viewers also liked (19)

DOCX
Androidpn作为android推送方案存在的问题
DOCX
3 分钟搞定 android push
DOCX
通过Push来提高android应用的活跃度
DOCX
极光推送技术原理解析
PDF
大容量云推送技术解析
PPTX
Costume
PDF
云推送技术实现与敏捷开发
PDF
1 2 learning abaqus
DOCX
选择第三方推送
PDF
O pozadini zdravstvenog odgoja
PDF
Essential product design research
PDF
Redis 存储分片之代理服务twemproxy 测试
PDF
Essential Product Planning Techniques for Oxford University Press
PDF
外国人観光客をどう受け入れるか? ~これからの訪日インバウンドビジネスを考える~【20150520インバウンドセミナー】
PDF
訪日外国人観光客の最新動向【20150520インバウンドセミナー】
PDF
Android消息推送之androidpn demo版到正式上线
PPTX
Locations
PDF
Scents of Precious Woods
PPTX
David Ortíz
Androidpn作为android推送方案存在的问题
3 分钟搞定 android push
通过Push来提高android应用的活跃度
极光推送技术原理解析
大容量云推送技术解析
Costume
云推送技术实现与敏捷开发
1 2 learning abaqus
选择第三方推送
O pozadini zdravstvenog odgoja
Essential product design research
Redis 存储分片之代理服务twemproxy 测试
Essential Product Planning Techniques for Oxford University Press
外国人観光客をどう受け入れるか? ~これからの訪日インバウンドビジネスを考える~【20150520インバウンドセミナー】
訪日外国人観光客の最新動向【20150520インバウンドセミナー】
Android消息推送之androidpn demo版到正式上线
Locations
Scents of Precious Woods
David Ortíz
Ad

Similar to 推聊 3分钟可运行起来的开源 android手机聊天系统 (20)

PPT
互联网创业服务器运维工具集
PPT
PHP & AppServ
PPT
PHP WEB 应用组织与结构
PDF
51 cto下载 51cto信息图:openshift vs cloudfoundry
ODP
基于 lucene 的站内搜索
PPT
Django敏捷开发 刘天斯
PPT
深入研究 Windows 系統服務 效能調校與故障排除
PDF
啟動 Laravel 與環境設定
PPT
1~60
PPT
使用Nginx轻松实现开源负载均衡
PPT
使用Nginx轻松实现开源负载均衡
PPT
Html5
PDF
Lucene 全文检索实践
PPT
Java 1(Java概述)
PPT
[精华回顾]讲座:How To Install Linux
PDF
2012 java two-desktop-appliction-using-j-ruby-with-swt
 
PPT
为什么上网浏览要用Shadowsocks?
PPTX
张所勇:前端开发工具推荐
PPT
Software Engineer Talk
PPTX
微软Bot framework简介
互联网创业服务器运维工具集
PHP & AppServ
PHP WEB 应用组织与结构
51 cto下载 51cto信息图:openshift vs cloudfoundry
基于 lucene 的站内搜索
Django敏捷开发 刘天斯
深入研究 Windows 系統服務 效能調校與故障排除
啟動 Laravel 與環境設定
1~60
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
Html5
Lucene 全文检索实践
Java 1(Java概述)
[精华回顾]讲座:How To Install Linux
2012 java two-desktop-appliction-using-j-ruby-with-swt
 
为什么上网浏览要用Shadowsocks?
张所勇:前端开发工具推荐
Software Engineer Talk
微软Bot framework简介
Ad

推聊 3分钟可运行起来的开源 android手机聊天系统

  • 1. 推聊 - 3 分钟可运行起来的开源 Android 手机聊天系统 推聊概述 PushTalk Overview 推聊是一个基于极光推送的 Android 手机聊天系统。支持群聊与点对点聊天。当前包括 An droid 客户端与 Java 服务器端。3 分钟就可以整套系统跑起来。 开源项目官方网站 http://github.com/good-life/pushtalk
  • 2. 功能与特点 功能列表 频道里群聊 与其他用户点对点聊天 聊天支持文字、表情、URL 等 创建频道、加入频道 注册用户(不需要密码) 我的频道 我的最近聊天 聊天记录缓存 客户端选择聊天服务器、添加聊天服务器 特点
  • 3. 简单到极致的 http 聊天服务器:一个 jar 包跑起来 轻量级客户端:聊天界面使用 Webview 的方式 下行消息推送基于 JPush (一个免费的第三方 Android Push 服务), 上行消息采用 http 请求的方式实现 聊天服务器 推聊的服务器端使用 Java 语言编写,基于最简单实用的开源框架。 http 服务器使用 Jetty:轻量级的 Java Servlet 容器。 数据库使用 H2: 轻量级的 Java 内存/文件数据库。 页面模板使用 Freemarker:轻量级的 Java 页面模板引擎。 打包时集成为一个整体 jar 包(包含所有的依赖包) 要运行推聊服务器端,请在 github 文件下载页 https://github.com/good-life/PushTalk/dow nloads/ 下载推聊服务器 jar 文件。 使用如下命令运行服务器: java -Dfile.encoding=UTF-8 -jar pushtalk-server-with-dependencies.jar 注:实际的文件名后边一般会加上一个版本号。 上述命令运行后: 一个 http server 启动了,监听端口为 10010 浏览器里输入 http://localhost:10010 则可以访问到界面
  • 4. 要正确地运行服务器,需要通过客户端访问 推聊服务器默认使用 10010 端口。可以在上述命令后指定使用另外的端口。比如以下命 令指定使用 10011 来启动推聊聊天服务器: java -jar pushtalk-server-with-dependencies.jar 10011 Android 客户端 客户端运行,请在 github 文件下载页 https://github.com/good-life/PushTalk/downloads/ 下载 Android apk 安装到 Android 手机即可。 你也可以自己编译 /client-android 项目之后安装到手机。 客户端默认内置官方聊天服务器地址。也可以直接在客户端添加新的服务器,选择新的聊天 服务器。 如果你有服务器资源,可以长期运行,欢迎你架设推聊聊天服务器,请添加到以下的页面。 经过测试没有问题,会被选择预置到客户端代码里: https://github.com/good-life/PushTalk/wiki/PushTalk-Third-Party-Servers 开发者支持 欢迎广大开发者加入本开源项目,大家一起来不断地丰满、完善推聊。 本人是因为兴趣业余时间来开发推聊,考虑到 IM 占用的时间太多,所以请谅解,不提供 任何 IM 的沟通方式。希望大家以如下的方式交流:
  • 5. Email: pushtalk.org@gmail.com 项目 Wiki: https://github.com/good-life/PushTalk/wiki 项目 Bug: https://github.com/good-life/PushTalk/issues PushTalk 频道:pushtalk, 报告 bug, 新功能讨论 等 代码提交方式:请先提交 Bug 修复,把 diff 以文件方式发邮件给我。合作多次后,我可以 把你加入到本项目贡献者里来,你就可以随时自由地提交代码了。 你也可以自由地 fork 本项目,自己去发布新的版本。 推聊使用的开源协议:Apache License 2.0