?? ?? } ?? ?? }
复制代码 2、threeExtensionContext的代码:
?? package com.three; ??
?? import java.util.*; ??
?? import com.adobe.fre.FREContext; ?? import com.adobe.fre.FREFunction; ??
?? public class threeExtensionContext extends FREContext { ??
?? public threeExtensionContext(){ ?? //这个貌似也用不着,空着 ?? } ??
?? @Override
?? public void dispose() { ?? // 空着
?? ?? } ??
?? @Override
?? public Map
?? // 下面这个比较关键,它的作用是定义as与JAVA具体方法通信的重要接口 ?? Map
复制代码 3,test的代码:
?? package com.three; ??
?? import com.adobe.fre.FREContext; ?? import com.adobe.fre.FREFunction;
?? import com.adobe.fre.FREInvalidObjectException; ?? import com.adobe.fre.FREObject;
?? import com.adobe.fre.FRETypeMismatchException; ?? import com.adobe.fre.FREWrongThreadException;
??
?? public class test implements FREFunction { ??
?? @Override
?? //这个类作用就是 AS调用CALL方法给java传一个FREObject的参数组,然后,java给as返回一个FREObject
?? public FREObject call(FREContext arg0, FREObject[] arg1) { ?? // 定义方法的具体内容 ?? int a=0; //声明一个整形变量a ??
?? FREObject b = null; //声明一个FREObject对象b,待会返回用的; ?? try {
?? a=arg1[0].getAsInt();//读取as传过来的整理参数并赋值给a; ?? } catch (IllegalStateException e) { ?? //不知道是啥 ,FB自己添加的 ?? e.printStackTrace();
?? } catch (FRETypeMismatchException e) { ?? //不知道是啥 ,FB自己添加的 ?? e.printStackTrace();
?? } catch (FREInvalidObjectException e) { ?? //不知道是啥 ,FB自己添加的 ?? e.printStackTrace();
?? } catch (FREWrongThreadException e) { ?? //不知道是啥 ,FB自己添加的 ?? e.printStackTrace(); ?? } ?? ?? ?? ?? try {
?? b=FREObject.newObject(a*100);//调用FREObject的静态方法把a这个整型变量写到b里去; ?? } catch (FREWrongThreadException e) { ?? // //不知道是啥 ,FB自己添加的 ?? e.printStackTrace(); ?? } ?? ?? //
?? return b;//再返回b; ??? } ??? ??? }
复制代码 最后,写完了,没有报错的话,就右键项目,点导出-java-jar文件。
二、创建SWC文件
还是用FB,这次来创建swc库。至于什么是swc,自己去谷哥百度一下吧。
1、用FB,新建一个flex库项目(flex library)。就是 文件-新建-flex库项目。如果找不着,就 文件-新建-其它-flash builder --flex库项目。