一. 这种方法大家应该都知道,查看Unity的API也可以找到,并且Android和iOS的调用是一致的:

Handheld.Vibrate(); 此处调用的振动是固定时间,0.5秒,不可更改;

https://docs.unity3d.com/ScriptReference/Handheld.Vibrate.html

二. 可以通过AndroidJavaClass和AndroidJavaObject类实现,目前我的项目是2017.4.3f2,测试通过;(备注:此方法不需要编写Java代码,然后打包jar包并导入到Unity工程)

代码如下:

Vibrate类

public class Vibrate
{
    public AndroidJavaClass unityPlayer;
    public AndroidJavaObject currentActivity;
    public AndroidJavaObject sysService;

    public Vibrate()
    {
        unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
        currentActivity = unityPlayer.GetStatic("currentActivity");
        vibrator = currentActivity.Call("getSystemService", "vibrator");
        // 目的是从Unity获取安卓设备的Vibrate权限,但此句不会执行
        if (Application.isEditor)
            Handheld.Vibrate();
    }


    public void DoVibrate()
    {
        vibrator.Call("vibrate");
    }


    public void DoVibrate(long milliseconds)
    {
        vibrator.Call("vibrate", milliseconds);
    }

    public void DoVibrate(long[] pattern, int repeat)
    {
        vibrator.Call("vibrate", pattern, repeat);
    }


    public void CancelVibrate()
    {
        vibrator.Call("cancel");
    }

    public bool HasVibrator()
    {
        return vibrator.Call("hasVibrator");
    }
}

 

用法:

Vibrate vibrate = new Vibrate();

if(vibrate.HasVibrator())

{

    // 调用振动

    vibrate.DoVibrate();

    // 振动500毫秒

    vibrate.DoVibrate(500)

    // 0延迟, 振动500毫秒,间隔200毫秒

    long[] pattern = {0, 500, 200};

    vibrate.DoVibrate(pattern, 0)

    // 停止振动

    vibrate.CancelVibrate();

}

如果有关于iOS在Unity中可以灵活调用振动的方法,希望可以留言回复,不想麻烦在xmind中写代码,关键是不会。。。XD

更多相关文章

  1. js调Android与IOS方法
  2. android studio 添加按钮点击事件的三种方法
  3. 在android中运行java main方法
  4. React-Native 调用原生方法,弹出自定义对话框
  5. Android截屏截图的几种方法总结
  6. Ubuntu adb devices : no permissions 解决方法

随机推荐

  1. TQ210搭载Android(安卓)4.0.3测试Google
  2. android在Fragment中使用ListView显示数
  3. 获得android 应用的版本和当前android系
  4. Android:Chip、ChipGroups、ChipDrawable
  5. android MotionEvent 获取长按压时间长
  6. 支付宝小程序(ble 适配android和ios) 入
  7. Android(安卓)调试 Web JavaScript / 微
  8. 继承Animation自定义动画
  9. 调用android系统相机拍照并保存图片
  10. Android音频数据传输