Flex Java Socket 连接示例

很简单的一个入门示例,勿需多言,直接看代码即可。

1,Flex Socket Code

<?xml version="1.0" encoding="utf-8"?>
<!--
flex socket sample
author sban <http://sban.biz/>
-->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" 
creationComplete="application1_creationCompleteHandler(event)" 
minWidth="955" minHeight="600">
	<fx:Script>
		<![CDATA[
			import mx.events.FlexEvent;
 
			private var socket :Socket;
 
			protected function application1_creationCompleteHandler(event:FlexEvent):void
			{
				// TODO Auto-generated method stub
				socket = new Socket();
				socket.addEventListener(Event.CONNECT,
						function(e : Event) :void
						{
							trace("connected.");
						}
					);
				socket.addEventListener(Event.CLOSE,
						function(e :Event) :void
						{
							trace("closed.");
						}
					);
 
				Security.loadPolicyFile("xmlsocket://127.0.0.1:843");
				socket.connect("127.0.0.1", 1088);
			}
 
		]]>
	</fx:Script>
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
	</fx:Declarations>
</s:Application>

2,Java Socket Server Code

package sban.socketServer;
 
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.SocketAddress;
 
/**
 * sban java socket sample
 * @author sban <http://sban.biz>
 *
 */
public class SbanSocketServer1 extends Thread {
 
	public void run(){
 
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		ServerSocket server  = new ServerSocket();
		SocketAddress endpoint = new InetSocketAddress("127.0.0.1", 1088);
		server.bind(endpoint);
		System.out.println("wait..");
 
		while(true)
		{
			Socket socket = server.accept();
			System.out.println("connected.");
			socket.close();
		}
	}
 
}

3,本地swf文件的安全设置

在FB中debug运行时,一般不会报安全沙箱错误。这是因为FB把本地的bin-debug目录加入到了信任目录范围。有时间因为浏览器在运行,或安全配置文件在使用等原因,可能此步添加不能成功,所以有时候在FB中debug,也会看到安全沙箱错误。sban 遇到过这种意外情况,Adobe说这是正常的。

解决方法是,到如下地址添加本地信任目录:

http://www.macromedia.com/support/documentation/cn/flashplayer/help/settings_manager04.html

sban 2010/1/10 北京

Category: Flash Web Game | Tags: Comment »


Leave a Reply



Back to top