TrailCam

指南

徒步 App 为什么要请求相机和麦克风权限?

一个已经拿到定位权限的徒步 App,第一次点开录制按钮或者语音按钮时,还是会再弹出两次请求——一次要相机,一次要麦克风。看起来像是同一个请求分三次问了三遍,但在 iPhone 上,这其实是三个互不相干的权限,各自保护不同的功能,而且只有在你真正要用到那个功能的那一刻才会弹出来。

简单说

相机和麦克风权限,跟用 GPS 记录轨迹完全是两码事。它们存在的唯一理由,是让你在路上想拍张照片、录一段视频或者留一句语音的时候,App 能把它存下来——这和随便一个相机 App 或者语音备忘录 App 要的权限一模一样。定位权限管的是轨迹本身能不能一直记下去,相机和麦克风权限管的是之后能不能在轨迹上钉一点别的东西。iOS 把这三个当成完全独立的权限,各自单独判断,谁都不需要靠另一个才能生效。

一次徒步里,两件完全不同的事

定位权限对应的是地图上画出来的那条线——连续不断的一串位置点,累出距离、配速和轨迹的形状。相机和麦克风权限对应的,是钉在这条线上某个具体位置的小东西——一段视频、一张照片、因为路上有什么值得留下而说的一句话。就算相机和麦克风权限都拒绝了,光靠定位权限,一次徒步照样能从头到尾完整记下来,只是什么都没往上面钉而已——两个权限都拒绝之后实际发生的,正是这个:轨迹继续记,只是再没有别的东西可以点了。

iOS 为什么分开问,而且只在你真正要用的那一刻才问

iOS 不允许 App 去请求一个自己当下用不上的权限,也不会因为同属一个 App,就把互不相干的权限塞进同一个弹窗里问。定位的弹窗出现在开始记录的时候,因为那一刻起就需要定位了。相机的弹窗出现在你第一次点击拍照或者录视频的按钮时,因为那才是 App 真正需要用到相机的第一刻。麦克风的弹窗出现在你第一次点击录语音的按钮时,道理一样。一个人徒步了好几个月,始终没点过录视频或者语音的按钮,这两个弹窗完全可能一次都没出现过——因为 App 那边确实还没有用到它们的场合。

一个允许,另一个不允许

这几个权限互不依赖,拒绝其中一个不影响其他权限能做的事。拒绝麦克风,语音没法用了,轨迹、照片、视频照样正常;拒绝相机,反过来,照片和视频没法用了,其他一切不受影响。以后想改主意也不用重装,每个权限都能随时在设置里对应这个 App 的那一项里切换,改完从下次用到那个功能开始生效。

容易想岔的地方

  • 以为相机或麦克风的弹窗,跟已经给过的定位权限有什么关系——没有,iOS 把这三个完全独立地管理,谁都不是另一个的前提条件。
  • 不小心点掉了某个弹窗,就以为整个 App 都用不了了——实际上只是那一个权限背后的功能停了,GPS 轨迹记录本身不受影响。
  • 装完 App,相机和麦克风的弹窗一次都没出现——如果对应的拍摄按钮从没点过,这就是正常状态。弹窗只在第一次真正用到的时候才出现,不是装 App 那一刻就问。
  • 奇怪相机的弹窗出现了,麦克风的怎么没跟着一起弹——拍照片、录视频跟录语音走的是不同的按钮,各自第一次真正被用到的时候才会各自触发权限请求。

TrailCam 在这件事上是怎么做的

TrailCam 会在你第一次想在徒步途中拍照片或者录视频的时候问相机权限,第一次想留语音的时候问麦克风权限,两者都是为了把内容钉在你拍下它的那个位置上。这两个权限跟 GPS 轨迹本身能不能继续记没有关系——那只取决于另外单独问的定位权限。TrailCam 本身免费下载。

常见问题

拒绝相机或麦克风权限,会不会让徒步 App 没法记录 GPS 轨迹?
不会。轨迹本身能不能记,由定位这个独立的权限决定。相机和麦克风权限只影响照片、视频、语音能不能被拍下来并钉在轨迹上。
为什么我第一次打开 App 的时候,它没问我要麦克风权限?
iOS 只会在 App 真正要用到某个功能的第一刻弹出对应的权限请求。如果你从没点过录语音的按钮,就还没有触发麦克风权限请求的场合。
能不能只给相机权限,麦克风权限一直不给?
可以。这两个权限互相独立,可以让照片、视频正常使用,同时语音功能一直不能用,反过来也一样。

记录你自己的轨迹

TrailCam 是一款 iPhone 上的 GPS 轨迹记录 App,会把沿途拍的视频、照片和语音钉在你拍下它的那个位置,并支持导出成 GPX 1.1 或 CSV。免费下载。

在 App Store 下载