Unity手机端3档震动

2023-11-17

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class VibrateHelper : MonoBehaviour
{

    static public bool Acitve { get { return Global.VibrationOn; } }
#if UNITY_IOS
        [DllImport("__Internal")]
        static extern void _vibrateSmall();
        [DllImport("__Internal")]
        static extern void _vibrateMedium();
        [DllImport("__Internal")]
        static extern void _vibrateLarge();

        public static void vibrateSmall()
        {
            if(Acitve)
#if !UNITY_EDITOR
            _vibrateSmall();
#endif
        }

        public static void vibrateMedium()
        {
#if !UNITY_EDITOR
    if(Acitve)
            _vibrateMedium();
#endif
        }

        public static void vibrateLarge()
        {
#if !UNITY_EDITOR
    if(Acitve)
                _vibrateLarge();
#endif
        }

#elif UNITY_ANDROID
    static AndroidJavaObject _vibrator;
    static AndroidJavaObject vibrateManager
    {
        get
        {
            var jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            var currentActivity = jc.GetStatic<AndroidJavaObject>("currentActivity");
            _vibrator = currentActivity.Call<AndroidJavaObject>("getApplication").Call<AndroidJavaObject>("getSystemService", "vibrator");
            return _vibrator;
        }
    }

    public static void vibrateSmall()
    {
        if (!Application.isEditor && Acitve)
            vibrateManager.Call("vibrate", 20L);
    }

    public static void vibrateMedium()
    {
        if (!Application.isEditor &&  Acitve)
            vibrateManager.Call("vibrate", 45L);
    }

    public static void vibrateLarge()
    {
        if (!Application.isEditor &&  Acitve)
            vibrateManager.Call("vibrate", 85L);
    }
#endif
}

这个代码需要申请震动权限,如果没有申请震动权限的话可以在一个不会调用的函数里面加入Unity自己的一个震动代码,这样就会打包的时候自行添加震动权限

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Unity手机端3档震动 的相关文章

  • (Ionic 2)尝试回退到 Cordova-lib 执行时发生错误:TypeError:无法读取未定义的属性“then”

    Edit 使用 ionic 2 时会发生这种情况 我知道它还不稳定 但我认为可能有一些解决方案 因为其他人似乎没有遇到这个问题 Edit end 由于某种原因 我在尝试使用 ionic build android 和 ionic build
  • 线程自动利用多个CPU核心?

    假设我的应用程序运行 2 个线程 例如渲染线程和游戏更新线程 如果它在具有多核 CPU 当今典型 的移动设备上运行 我是否可以期望线程在可能的情况下自动分配给不同的核心 我知道底层操作系统内核 Android linux内核 决定调度 我的
  • 在 Android 中使用 DataOutputStream 在 POST 正文中发送特殊字符 (ë ä ï)

    我目前正在开发一个具有大量服务器端通信的 Android 应用程序 昨天 我收到一份错误报告 称用户无法发送 简单 特殊字符 例如 我搜索过但没有找到任何有用的东西 可能重复 没有答案 https stackoverflow com que
  • ViewWillAppear 没有被 UISplitViewController 调用

    背景和目标 我有一个基于 UISplitViewController 的 iPad 应用程序 到目前为止它支持 4 个方向 但现在我想将其锁定为仅横向 我变了shouldAutorotateToInterfaceOrientation左视图
  • 多次添加同一个子视图来查看

    我不知道这是否可行 但我想做的是将子视图多次添加到视图中 我尝试过这样的事情 self view addSubview newView newView center CGPointMake 160 100 self view addSubv
  • 如何防止 RealmSwift 列表中出现重复项?

    如何防止向列表中添加重复项RealmSwift 我有我的User作为领域对象 但真正的数据源是服务器 只是使用领域在本地缓存用户 当我从服务器获取当前用户数据时 我想确保存储在领域中的用户拥有来自服务器的所有播放列表 以及它们的曲目列表等
  • 如何在 sqlite 中将 2 列合并为新列

    我有一个包含 3 列的表 我必须将 2 列中的值按降序排列到一列中 A B C z 1 2 f 5 7 s 9 5 使用此示例 输出会将 B 列和 C 列中的值放入其中 如下所示 A B s 9 f 7 f 5 s 5 z 2 z 1 我当
  • Firebase:如何在Android应用程序中设置默认通知渠道?

    如何设置default通知渠道通知消息当应用程序在后台运行时会出现什么情况 默认情况下 这些消息使用 杂项 通道 如你看到的在官方文档中 https firebase google com docs cloud messaging andr
  • 请求位置更新参数

    这就是 requestLocationUpdates 的样子 我使用它的方式 requestLocationUpdates String provider long minTime float minDistance LocationLis
  • 应用程序未安装在 Android 模拟器上

    我正在 android Geocoder 中开发一个应用程序 当我运行该应用程序时 它会显示 2011 01 11 11 08 13 GeoTourProject 自动目标模式 使用现有模拟器 emulator 5554 运行兼容的 AVD
  • CookieManager.getInstance().removeAllCookie();不删除所有cookie

    我在应用程序的 onCreate 中调用 CookieManager getInstance removeAllCookie 我遇到了一个奇怪的问题 我看到 GET 请求中传递了意外的 cookie 值 事实上 cookie 值是一个非常非
  • Flutter 深度链接

    据Flutter官方介绍深层链接页面 https flutter dev docs development ui navigation deep linking 我们不需要任何插件或本机 Android iOS 代码来处理深层链接 但它并没
  • Android 启动器快捷方式

    我制作了一个简单的打卡 打卡时钟应用程序 我想向用户添加在主屏幕上创建快捷方式的选项 该快捷方式将切换应用程序的状态 超时 超时 但我根本不希望此快捷方式在屏幕上打开应用程序 这是我的 setupShortcut private void
  • 在 Flutter 中显示 iOS 的 PDF 内联文件

    我正在 flutter 中专门为 iOS 开发一个应用程序 现阶段 我需要向其中添加 PDF 文件 问题是 flutter 没有原生的方式来显示 PDF 文件 据我研究 由此tread https github com flutter fl
  • 从 android 简单上传到 S3

    我在网上搜索了从 android 上传简单文件到 s3 的方法 但找不到任何有效的方法 我认为这是因为缺乏具体步骤 1 https mobile awsblog com post Tx1V588RKX5XPQB TransferManage
  • 将带有地理位置数据的照片保存到照片库 Swift 3

    如何使用地理位置元数据将照片保存到照片库 我已请求 并允许 应用程序访问用户位置 private func allowAccessToUserLocation locationManager CLLocationManager locati
  • 下载后从谷歌照片库检索图像

    我正在发起从图库中获取照片的意图 当我在图库中使用 Nexus 谷歌照片应用程序时 一切正常 但如果图像不在手机上 在 Google Photos 在线服务上 它会为我下载 选择图像后 我将图像发送到另一个活动进行裁剪 但在下载的情况下 发
  • 使用 Espresso 检查 EditText 的字体大小、高度和宽度

    如何使用 Espresso 检查 EditText 的字体大小 高度和宽度 目前要分割我使用的文本 onView withId R id editText1 perform clearText typeText Amr 并阅读文本 onVi
  • 在webview android中加载本地html文件

    我正在尝试在 android 的 webview 中加载 html 文件的内容 但是 它给了我 网页不可用错误 如果我尝试使用谷歌或雅虎等网站 它们就会起作用 html文件位于src gt main gt assests gt index
  • 在 Android 中,如何将字符串从 Activity 传递到 Service?

    任何人都可以告诉如何将字符串或整数从活动传递到服务 我试图传递一个整数 setpossition 4 但它不需要 启动时总是需要 0 Service 我不知道为什么我不能通过使用 Service 实例从 Activity 进行操作 publ

随机推荐

  • 在ubuntu上搭建文件服务器

    首先需要在ubuntu上下载好文件资源 一共是三个资源 在下载资源之前建议将git和nginx安装好 在本教程中将会用到 ngnix http nginx org download nginx 1 12 2 tar gz 利用winscp上
  • osg学习(五十一)Warning: detected OpenGL error ‘invalid operation‘ at after RenderBin::draw(..)

    原因是什么 这个错误只出现一次 并且是在第一帧时出现 Warning detected OpenGL error invalid operation after applying attribute Viewport 04292398 应该
  • 华为OD笔试题:工作安排 --- 100分 (思路+python代码)

    题目 小明每周上班都会拿到自己的工作清单 工作清单内包含n项工作 每项工作都有对应的耗时时长 单位h 和报酬 工作的总报酬为所有已完成工作的报酬之和 那么请你帮小明安排一下工作 保证小明在指定的工作时间内工作收入最大化 输入描述 输入的第一
  • 每天进步一点点——Linux中的线程局部存储(二)

    转载 http blog csdn net cywosp article details 26876231 在Linux中还有一种更为高效的线程局部存储方法 就是使用关键字 thread来定义变量 thread是GCC内置的线程局部存储设施
  • TreeMap 的特点

    TreeMap基于红黑树实现 增删改查的平均和最差时间复杂度均为O 最大特点时Key有序 key必须实现Comparable接口或者提供Comparator比较器 所以key不允许为null HashMap 依靠hashCode和equal
  • web移动端适配方案以及不同单位之间的区别

    web移动端适配方案 第一种 rem实现原理 rem是一个倍数单位 它是基于html的font size的倍数 只要我们在不同的设备上设置一个合适的初始值 当设备发生变化font size就会自动等比适配大小 从而在不同的设备上表现统一 如
  • 注意力模型CBAM

    论文 CBAM Convolutional Block Attention Module Convolutional Block Attention Module CBAM 表示卷积模块的注意力机制模块 是一种结合了空间 spatial 和
  • 【Vue2】之简单自定义插件开发,含demo

    一个vue2 x的简单插件开发实例 首先创建文件夹和文件 个人习惯把插件都放在src plugins文件夹里 创建本次demo插件目录src plugins demo 以及目录文件 demo index js demo src main j
  • python,求解字符串的所有子串

    网上的一种解法 def cut s str results num 0 x 1 表示子字符串长度 for x in range len s i 表示偏移量 for i in range len s x results append s i
  • 部署 - 前后端发布策略

    前端发布策略 前端发布的本质是静态资源的发布 主要关心缓存和资源同步问题 HTTP缓存 合理的使用缓存让未修改的文件复用可以有效的减轻服务器负担和提高前端页面渲染效率 1 协商缓存 2 本地缓存 本地缓存无需跟服务器再次确认 直接根据文件名
  • CORS policy: header is present on the requested

    CORS policy header is present on the requested 欢迎使用Markdown编辑器 解决方法 请求结果 欢迎使用Markdown编辑器 Access to XMLHttpRequest at htt
  • spring boot读取pom.xml变量

    1 application yml配置 version project version 项目版本号 为什么不使用 project version 呢 避免与避免与Spring语法冲突 项目pom继承了spring boot starter
  • DCDC相关

    1 同步和异步 同步 MOSFET管 效率高 价格贵 零件数多 电路复杂 异步 二极管 效率低 价格低 电路简单 同步整流上管S1和下管S2需要一相同频率信号以互补方式进行驱动 保证S1导通时S2截止 S1截止S2导通 异步二极管损耗 在电
  • plsql 修改sql窗口字体

    工具 首选项 用户界面 字体 编辑器 选择
  • Android自定义一个广播接收器BroadcastReceiver监听系统wifi连接

    概述 注册一个广播用来接收系统发送的广播 比如 发送或接收到一个短信 用Toast或Notification通知提醒 或者是打开或者断开网络连接 用Toast做出提示 注册文件
  • uniapp-计算属性、watch 侦听器、props验证

    一 计算属性 计算属性本质上就是一个 function 函数 它可以实时监听 data 中数据的变化 并 return 一个计算后的新值 1 声明与使用计算属性 计算属性需要以 function 函数的形式声明到组件的 computed 选
  • win11不兼容很多游戏?win11不兼容哪些游戏

    很多用户升级win11系统之后 最担心的就是win11兼容性不强 很多游戏都玩不了 那到底win11不兼容哪些游戏 下面小编就来给大家讲讲 win11很多游戏不兼容 1 其实win11系统并没有那么多无法兼容的游戏 基本上win10可以兼容
  • java插入gif_Java swing(纯代码和含部分个人解析)插入png或gif图片的方法,切换界面功能的实现...

    package swing public class mains public static void main String args new swing package swing import java awt Color impor
  • 听说,你想做大模型时代的应用层创业!

    亲爱的科技探险家们和代码魔法师们 未来的钟声已经敲响 预示着一场极度炫酷的虚拟现实游戏即将展开 从初期简单的智能识别 到设计师级别的图纸设计 生成式AI技术 Generative AI 以其独特理念和创新模式重塑了传统内容生产效率和交互模式
  • Unity手机端3档震动

    using System Collections using System Collections Generic using UnityEngine public class VibrateHelper MonoBehaviour sta