# 为社会安全做一些微小的努力

> 原文：https://pjhubs.com/2018/06/15/%E4%B8%BA%E7%A4%BE%E4%BC%9A%E5%AE%89%E5%85%A8%E5%81%9A%E4%B8%80%E4%BA%9B%E5%BE%AE%E5%B0%8F%E7%9A%84%E5%8A%AA%E5%8A%9B/
>
> 作者：PJHubs · 发布于 2018-06-15

# 🔥 Bonfire

<img src="https://i.loli.net/2018/06/15/5b23cfc4c6a65.png" width = "100%" height = "100%" align=center />

### 👮🏻‍♂️ Bonfire是干什么用的？

从Bonfire的字面上意思来看，直译为篝火。而火会给与人安全感，再以篝火乃熊熊之势，可令其周围凶狠残暴之物退却，从而引申出了Bonfire的本意——保护用户。从近期社会发展态势观之，人身安全问题的考虑已迫在眉睫，而Bonfire就是解决这个问题的极佳利器！

<img src="https://i.loli.net/2018/05/30/5b0ec7817d642.jpg" width = "50%" height = "50%" align=center />


### 🛠 Bonfire到底要解决什么问题？

正如上文所说，前两年已经暴露出太多的人身安全问题，比如这两年形势大好的网约车平台引发的一系列安全问题、只身会见陌生人、加班太晚独自一人的归家之路等等诸如此类的问题，而这些问题的涌现同时也暴露出了我们目前没有一个良好的产品去结合用户目前已拥有的设备进行拓展，但打夜车、走夜路、见陌生人这确实是一个痛点，这两者就形成了一个需求闭环，而Bonfire就是用来打破这个闭环的绝佳产品！

### 🌟 为什么slogan的隐蔽二字要加双引号？

我们都知道，只要是一个可以被用户下载安装至个人设备中的App就不可能被真正意义上的隐蔽，因此我需要打上双引号。那既然无法被隐蔽，何来隐蔽之说？Bonfire参考了iOS操作系统界面设计，学习并引用了自带App设计语言，从UI层面上虚拟出一个与原生iOS操作系统界面几乎一致的Bonfire App界面，汲取了其设计语言，二次开发了真实对应的入口模块，达到以假乱真，混淆视听的作用，给予用户安全感。

### 📱 为什么要虚拟原生iOS操作系统界面？

我们把Bonfire定位为保护用户的利器，从利器这一层面讲有明器和暗器，目前可供保护用户的利器产品已然很多，比如经过风波之后的滴滴顺风车已加上了人脸识别等多重防护，也可在滴滴每次行程中设置行程分享等，这些功能都是利器中的明器，而且也确实是对司乘双方起到了作用。

在某些情况下，如果有非分之想的司机看到用户做了行程分享，开启录音等等操作，会对其后续的实施不法行为造成很大影响。而这一切都是摆明了告诉用户，你要在某个特定的场景、某个特定的App（产品）内才能使用这个效果还算不错的明器，已然被做成了闭环。

如果我们不使用滴滴出行，而是一个人走夜路，见陌生人呢？此时已无法继续使用滴滴出行提供的功能，但是在这种场景下，用户却也很想希望被保护，在我们的调研过程中，发现了“怕怕”这款产品，其还提供了硬件防护，把“怕怕”App和其提供的硬件做了闭环，提供更好的防护，这也是一款非常不错的明器。

但问题也就出在这，我们就以“怕怕”这款App为例，用户和我们一样都是人，在遇到危险情况时很难让自己保持镇静，如果用户能够预知危险情况的发生，预先使用了“怕怕”内置的一系列防护程序，危险就少了很多，但实际上我们无法预知，如果等到遇见危险时，再慌张的进入App，使用对应情况下的防护程序，再加上“怕怕”的产品界面个性化十分突出，以当时歹徒的内心状态有会极大的应激反应，造成的后果不堪设想。

因此，我们首先把产品界面的个性化抹平，让Bonfire作为暗器保护用户，而不是明器。

<img src="https://i.loli.net/2018/06/15/5b23d0b1f0da9.jpeg" width = "50%" height = "50%" align=center />

### 💡 Bonfire和其它竞品相比优势在哪里？

#### UI
Bonfire从UI层面上像iOS原生操作系统靠近，进入App同时也相当于没有进入，让用户使用产品的过程中安心，不会被歹徒发现，引起更危险的行为。

#### 软硬件特性

在Bonfire的所有子模块中都结合了iPhone硬件特性和iOS软件特性，充分发挥出了用户在使用Bonfire过程中的“安全性”、“快捷性”、“隐蔽性”

#### 紧急相机（完成30%）
进入紧急相机模块后我们结合了`Tapic Engine`，在拍摄模式下，用户只需要点击屏幕即可收到`Tapic Engine`的反馈并保存拍摄下的照片。如果用户在使用紧急相机之前已经提前设置好了紧急联系人和“开启防护”，拍摄完后的照片会立即通过内置IM发送给紧急联系人。

<img src="https://i.loli.net/2018/05/26/5b090bb0af703.jpg" width = "50%" height = "50%" align=center />

在录像模式下，用户持续按住屏幕将会持续录像，松开手指即保存，如果提前设置了紧急联系人并开启“防护模式”，则会自动把保存的录像同样通过内置IM发送给紧急联系人。

在紧急相机模块中我们还提供“静默操作”和正常操作两种操作模式。当用户点击顶部黑色状态栏后立即进入静默模式，在该模式下，我们强制把屏幕亮度降到最低，给当前操作页面置为黑色，除了关键的必要按钮，全都隐藏，且用户操作路径不变，且可根据右上角icon直接观察当前是前置还是后置，一步到位。

<img src="https://i.loli.net/2018/05/30/5b0ec9861aec5.jpeg" width = "50%" height = "50%" align=center />

#### ~~紧急信息~~实时录音

~~在紧急信息模块，我们预设了紧急模板。当用户第一次进入该模块快可预先设定紧急信息文本模板，且可通过“音量上键”一键通过内置IM结合消息模板和用户当前GPS位置信息联合发送给紧急联系人。~~

~~紧急信息模块还~~可实时录音，当用户点击屏幕时，结合`Tapic Engine`的震动反馈实时记录并保持当前环境音，若用户提前设置进入“防护模式”，可把记录下的音频直接发送给紧急联系人。

#### 实时共享（完成40%）

实时共享模块为用户选择一个联系人分享其当前行程，且会在地图上绘制并用户当前的路径，分享行程的联系人也可看到当前用户的移动路径。

<img src="https://i.loli.net/2018/05/30/5b0eca68ba503.jpeg" width = "50%" height = "50%" align=center />

用户可在实时共享模块中自行添加当前路途一定会经过的标志物，若用户在实际移动中并未经过该标志物附近，通过`Tapic Engine`给用户反馈，若在规定时间内用户并未取消预警，则自动向当前用户设置的紧急联系人发送危险警告。

<img src="https://i.loli.net/2018/05/30/5b0eca67677ed.jpeg" width = "50%" height = "50%" align=center />


#### 定时防护

在定时防护模块，用户可以选择需要Bonfire保护其多长时间，我们提供了10~60分钟的模板档，用户也可以自定义所需时长。

<img src="https://i.loli.net/2018/06/15/5b23cfc512b76.jpeg" width = "50%" height = "50%" align=center />

设置完需要防护的时间后，接着用户可以选择是多重防护还是单一防护。当用户选择“单一防护”并进入对应的防护模式，比如“实时录音”、“实时共享”、“实时拍摄”等等，选择完毕后立即进入防护阶段，如果在超出了用户设定的防护时长，Bonfire在一定时间未收到用户取消防护的通知，则立即给当前用户设置的紧急联系人发送预警。

当用户选择了“多重防护”后可自定义workflow，把Workflow转化为文字后如下所示：

* 21：30 ~ 21：40 --> 开启“实时录音”，把记录转发给紧急联系人2；
* 21：42 ~ 21：50 --> 开启“实时视频”，把记录转发给紧急联系人1；
* 21：50 ~ 22：30 --> 开启“实时拍照”，保存记录，但不发送；
* 在以上时间段内，一直开启“实时共享”。

<img src="https://i.loli.net/2018/06/15/5b23cfc5150da.jpeg" width = "50%" height = "50%" align=center />

#### 工具包

Bonfire除了以上入口外还有一个超强助攻——工具包，提供给了用户包括以下功能：

* SOS紧急求助灯：以SOS求助信号的摩斯电码频率使用闪关灯和屏幕；
* SOS紧急求助音：以SOS求助信号的摩斯电码频率播放求助音；
* 其它功能还在开发中


### ⌚️ Apple Watch

当然，我们也将会提供 Bonfire for Apple Watch，并且将会结合Apple Watch的软硬件特性仔细打磨以上主要入口。利用Apple Watch优秀的心跳传感器结合用户开启定时防护时的身体状态，预判用户当前是否遭遇到不可使用App进行防护的严重情况，并立即实时的推送提示消息给紧急联系人。

### 👊 Bonfire还能做什么？

以上所介绍的就是目前我们团队所想要最先解决的问题，而我们把Bonfire定位为了保护用户，保护一词有多重解释，可以是人身安全上的保护，也可是精神意识上的保护，更可以是协助般的保护。

在后续的开发过程中，将视开发团队的精力拓展以下模块：

* **陌路寻踪**：紧急联系人可以预先在“实时共享”模块中设置好要求用户前往目的地要经过的标记，要求用户经过该标记时拍摄该标记，Bonfire会对紧急联系人和当前用户所拍摄照片做比对，比对通过后才能消除预警，否则将发送预警给紧急联系人。目的是为了协助紧急联系人指导前往目的地。
* **AR识记**：用户可以预先使用Bonfire中提供“AR寻踪”功能，从某一起点前往某一终点，最终将会形成一个AR路径。目的是为了协助用户找寻物品和临近地点。

### 💪 总结

在即将到来的2018 WWDC大会中，我们将会根据大会内容调整Bonfire功能模块及开发技术，使用更加贴合Apple思路的做法去打造Bonfire，使用更加先进的技术完善Bonfire，为大家提供一个真正意义上的随身利器


### 😢 后记

很遗憾，该项目原本是想用于参加今年的[中国高校计算机大赛-移动应用创新赛](http://www.appcontest.net/2018/index.html)，我不确定是因为赛制原因还是其它某些未知因素，这个我非常看好的项目没能进复赛，反而是去年开的一个项目进了😂。

因为之前确实是受了前段时间“滴滴女乘客遇害”事件给了我很大的触动，再加上现在本身就在滴滴实习，这些个因素加起来，才让自己冒出了用这个项目参加该比赛。不过没关系，在之后某个时间段中如果突然又来了兴趣，我会持续完善它，算是我对当前社会安全问题的一个思考结晶吧。当然我也希望大家能够跟我一块参与到其中，为美好的社会环境而努力！



[github仓库地址：https://github.com/windstormeye/Bonfire](https://github.com/windstormeye/Bonfire)
