首先,说明我测试的系统地址和网络地址的情况:
某电脑一:file://E:\vcs\HelloWorld\bin-debug\player.swf
某电脑二:file://D:/vcs/HelloWorld/bin-debug/player.swf
由于两者的不同,下面程序在发布之后进行了修改。
但要明确的是无论什么系统开发,网络程序在运行时,获取的服务器地址都是
http://www.baidu.com/mp3/...形式的,即地址分隔符均为“/”
1、在AS项目中获取当前项目编译的SWF所在的服务器路径或本地路径
将下面的代码放在AS项目的最上层类中
package {
import flash.display.Sprite;
public class HelloWorld extends Sprite
{
public static var currSwfUrl:String;
public function HelloWorld(){
//写网络相关的项目时,就可以通过这个自动选择调用的服务器端程序了
var doMain:String = this.stage.loaderInfo.url;
var doMainArray:Array = doMain.split("/");
if (doMainArray[0] == "file:") {
//为处理本地系统返回的路径由“/”或“\”两种间隔组成的不同情况,而分别处理
if(doMainArray.length<=3){
currSwfUrl = doMainArray[2];
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf(currSwfUrl.charAt(2)));
}else{
currSwfUrl = doMain;
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf("/"));
}
}else{
currSwfUrl = doMain;
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf("/"));
}
currSwfUrl = currSwfUrl + "/";
trace("项目路径: "+ HelloWorld.currSwfUrl);
}
}
}
输出结果:“项目路径: E:\vcs\HelloWorld\bin-debug/”
2、在Flex Web项目中获取当前项目编译的SWF所在的服务器路径或本地路径
把下面的代码放在Flex的App类中即可使用
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="initApp()">
<mx:Script>
<![CDATA[
public static var currSwfUrl:String;
private function initApp():void{
//写网络相关的项目时,就可以通过这个自动选择调用的服务器端程序了
var doMain:String = this.parent.stage.loaderInfo.url;//注意此行和AS的写法略有不同
var doMainArray:Array = doMain.split("/");
if (doMainArray[0] == "file:") {
if(doMainArray.length<=3){
//为处理本地系统返回的路径由“/”或“\”两种间隔组成的不同情况,而分别处理
currSwfUrl = doMainArray[2];
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf(currSwfUrl.charAt(2)));
}else{
currSwfUrl = doMain;
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf("/"));
}
}else{
currSwfUrl = doMain;
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf("/"));
}
currSwfUrl += "/";
trace("项目路径: "+ HelloFlex.currSwfUrl);
}
]]>
</mx:Script>
</mx:Application>
输出结果:“项目路径: E:\vcs\HelloFlex\bin-debug/”
分享到:
相关推荐
在IT领域,特别是针对Web开发和动画设计方面,Adobe Flash技术曾一度占据着主导地位。随着技术的发展,虽然Flash的应用场景逐渐减少,但其在特定领域的应用仍然具有一定的价值。本文将详细介绍如何通过命令行方式...
1. `.actionScriptProperties`:这是Flex Builder或Flash Builder项目的一个配置文件,包含了关于ActionScript编译设置的信息,如编译目标、库路径和警告级别等。 2. `.flexProperties`:这是Flex项目的配置文件,...
`.project`文件是Eclipse项目的配置文件,包含了项目的元数据,如源代码目录、库依赖、构建路径等,这对于在开发环境中打开和管理项目非常有用。 `.settings`文件夹通常包含项目特定的Eclipse插件设置,如代码格式...
当Flex应用作为Web项目运行时,这些HTML文件会被用来包装SWF文件,提供与JavaScript的交互和加载控制。 4. `.settings`:这个目录存储了项目特定的构建配置和IDE设置,例如编译器警告和错误级别,以及ActionScript...
完成项目开发后,将Flex项目打包成SWF文件,并将其部署到Tomcat服务器上,通过Web服务供用户访问。 总之,整合Flex和Eclipse进行开发可以提升开发效率,利用Eclipse的强大的Java支持和FlexBuilder的Flex专用功能,...
4. **配置 SDK 环境变量**:将 Flex SDK 的 `bin` 文件夹路径添加到系统的环境变量中。例如:`D:\Candy\Scratch\flex_sdk_4.6\bin`。 #### 三、项目设置与编译 接下来,我们将详细介绍如何在 Flash Builder 中设置...
4. `.actionScriptProperties`、`.flexProperties`、`.project`:这些是Eclipse或Flash Builder等IDE的项目配置文件,它们记录了项目的编译设置、源代码路径、库依赖等信息。 5. `bin-debug`:这是编译后的输出目录...
1. **安装Flex SDK和集成开发环境(IDE)**:首先,你需要下载并安装Flex SDK,以及一个支持Flex开发的IDE,如Flash Builder或IntelliJ IDEA。 2. **创建新的Flex项目**:了解如何在IDE中创建一个新的Flex项目,并...
- 打开FlashDevelop,进入“Tools”菜单,选择“Program Settings”,然后选择“AS3 Context”选项卡,在“Flex SDK Location”中输入之前解压的Herosdk路径。 4. **配置flashplayer_inc_playerglobal_022711.swc*...
在这个项目中,我们使用的是Google Maps JavaScript API的版本,通过Web服务接口与Flex 4进行交互。 3. **加载Google Maps API** 在Flex应用中使用Google Maps API,通常需要在HTML包装器中引入API库,并通过Flash...