我Adobe Air completly JavaScript?我不能使用像VB.NET或C#.NET这样的.NET语言吗?
谢谢
我在制作Flex网站方面有一些基本经验,但我认为我在制作桌面AIR应用程序时更多地使用Flex.
无论如何,我想知道是否至少可以使用C#和Actionscript/AIR?我找不到任何这方面的例子.
另外,我可以在Flex应用程序中使用自定义Flash组件吗?我知道我可以使用Javascript组件.
谢谢
在我的AIR应用程序中,我想使用jQuery为HTML元素设置动画.当我在全局HTMLLoader中尝试动画时,没有问题.但是,在尝试为"辅助"HTMLLoader(即原始文档打开的元素)中的元素设置动画时,我遇到了问题.
动画不流畅 - 当我移动鼠标时它只是"步进".动画属性(例如top,left等)仍然更新 - 除非移动鼠标,否则它是不可见的.因此,如果我没有移动鼠标,动画就会完成,而不会看到开始和结束状态之间的任何转换.
动画的类型似乎并不重要.我已将代码简化为以下内容:
var loader;
$(function() {
loader = new air.HTMLLoader();
loader.addEventListener(air.Event.COMPLETE, start);
window.htmlLoader.stage.addChild(loader);
loader.load(new air.URLRequest('sandbox2.html'));
});
function start() {
loader.width = loader.window.document.width;
loader.height = loader.window.document.height;
$('.task', loader.window.document).click(function() {
$(this).animate({ backgroundColor: '#c00' }, 1000);
});
}
Run Code Online (Sandbox Code Playgroud)
我尝试将等效的HTML/JS加载到Firefox和Safari中,这很好.我正在运行Mac OS X 10.5.
有任何想法吗?谢谢!
嘿那里 - 我需要从MAC上的FlashBuilder4 AIR应用程序中删除一个底栏.我已将config.xml文件设置为:
<systemChrome>none</systemChrome>
<transparent>true</transparent>
Run Code Online (Sandbox Code Playgroud)
虽然这删除了窗口bgcolor,顶部栏和边框,但我仍然在我的应用程序中收到一个底栏.我该如何删除它?谢谢,任何帮助表示赞赏!
我几天来一直在努力解决问题而且我对如何解决这个问题感到茫然.我正在使用Android sdk提供的Android工具编译的Android库项目.在项目内部,我遵循一个android项目的标准结构(我的jar文件在项目的libs目录中找到:

我发现当我使用Ant编译项目时:
<target name="compile-payment-lib" depends="prepare,init-profile">
<delete file="../payment-lib/project.properties"/>
<exec executable="${android.tool}" dir="../payment-lib" failonerror="true">
<arg value="update"/>
<arg value="lib-project"/>
<arg value="-p"/>
<arg value="${basedir}/../payment-lib"/>
<arg value="-t"/>
<arg value="${android.target.version}"/>
</exec>
<echo file="../payment-lib/project.properties" message="android.library=true" append="true"/>
<ant dir="../payment-lib" target="release"/>
</target>
Run Code Online (Sandbox Code Playgroud)
它不包括jar文件,因此当我们尝试收集这些类并使用它们时,它会在运行时丢失引用.我正在使用最新版本的android工具rev20编译.
我尝试解决这些问题的一些事情:
如果有人知道我可能做错了什么,请告诉我.
我应该提到的一件事是,这是一个特定项目与另一个项目一起使用,该项目是实际的应用程序项目.这个项目特别是一个带有jar依赖项的库项目.
另一件事是这是一个Adobe Air应用程序,在android中有一些原生扩展.因此,为了完成我们的任务,我们创建了一个带有主jar文件的ANE,该文件包含使用这样的ant任务的所有引用:
<target name="master-jar" depends="prepare">
<delete dir="target/uber-jar" />
<mkdir dir="target/uber-jar"/>
<antcall target="expand-3rdparty-jars" />
<jar destfile="${basedir}/target/master.jar">
<fileset dir="../game/gamelobby/bin/classes" includes="**/*"/>
<fileset dir="../payment-lib/bin/classes" includes="**/*" excludes="**/R*.class" />
<fileset dir="../crosscell_ad_lib/bin/classes" includes="**/*" excludes="**/R*.class" />
<fileset dir="src" includes="config/**/*"/>
<fileset dir="${basedir}/target/uber-jar" includes="**/*"/>
</jar>
</target>
Run Code Online (Sandbox Code Playgroud) 我正在尝试接收从Heroku上运行的node.js服务器中的客户端adobe air应用程序发送的数据,但没有成功.
这就是我发送数据的方式:
var loader : URLLoader = new URLLoader();
var request : URLRequest = new URLRequest("http://127.0.0.1:5000");
request.method = URLRequestMethod.GET;
loader.dataFormat = URLLoaderDataFormat.TEXT;
var variables:URLVariables = new URLVariables();
variables.data = 'this is data';
request.data = variables;
loader.addEventListener(Event.COMPLETE, onRestaurantObjectLoadComplete);
loader.load(request);
Run Code Online (Sandbox Code Playgroud)
我的Node.js代码用于接收请求:
app.get('/',function (request, res) {
console.log("received request data" + request.data );
});
app.listen(port, function() {
console.log("Listening on " + port);
});
Run Code Online (Sandbox Code Playgroud)
请求来到服务器,我能够将答案发送到客户端,但数据始终未定义.
此外,如果我尝试使用POST方法发送数据,我会在AIR应用程序中收到Stream错误.
从AIR应用程序向node.js服务器发送数据的正确方法是什么?
编辑:我设法让它在本地工作,但当我上传到heroku时,它不起作用.我发送请求到http:// :(与我在本地做的相同,但myHerokuApp.com是localhost),我不断收到流错误.什么是发送请求的正确URL?
我在解决如何区分Return键盘上的Enter键和数字键盘上的键时遇到了一些麻烦.
我在分离其它键,重复,如取得了成功CTRL,ALT以及Shift通过使用:
if(e.keyLocation == KeyLocation.RIGHT) // is on right side of keyboard
or
if(e.keyLocation == KeyLocation.LEFT) // is on left side of keyboard
Run Code Online (Sandbox Code Playgroud)
但是,当尝试类似于将我的Enter密钥与我的Return密钥分开时,使用:
if(e.keyLocation == KeyLocation.NUM_PAD)
Run Code Online (Sandbox Code Playgroud)
闪存坚持治疗他们都喜欢他们来自KeyLocation.Standard另外值得一提的是,Flash将两个键的密码相同,具有完全相同的keyCode以同样的方式,(13) CTRL,ALT以及Shift共享相同的keyCode,但仍然不能KeyLocation像他们一样孤立.
有没有人对如何解决这个问题有任何想法?或者这仅仅是AS3的限制?谢谢.
编辑:值得一提的是,我正在开发这个用于Adobe AIR作为桌面应用程序.
我在AS3中遇到NetStream问题.我正在开发的项目允许用户浏览视频(本地)并播放.我遇到的问题是,netStream.seek(0);我可以告诉它没有做任何事情,虽然我进入NetStatusEvent函数并被NetStream.Seek.Notify触发.我正在使用NativeProcess,以下功能使这有任何区别.
public function ProgressEventOutputHandler(e:ProgressEvent):void {
videoByteArray = new ByteArray();
nativeProcess.standardOutput.readBytes(videoByteArray, 0, nativeProcess.standardOutput.bytesAvailable);
netStream.appendBytes(videoByteArray);
}
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么吗?我在使用前暂停netStream netStream.seek(0);.
编辑:
为了解决这个问题,我按照VC的说明进行操作.我已经完成了以下操作:
移动videoByteArray = new ByteArray();到我的init函数,并tempVideoByteArray = new ByteArray();在此函数中创建.
更新我的ProgressEventOutputHandler函数,使其不再为videoByteArray创建新的ByteArray并更改此行 - nativeProcess.standardOutput.readBytes(videoByteArray, videoByteArray.length, nativeProcess.standardOutput.bytesAvailable);
我没有改变任何其他内容,现在视频无法加载.如果我允许在ProgressEventOutputHandler函数内创建新的ByteArray,则视频会再次加载.
我有一个首先用Adobe Air创建的Android应用程序(及其生产密钥库).很久以前,该公司转而使用常规Android SDK开发应用程序,但由于该应用程序已投入生产,我们使用的密钥库仍然是相同的(由Adobe Air创建).
我使用keytool为Google Places API提取SHA1,我得到了以下内容:
Alias name: <alias_name>
Creation date: Jan 11, 2015
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=<company_name>, OU=, O=, C=US
Issuer: CN=<company_name>, OU=, O=, C=US
Serial number: <lotsofnumbers>
Valid from: Mon Mar 28 14:08:17 IST 2011 until: Sat Mar 29 14:08:17 IDT 2036
Certificate fingerprints:
MD5: ..:8D:F7
SHA1: ..:E6:69
SHA256: ..:38:9A
Signature algorithm name: SHA1withRSA
Version: 3
Extensions:
#1: ObjectId: 2.5.29.37 Criticality=false
ExtendedKeyUsages [
codeSigning
]
Run Code Online (Sandbox Code Playgroud)
这个SHA1(由E6:69完成)从未在Google Places API中运行,因此我检查了apk包含的CERT.RSA,除了证书指纹外,它看起来几乎相同:
Valid from: Mon …Run Code Online (Sandbox Code Playgroud) 您好我正在使用Xamarin和最新版本的Visual Studio for Mac创建iOS应用程序.
每当我运行模拟器时,我都会收到警告框错误:
MonoTouchDesignServerUnified意外退出.
错误报告说:
应用程序特定信息:abort()名为CoreSimulator 375.21 - 设备:iPad Air - 运行时:iOS 10.3(14E269) - DeviceType:iPad Air
我该如何摆脱这个错误?