Как заставить устройство вибрировать?
Я делаю игру во Flash для Android с AS3. Я хочу, чтобы пользователь знал, что он нажал кнопку, заставив устройство вибрировать в течение короткой секунды. Может кто-нибудь объяснить мне, как я могу это сделать? Нужно ли импортировать определенный класс и как должен выглядеть код?
спасибо заранее!
2 ответов
чтобы использовать расширение вибрации, приложение AIR делает следующее:
проверяет, поддерживается ли расширение путем вызова isSupported. Заставляет устройство вибрировать, вызывая vibrate (), указывая длительность вибрации в миллисекундах в качестве параметра.
var vibe:Vibration;
if (Vibration.isSupported)
{
vibe = new Vibration();
vibe.vibrate(2000);
}
приложения для Android Для приложения Android включите разрешение вибрации в файл дескриптора приложения:
Разрешение Android : <uses-permission android:name="android.permission.VIBRATE"/>
ссылка : http://www.adobe.com/devnet/air/native-extensions-for-air/extensions/vibration.html
Спасибо за ответы. Они заставили меня углубиться в эту тему. Я обнаружил следующее:--13-->
прежде чем вы можете использовать:
var vibe:Vibration;
if(Vibration.isSupported){
vibe = new Vibration();
vibe.vibrate(500);
}
вам нужно перейти в "Изменить настройки ActionScript" > "путь к Libary" > "перейти к SWC-файлу"
там вы должны поместить эти 2 файла в:
VibrationActionScriptLibary.swc - вы можете получить с этой zip-архив
com.саман.увеличение.Вибрация.МЖК - в том же zip-файл и каталог. Вы должны изменить .ane to .swc
далее import com.adobe.nativeExtensions.Vibration;
просто поставьте эту строку с другими импортами.
это все, что вам нужно сделать в Flash. (Кроме кодирования фактической игры...)
далее откройте myApp-app.XML. В xml прокрутите вверх и проверьте, есть ли ссылка на ns.adobe.com заканчивается 3.0 (или выше). Если нет, измените его на 3.0. Adobe AIR 3.0 или выше требуется для собственных расширений.
свиток далее вниз к той части, где вы видите <initialWindow>
. После закрывающего тега вы добавляете:
<extensions>
<extensionID>com.adobe.Vibration</extensionID>
</extensions>
если вы прокрутите дальше вниз, вы увидите что-то вроде <android>
. В manifestAdditions вы должны добавить разрешение для устройства, чтобы оно действительно разрешало использовать функцию vibrate.
если еще нет <![CDATA[manifest>
там строку, вы должны добавить его. Если вы добавили его / или если он уже есть, вам нужно добавить разрешение. Это делается с android:name="android.permission.VIBRATE"
In в конце вы хотите убедиться, что это выглядит примерно так:
<![CDATA[<manifest>
<uses-permission android:name="android.permission.VIBRATE"/>
</manifest>]]>
после этого вы можете сохранить и закрыть файл XML.
после того как вы сделали все это ваше .fla может не публиковаться во Flash, так как Flash не поддерживает материал, который мы только что скорректировали. Тем не менее, мы все еще можем опубликовать.fla с CMD (для Windows). К сожалению, именно здесь заканчивается моя поддержка пользователей Mac. В cmd перейти в папку проекта. Моя папка проекта находится на моем рабочем столе, поэтому я набрал cd desktop
, cd games
, cd tilt android game
. После того, как я просмотрел свою папку, я набрал эту командную строку...
AdobeAIRSDK\bin\adt -package -target apk -storetyp pkcs12 -keystore YOUR_LICENCE.p12 myApp.apk myapp-app.xml myapp.swf -extdir extensionDir
убедитесь, что у вас есть папка AdobeAIRSDK в папке проекта. Если все вышеперечисленное (с cmd) немного расплывчато go здесь и смотреть его видео и его видео о том, как скомпилировать приложение ANE с командной строкой для вашей ОС. (Вот что я сделал в первую очередь.)
если у вас есть и значок для вашего приложения, убедитесь, что они находятся в папке под названием "иконы" в ваша папка проекта. Если ваши значки находятся в такой папке, просто вставьте имя папки в конце командной строки.
приложение должно публиковаться в папке "проекты".
если у вас есть какие-либо вопросы об этом, убедитесь, что вы посмотрите видео, я связан.