Android 如何使设备振动?
我正在用AS3为Android制作一个Flash游戏。我想让用户知道,他通过使设备振动一秒钟来按下一个按钮。有人能给我解释一下我是如何做到这一点的吗?我需要导入一个特定的类吗?代码应该是什么样子Android 如何使设备振动?,android,actionscript-3,flash,device,vibration,Android,Actionscript 3,Flash,Device,Vibration,我正在用AS3为Android制作一个Flash游戏。我想让用户知道,他通过使设备振动一秒钟来按下一个按钮。有人能给我解释一下我是如何做到这一点的吗?我需要导入一个特定的类吗?代码应该是什么样子 提前谢谢 要使用振动延长装置,空气应用程序执行以下操作: 通过调用isSupported检查扩展是否受支持。 通过调用vibrate(),将振动的持续时间(以毫秒为单位)指定为参数,使设备振动 var vibe:Vibration; if (Vibration.isSupported) { vi
提前谢谢 要使用振动延长装置,空气应用程序执行以下操作: 通过调用isSupported检查扩展是否受支持。 通过调用vibrate(),将振动的持续时间(以毫秒为单位)指定为参数,使设备振动
var vibe:Vibration;
if (Vibration.isSupported)
{
vibe = new Vibration();
vibe.vibrate(2000);
}
Android应用程序
对于Android应用程序,请在应用程序描述符文件中包含振动权限:
Android权限:
参考资料:谢谢您的回答。他们让我进一步研究这个课题。我发现的是: 在使用之前:
var vibe:Vibration;
if(Vibration.isSupported){
vibe = new Vibration();
vibe.vibrate(500);
}
您必须转到“编辑ActionScript设置”>“库路径”>“浏览到SWC文件”
在这里,您必须将这2个文件放入:
StriationActionScriptlibary.swc-您可以使用
压缩文件
com.adobe.extensions.Vibration.swc-位于同一zip文件和目录中。您必须将.ane更改为.swc
接下来,您必须导入com.adobe.nativeExtensions.Vibration代码>只需将该行与其他导入放在一起
这就是你在Flash中所要做的一切。(除了对实际游戏进行编码……)
接下来,打开myApp-app.xml。
在xml中,向上滚动并检查指向ns.adobe.com的链接是否以3.0(或更高版本)结尾。如果没有,请将其更改为3.0。本机扩展需要Adobe AIR 3.0或更高版本
进一步向下滚动到您看到的零件
。在结束标记后添加:
<extensions>
<extensionID>com.adobe.Vibration</extensionID>
</extensions>
之后,您可以保存并关闭xml文件
在您完成所有这些之后,您的.fla可能无法在Flash中发布,因为Flash不支持我们刚刚调整的内容。但是,我们仍然可以使用CMD(对于Windows)发布.fla。不幸的是,这也是我对Mac用户的支持结束的地方。在cmd中,您可以浏览到项目文件夹。我的项目文件夹在我的桌面上,所以我键入了cd-desktop
,cd-games
,cd-games
。在我浏览我的文件夹后,我键入了以下命令行
AdobeAIRSDK\bin\adt -package -target apk -storetyp pkcs12 -keystore YOUR_LICENCE.p12 myApp.apk myapp-app.xml myapp.swf -extdir extensionDir
确保项目文件夹中有AdobeAIRSDK文件夹。如果以上所有内容(使用cmd)都有点含糊不清,那就去看看他的视频,以及他关于如何用命令行为你的操作系统编译一个电子应用程序的视频。(我一开始就是这么做的。)
如果您的应用程序有和图标,请确保它们位于项目文件夹中名为“icons”的文件夹中。如果图标在这样的文件夹中,只需将文件夹名称粘贴到命令行的末尾即可
应用程序应发布在您的项目文件夹中
如果您对此有任何疑问,请务必观看我链接的视频。如果我将此添加到代码中,则表示找不到类型:振动,或者它不是编译时常量。您需要在项目中同时包含对ane和swc的引用。你在用flash builder 4.6吗?我只是在用flash CS5.5。为了测试它在我的手机上是否有效,我用Flash发布了它。我必须+1这个问题,只是为了标题!:)您应该将此答案发布为问题的编辑,而不是答案。您应该将正确的解决方案归功于@Vinayak.B,因为它是正确的解决方案。您要求的是代码,而不是如何连接代码库。这里的任何程序员都会假设您已经知道如何实现代码,或者会尽职尽责地实现它。所以你的答案不是你问题的最正确答案。
AdobeAIRSDK\bin\adt -package -target apk -storetyp pkcs12 -keystore YOUR_LICENCE.p12 myApp.apk myapp-app.xml myapp.swf -extdir extensionDir