V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
pjhubs
V2EX  ›  程序员

Bonfire——对社会安全做一些微小的努力

  •  1
     
  •   pjhubs ·
    windstormeye · 2018-06-15 23:04:16 +08:00 · 4720 次点击
    这是一个创建于 2381 天前的主题,其中的信息可能已经有所发展或是发生改变。

    🔥 Bonfire

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

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

    🛠 Bonfire 到底要解决什么问题?

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

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

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

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

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

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

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

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

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

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

    UI

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

    软硬件特性

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

    紧急相机(完成 30%)

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

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

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

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

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

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

    实时共享(完成 40%)

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

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

    定时防护

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

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

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

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

    工具包

    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,为大家提供一个真正意义上的随身利器

    😢 后记

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

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

    github 仓库地址: https://github.com/windstormeye/Bonfire

    32 条回复    2018-10-03 08:55:12 +08:00
    xyyxlq
        1
    xyyxlq  
       2018-06-15 23:25:13 +08:00
    支持一下
    pjhubs
        2
    pjhubs  
    OP
       2018-06-15 23:29:32 +08:00
    @xyyxlq 谢谢。其实我挺希望有人能一起来完成它的,我一个人的力量太弱小了。😔
    MrJing1992
        3
    MrJing1992  
       2018-06-15 23:33:32 +08:00
    支持!
    maliaosaide1
        4
    maliaosaide1  
       2018-06-15 23:40:50 +08:00 via Android
    emmmmm 其实呢。。。HTC u11 的边框按压就可以在不知情,不亮屏不看屏的情况下录音
    pjhubs
        5
    pjhubs  
    OP
       2018-06-15 23:54:12 +08:00 via iPhone
    @maliaosaide1 这些东西厂商分分钟做出来是没有问题的,我主要是想通过这个事情,当然,如果以后能最终把它做出来,就是希望能给通过它引起大家对社会安全问题的关注。
    gamexg
        6
    gamexg  
       2018-06-16 00:02:56 +08:00 via Android
    逻辑比较奇怪,
    用户在紧急情况下需要手动选择发送位置、发送录音、发送视频?

    建议做成只需要用户激活紧急模式,app 将通知紧急联系人并实时上传 gps、录音录像,紧急联系人可以查看回放紧急录像、查看 gsp 轨迹。

    另外我记得 google 也有款类似的产品,策略是家庭成员可以互相查询其他人的状况,被查询者有 5 分钟时间确认安全,如果被查询这 5 分钟内未确认安全,那么查询这可以看到最近的 gsp 轨迹等信息。好像 gps 轨迹是一直上传的,不是仅仅失联后才上传,可能是为了规避手机被关机等情况。

    建议加上类似的功能。
    pjhubs
        7
    pjhubs  
    OP
       2018-06-16 00:14:17 +08:00 via iPhone
    @gamexg 🌚,您先看完吧。我有提供“定时防护”,这个模块我的设想比您说的 google 出的产品功能要强大一些吧。

    能够自定义 workflow,之所以提供手动进行某些操作是因为我们无法得知今后使用者到底是遇到哪种紧急情况,万一只是想用“紧急相机”呢?

    逻辑一点都不奇怪,只不过我还没做好。缺了很多东西,而且自定义 workflow 才是核心。😁
    Mitt
        8
    Mitt  
       2018-06-16 01:42:56 +08:00
    BONFIRE LIT
    minamike
        9
    minamike  
       2018-06-16 07:49:46 +08:00 via iPhone   ❤️ 1
    锁屏键按五下 SOS
    abmin521
        10
    abmin521  
       2018-06-16 08:20:28 +08:00 via Android
    不错
    如果手机被关机了就...
    comver
        11
    comver  
       2018-06-16 08:32:47 +08:00 via iPhone
    中文名字叫...好火?
    pjhubs
        12
    pjhubs  
    OP
       2018-06-16 08:35:32 +08:00 via iPhone
    @minamike 啊哈哈哈。官方的这个 SOS 功能还是有限的
    pjhubs
        13
    pjhubs  
    OP
       2018-06-16 08:35:49 +08:00 via iPhone
    @abmin521 嗯。关机了就比较难受了
    pjhubs
        14
    pjhubs  
    OP
       2018-06-16 08:36:00 +08:00 via iPhone
    @comver 🌚篝火
    icebreaker
        15
    icebreaker  
       2018-06-16 09:00:56 +08:00 via Android
    太复杂了,简单就是美。一句我需要帮助或者暗语自动激发预设功能就好了。紧急哪还容的你那手机拍照,不可能的。比如被绑架了怎么拍照。危险之前就不是危险。
    gamexg
        16
    gamexg  
       2018-06-16 09:07:20 +08:00 via Android
    @pjhubs 都看过了....

    我知道这个比 google 的功能多。

    建议加一个类似 google 的功能是因为人比较懒,可能新闻刚报道出事时会想起来出门设置定时报警,但是时间一长大部分人出门就会忘记了。
    所以建议增加一个外部触发的功能,比如出门前给家里说的是去买个东西,结果长时间没回来,家里感觉不对时可以发起安全确认,用户 app 会弹出确认提示(加个伪装),如果确认安全就结束,用户危险情况下无法接触手机或者手机已关机就会授予家庭远程控制权限及查看之前的 gps 历史轨迹功能。
    这样可以解决忘记开启定时防护的问题。


    额,
    在我理解中紧急情况一般是被抢劫、绑架等极端情况,认为这时候应该尽可能的对外提供信息来尽可能的让外界可以判断具体情况提供更好的援助。
    在被抢劫之类的情况下有机会用一下手机开紧急模式都算厉害了,很难能够每隔一段时间发一次录像。
    如果不是这种极端情况,例如要坐出租车等,这就无所谓了,直接在微信家庭群内发下车牌号就行。


    自定义指的是定时防护?
    s609926202
        17
    s609926202  
       2018-06-16 09:14:40 +08:00 via iPhone
    这是在有网的情况下,如果歹徒带一个信号屏蔽器,应该也有一个应急处理设置吧、
    leafleave
        18
    leafleave  
       2018-06-16 11:14:23 +08:00 via iPhone
    我又想起来我前天发的帖子。。
    持续监听麦克风,听到预设的安全词(例如天安门)就自动完成报警,上传 GPS 信息等操作
    不过不知道苹果给不给权限
    pjhubs
        19
    pjhubs  
    OP
       2018-06-16 12:16:23 +08:00 via iPhone
    @icebreaker 您说的我都懂。一句话激发防护功能这是最好的做法,到需要注意的是,这个产品我把它定位为暗器,没有危险的时候是不会有人带着武器出门的,如果能预知危险才会为了保护自己带上武器,而我想做的就是不想让用户时刻带着武器,用手机就行了。

    估计是这个社会的安全在表面上给人很稳定的感觉,所以大家才不会去时刻注意自己身边的情况,基本上所有危险都能够提前预防。只要你是一个人,做任何事情之前,完全可以预先打开“定时防护”功能,自定义 workflow,出现危险情况时能够及时处理
    pjhubs
        20
    pjhubs  
    OP
       2018-06-16 12:22:14 +08:00 via iPhone
    @gamexg 可能我的文档写的还不够清楚吧,主要这个项目是我拿去参加比赛的,1.0 版本能做的事情实际上并不多,而且受限于操作系统的原因,很多功能都受限。

    实际上,我是想通过这个产品让大家都对自己的人身安全负起责任,只要自己一人独自外出,如果可以,就应该进行安全防护,比如使用我们的这个产品。

    其实这个产品是有严重的社交依赖的,虽然我把它定义为暗器,是一把武器,这把武器可以在必要的时候单独使用,我给每一个功能都关联了紧急联系人,只要触发任何一个功能都会自动转发到紧急联系人手中。


    当然,我做这个动作主要是想让大家多多关注自身安全,提前使用一些外部工具保护自己。
    pjhubs
        21
    pjhubs  
    OP
       2018-06-16 12:25:07 +08:00 via iPhone
    @s609926202 我们无法遍历出所有可能出现的危险情况,不过,核心预防都在“定时防护”模块中,现在还没做好,最终的效果是,只要用户出门之前开启了定时防护,自定义好接下来需要防护的时间,以及防护过程当中需要 Bonfire 做什么,如果在规定时间内用户并没有手动停止防护,就会最终触发我们一系列报警措施,包括给预设的紧急联系人转发通知
    KevZhi
        22
    KevZhi  
       2018-06-16 12:25:14 +08:00 via iPhone
    App Store Guideline 好像有写不允许应用模仿系统界面的
    pjhubs
        23
    pjhubs  
    OP
       2018-06-16 12:26:22 +08:00 via iPhone
    @leafleave 这些都可以做到,只不过需要我们的 App 在前台是最好。而且一定要明确提示给用户需要的这些权限来做什么
    pjhubs
        24
    pjhubs  
    OP
       2018-06-16 12:27:15 +08:00 via iPhone
    @KevZhi 是的,我之前刷完好几遍,明确了这个问题。这是个当时的设计错误,后续再做的话我会调整 UI 风格
    KevZhi
        25
    KevZhi  
       2018-06-16 12:34:50 +08:00 via iPhone
    2.5.8 如果 app 会创建替代的桌面 /主屏幕环境,或者模拟多 app 插件体验,则该 app 会遭到拒绝。
    KevZhi
        26
    KevZhi  
       2018-06-16 12:36:38 +08:00 via iPhone
    @pjhubs 完全可以用 URL SCHEME 生成主屏幕带图标的链接指向对应的功能
    pjhubs
        27
    pjhubs  
    OP
       2018-06-16 12:38:07 +08:00
    @KevZhi 嗯,我知道这个情况 。

    但是现在整体的设计风格要大改,只不过我还是没想好到底要往那个方向去转,因为我打算做个摩尔斯码操作引擎,直接静默黑屏操作
    Axurez
        28
    Axurez  
       2018-06-16 16:55:40 +08:00
    @pjhubs 这样会不会导致狼来了的问题呢?
    pjhubs
        29
    pjhubs  
    OP
       2018-06-16 17:58:37 +08:00 via iPhone   ❤️ 1
    @Axurez 技术无罪。怎么使用也是用户的事情了,我们只能给用户提供这么个“暗器”,就好比青少年使用手机一样的道理。😁
    sanmmmm
        30
    sanmmmm  
       2018-06-16 18:53:49 +08:00
    mark
    jimages
        31
    jimages  
       2018-06-17 22:30:35 +08:00 via iPhone
    我才发现是翁神写的 hhhhhhh
    pjhubs
        32
    pjhubs  
    OP
       2018-10-03 08:55:12 +08:00 via iPhone
    谢谢大家关注
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2693 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 07:37 · PVG 15:37 · LAX 23:37 · JFK 02:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.