2014年6月26日星期四

SSH集成Pushlet - jackvc

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
SSH集成Pushlet - jackvc  阅读原文»

首先是需要的资源:

1)、pushlet.jar

2)、ajax-pushlet-client.js

第一步、web.xml配置servlet

<servlet>
<servlet-name>pushlet</servlet-name>
<servlet-class>com.newgsn.tvmall.pushlet.servlet.Pushlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>pushlet</servlet-name>
<url-pattern>/pushlet.srv</url-pattern>
</servlet-mapping>

Pushlet类自定义类,继承自nl.justobjects.pushlet.servlet.Pushlet.java
第二步、创建自定义的Pushlet类

初始化pushlet,并注入applicationContext

public class Pushlet extends nl.justobjects.pushlet.servlet.Pushlet {

/**
*
*/
private static final long serialVersionUID = 1L;

public void init() throws ServletException {
super.init();

ApplicationContext ctx
= WebApplicationContextUtils.getWebApplicationContext(getServletContext());
SessionManager.getInstance().initApplicationContext(ctx);
}

}

第三步、创建推送消息工具类

public class PushletUtil {

private static String PLATFORM_MESSAGE = "UNI_CAST_MESSAGE";

/**
* 发送消息至客户端
*
@param sessionId
*
@param msg
*/
public static void sendMessage(String sessionId, String msg){
if(StringUtils.isNotBlank(sessionId) && SessionManager.getInstance().hasSession(sessionId)){
Event event
= Event.createDataEvent("message");
event.setField(PLATFORM_MESSAGE, msg);
Dispatcher.getInstance().unicast(event, sessionId);
}
}

/**
* 广播至所有在线客户端
*
@param msg
*/
public static void sendBroadcast(String msg){
Event event
= Event.createDataEvent("message");
event.setField(PLATFORM_MESSAGE, msg);
Dispatcher.getInstance().broadcast(event);
}
}

实现点对点推送和广播推送
第四步、jsp页面接收消息

PL._init();
PL.userId
='qinfx';
p_join_listen(
"message");
function onData(event) {
if(event.get('UNI_CAST_MESSAGE') != undefined ) {
alert(event.get(
'UNI_CAST_MESSAGE'));
}
if(event.get('UNI_LOGOFF') != undefined ) {
alert(event.get(
'UNI_LOGOFF'));
}
}

PL.userId为当前登录用户的id


本文链接:SSH集成Pushlet,转载请注明。

Swift实战-豆瓣电台(八)播放进度与时间 - 老镇  阅读原文»

视频观看地址:http://v.youku.com/v_show/id_XNzMyMzI1MzMy.html

这节主要内容是NSTimer,UIProgressView,MPMoviePlayerController类的使用

NSTimer

实例化:

timer=NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: "onUpdate", userInfo: nil, repeats: true)// 实例化后即启动定时器,0.4秒后开始第一次触发

0.4 是间隔时间

target 是发送对象

selector 是触发的方法

userInfo 此参数可以为nil,当定时器失效时,由你指定的对象保留和释放该定时器。

repeats 是否重复

立即触发

fire()

停止

invalidate()

UIProgressView

设置进度条进度

progressView.progress=0.0

带动画

progressView.setProgress(p, animated: true)

MPMoviePlayerController

audioPlayer.currentPlaybackTime 已经播放的时间(秒)

audioPlayer.duration 总时间(秒)

秒钟分钟算法

总时间除以60的余数就是秒钟

总时间除以60的商就是分钟

因为我们的展现形式是00:00

所以当数字小于10的时候进行字符串拼接补0例如01,02

还有一节就全部大结局了,敬请期待^_^

本节高清视频和代码下载地址

http://pan.baidu.com/s/1hq22JzA

Swift实战-豆瓣电台系列

Swift实战-豆瓣电台(一)准备

Swift实战-豆瓣电台(二)界面布局

Swift实战-豆瓣电台(三)获取网络数据

Swift实战-豆瓣电台(四)歌曲列表的展现

Swift实战-豆瓣电台(五)播放音乐

Swift实战-豆瓣电台(六)视图跳转,传参及回跳

Swift实战-豆瓣电台(七)显示动画


本文链接:Swift实战-豆瓣电台(八)播放进度与时间,转载请注明。

阅读更多内容

没有评论:

发表评论