使用技巧

Telegram 小程序运动追踪原理:加速度计控制、3D 陀螺仪与沉浸式 VR/AR

本文讲解 Telegram 小程序如何读取手机的方向与加速度,用于倾斜操控、转动视角等玩法。说明这项权限为何几乎不涉及个人隐私、为何只在应用打开时运行、为何电脑上无效,以及何时值得授权、何时应当拒绝。

内容导读

本文讲解 Telegram 小程序如何读取手机的方向与加速度,用于倾斜操控、转动视角等玩法。说明这项权限为何几乎不涉及个人隐私、为何只在应用打开时运行、为何电脑上无效,以及何时值得授权、何时应当拒绝。

Telegram 小程序运动追踪原理:加速度计控制、3D 陀螺仪与沉浸式 VR/AR主题插画

小程序可以请求读取手机的持握方式和移动情况——向前倾斜、向两侧翻滚、旋转、摇晃。授权之后,你就可以靠倾斜来操控游戏,或者转动手持设备来环视一张照片。

它也是这份清单上唯一几乎不会透露你任何信息的权限,因此它值得被理解,而不是条件反射地拒绝。

你将能够做到

  • 说清运动权限实际上交出了什么。
  • 判断哪些应用有理由请求它。
  • 明白为什么它在电脑上毫无作用。
  • 评估它在电量和发热上的代价。

画面跟随的是手持设备,而不是手指——手机本身成了控制器。

这项权限并不描述你

应用能请求的大多数东西,都是关于你生活的事实。位置说明你站在哪里。联系人说明你认识谁。照片说明你的房间长什么样。而运动只说明一块玻璃此刻朝向哪个方向,这属于完全不同的类别:它没有任何一种形式能识别你、找到你,也无法在被记录下来后留存下来。

这一点很重要,因为“一律拒绝”这个明智习惯在这里是有代价的。这项权限所服务的应用——靠倾斜操控的赛车游戏、靠转动环视的房间、滚过迷宫的球——没有它根本无法运行,让它们失败没有任何好处。

不过它也并非完全无关。持续、快速的运动数据流,仍然是一个人如何移动的记录,而一个屏幕上什么都没在动的小程序,没有理由想要这样的数据。有用的问题不是数据是否敏感,而是应用与它有没有关系。

它只在你看着它时运行 只要小程序在屏幕上打开,数据流就存在。关闭它或把它推到一边,数据流就结束了——不存在你去做别的事情时它还在后台继续读取传感器的版本。
应用实际读取的是什么?

两样东西,都是关于手持设备而非关于你。方向是它朝向哪边——向前或向后倾斜、向左或向右翻滚、像指南针指针一样旋转。加速度是它如何被移动:轻弹、摇晃、挥动。两者合起来描述的只是空间中的一块硬件,别无其他。

为什么我的 iPhone 会询问,而我朋友的 Android 没有?

因为两个系统对于网页能在多大程度上自由读取运动数据意见不一,而小程序就是一个网页。在 iPhone 上,网页必须先请求才能监听,所以第一次启动运动驱动的应用时,你会看到明确的提示。这是操作系统的规则,而不是 Telegram 的选择,这也是为什么提示的措辞看起来不像应用的其他部分。

倾斜控制在电脑上毫无作用。

笔记本电脑没有陀螺仪可读。做得好的小程序会检查这一点并提供替代方案——用鼠标拖动、方向键、屏幕上的摇杆——因为这项检查很容易做。而一个干脆毫无反应的小程序,是为手机写的,从未在其他设备上测试过,在你往它的应用里花钱之前,这一点值得了解一下开发者。

它会耗电吗?

每秒多次采样传感器确实是实打实的工作,但相对于它周围正在发生的事情来说微不足道。如果一款运动游戏让你的手机发热,热量主要来自全亮度的屏幕和绘制动态画面,而不是陀螺仪。老实说,这类应用的耗电和任何游戏差不多,而且你一离开就不再消耗。

什么时候值得授权?

当运动就是控制方式时。转向、瞄准、环视全景、在真实世界上方保持画面稳定——在所有这些场景里,权限和应用的目的就是同一件事。当应用是商店、表单、钱包或仪表盘时,屏幕上没有任何东西需要你的手腕去动,在这种情况下请求运动权限,就是一个不值得回答的问题。

我之后能收回吗?

离开应用会立即结束数据流,这已经涵盖了人们问这个问题时的大部分意思。要一个更长期的答案:这项权限属于那个特定的小程序,而不是整个 Telegram,所以把该应用从你的附件菜单中移除、不再打开它,就能彻底关上门。你授予一个应用的任何权限都不会转移到另一个应用。

好的运动控制是什么感觉

新鲜玩意和你会一直玩下去的东西之间的区别,几乎完全在于需要多大的动作幅度。一款只要求轻轻倾斜的游戏,可以在沙发上、火车上、候诊室里玩。一款要求你挥动手机的游戏,几乎在哪儿都玩不了,因为人们很少独处,也很少愿意看起来像那样。

好游戏的第二个标志是它让你能重新校准中心。你舒服的持握角度并不是水平的,所以一个把水平当作中立的游戏,从第一秒起就会感觉不对,之后还会不断漂移。能够在你的手恰好所在的位置设定“这就是正前方”,就是一套控制方案和一场较劲之间的区别。

倾斜控制并非人人都能用 单手玩、用固定支架玩、或手腕活动受限的人,都会被一款只提供运动控制的游戏排除在外。值得推荐的应用即使在有传感器的情况下也会保留触摸备用方案,而这对开发者来说几乎不费什么成本。

明智地使用它

  1. 问清楚应该有什么在动 如果屏幕上没有任何东西在动,就拒绝。
  2. 在 iPhone 上接受系统提示 是操作系统在询问,不是应用。
  3. 开始前重新校准中心 按你实际会用的方式持握手机。
  4. 预期桌面端有备用方案 没有备用方案说明该应用从未在那里测试过。
  5. 把发热当作游戏的一部分,而不是泄漏 屏幕的代价比传感器更大。
  6. 离开即可结束 数据流不会在应用关闭后继续存在。

← 返回 TG知识库