1.编写java端
打开Cocos2dxHelper.java
编写函数
/*time震动时间*/ public static void vibrate(int vibrateTime) { Vibrator vib = (Vibrator) sActivity.getSystemService(Service.VIBRATOR_SERVICE); vib.vibrate(vibrateTime); } /*取消震动*/ public void cancelVibrate(){ Vibrator vib = (Vibrator)sActivity.getSystemService(Service.VIBRATOR_SERVICE); vib.cancel(); }
2.编写cocos2d-x端
.h文件
static void vibrate(int time); static void cancelVibrate();
.cpp
#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) #include <jni.h> #include <android/log.h> #include "platform/android/jni/JniHelper.h" #define CLASS_NAME "org/cocos2dx/lib/Cocos2dxHelper"
#endif
void HelloWorld::vibrate(int time) { #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) JniMethodInfo t; if (JniHelper::getStaticMethodInfo(t,CLASS_NAME,"vibrate","(I)V")) { t.env->CallStaticVoidMethod(t.classID,t.methodID,time); t.env->DeleteLocalRef(t.classID); } #endif } void HelloWorld::cancelVibrate() { #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) JniMethodInfo t; if (JniHelper::getStaticMethodInfo(t,"cancelVibrate","()V")) { t.env->CallStaticVoidMethod(t.classID,t.methodID); t.env->DeleteLocalRef(t.classID); } #endif }
3.使用方法
vibrate(5000);
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|