V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
工单节点使用指南
• 请用平和的语言准确描述你所遇到的问题
• 厂商的技术支持和你一样也是有喜怒哀乐的普通人类,尊重是相互的
• 如果是关于 V2EX 本身的问题反馈,请使用 反馈 节点
Faratv2
V2EX  ›  全球工单系统

「小米运动」为什么一定要开启定位权限?

  •  
  •   Faratv2 · 2019-03-17 10:35:57 +08:00 · 11450 次点击
    这是一个创建于 2080 天前的主题,其中的信息可能已经有所发展或是发生改变。

    为了监控睡眠情况和防止漏接电话,大概 1 月份时候入了「小米手环 3 NFC 版」,使用到现在还比较符合心理预期。

    但是今天早上没有看到睡眠情况报告,于是打开「小米运动」 APP 准备同步,却发现它一定要开启定位权限才能进行蓝牙连接。情况如下:

    小米运动需要开启定位权限

    小米,为了获取更多的用户信息,也是够拼了吧?

    只是查看、连接、同步手环,需要「定位权限」吗?

    一般不是到了下半年为了 KPI,才开始各种骚操作吗?

    56 条回复    2019-03-18 10:47:09 +08:00
    opengps
        1
    opengps  
       2019-03-17 10:37:48 +08:00 via Android   ❤️ 2
    运动类 APP 都是记录轨迹的,不然怎么知道你走了跑了多少米
    Faratv2
        2
    Faratv2  
    OP
       2019-03-17 10:48:43 +08:00
    @opengps #1 只是用「小米运动」来查看、同步手环数据的,并不需要它记录轨迹,在同步数据上也不需要定位权限。

    为啥之前同步数据不需要定位权限,现在又需要了?
    Justin13
        3
    Justin13  
       2019-03-17 10:49:17 +08:00 via Android   ❤️ 1
    @opengps 跑步机怎么办?
    mscststs
        4
    mscststs  
       2019-03-17 10:53:53 +08:00
    主页->运动->户外跑

    这个 APP 有 “跑步轨迹”功能,所以用到了 GPS 权限。


    你知道的,国产 APP 向来都是启动时把权限申请完的,所以应该可以理解了。
    Faratv2
        5
    Faratv2  
    OP
       2019-03-17 10:56:53 +08:00
    @mscststs #4 不能理解,我不是第一次安装、启动这个 APP。已经使用了一段时间了,之前一直没有要求「定位权限」,也是可以正常使用的,这个是我关注的点。
    mscststs
        6
    mscststs  
       2019-03-17 11:01:30 +08:00   ❤️ 1
    @Faratv2 很正常,说不定是:

    1. 哎呀又有用户在反馈 进入户外跑的时候定位失败了,要不要在这里加一个二次申请权限啊,但是这代码不是我写的啊,不然就放在开头好了,不给权限不让用,这样所有的二次权限的代码都可以省了

    2. 哎呀又有用户手环丢了而且不知道丢哪了,产品说了,干脆强制开定位,这样还能记录最后一次丢的位置(尽管这个功能好像似乎没体现在 APP 里,也许后台有呢)

    3. 哎呀又有用户说了,户外跑定位的速度太慢了,不准,可是三角定位的冷启动太慢了呀,要不然我们开启的时候就申请定位吧

    4. 哎呀我就是懒得写二次权限验证了,产品说为了维护体验一致性,干脆不给权限的都不让用,给了权限的整个 APP 的所有功能都可以正常用了,那我们直接在启动的时候申请权限吧
    iyaozhen
        7
    iyaozhen  
       2019-03-17 11:02:28 +08:00 via Android
    @Faratv2 这有啥不能理解的。一把梭先申请所有权限,多简单。

    有可能是产品经理对 Android 不了解,没有隐私权意识,也有可能是程序员懒得按需申请。或者爱用不用
    ccming
        8
    ccming  
       2019-03-17 11:09:46 +08:00 via iPhone
    小米手环小米运动其实都是华米在做,比小米更加不堪
    Faratv2
        9
    Faratv2  
    OP
       2019-03-17 11:11:55 +08:00
    @mscststs #6
    @iyaozhen #7

    嗯嗯,两位说的这些我能理解。

    我不能理解的是,之前没有给定位权限,同步的挺好;现在突然一定要定位权限,才能给你蓝牙连接设备。
    mscststs
        10
    mscststs  
       2019-03-17 11:14:15 +08:00
    @Faratv2 APP 版本更新了?估计是个 feature 吧
    opengps
        11
    opengps  
       2019-03-17 13:09:51 +08:00 via Android
    @Justin13 还别说,运动类 APP 真的不知道跑步机上的里程数

    @Faratv2 他家 app,估计也是那种一口气把所有权限申请完再工作的那种,那种每次询问定位的反而可能是用的 h5
    reus
        12
    reus  
       2019-03-17 13:14:38 +08:00
    @Justin13 跑步机有跑步机的统计,手环拿不到
    opengps
        13
    opengps  
       2019-03-17 13:23:50 +08:00 via Android
    回归到话题本质,楼主跟我一样讨厌被 APP 获取过多权限。
    不过话说回来,不管国产国外的 APP,开发过程显然都希望一次性拿到可能用到的权限,更何况现在很多 APP 引用的第三方 SDK,有些权限及时自己用不到,也被 SDK 附带上权限请求了
    至于开发者,考虑的会更少,虽然建议大家尽量不要装小众 APP,不过其实这句话的意思在于要避免那些别有用心的 app,不是一棍子打死所有小众 APP。很多 APP 仅仅是为了实现自己的基础功能,甚至不知道自己引用的 APP 需要收集其他数据。相反,大厂 APP 反倒是更乐意收集各种信息,不过至少来说,大厂收集到的隐私,泄露的可能相对会小很多
    stephenyin
        14
    stephenyin  
       2019-03-17 13:30:43 +08:00   ❤️ 5
    论坛上这些吐槽 app 权限申请的基本都是自我意识过剩的, 不过是大数据的一部分, 却总觉得有人盯着自己看.
    CastleBUPT
        15
    CastleBUPT  
       2019-03-17 14:16:49 +08:00
    ls 的都怎么回事,获取定位是要开 GPS 的,GPS 是要耗电的,现在连吐槽滥用权限都不行了?
    zekeda
        16
    zekeda  
       2019-03-17 14:27:35 +08:00   ❤️ 12
    做过安卓 App 的蓝牙开发才知道,,安卓上使用蓝牙是要定位权限的,因为理论上使用蓝牙也可以进行定位( Beacon ),所以蓝牙归属到定位里面,导致用户无法理解。iOS 就不一样,蓝牙就是蓝牙。安卓的逻辑就是工程师思维,不考虑产品,不考虑用户。
    zsdroid
        17
    zsdroid  
       2019-03-17 16:10:39 +08:00
    运动类 app 要定位权限很难理解吗??
    不需要定位的 app 要定位权限才是真的理解不了。
    Biggoldfish
        18
    Biggoldfish  
       2019-03-17 16:16:22 +08:00   ❤️ 3
    LS 说的很对,Android 上扫描蓝牙是需要位置权限的,https://developer.android.com/guide/topics/connectivity/bluetooth#Permissions
    其实个人比较推荐使用第三方应用同步手环数据吧,无论是从隐私还是应用便利性的角度都比小米运动强多了
    例如这款 https://play.google.com/store/apps/details?id=com.mc.miband1 除了充公交卡外根本不必打开小米运动,自定义的选项也足够丰富(缺点大概是刚上手时界面混乱了些)
    bmydx
        19
    bmydx  
       2019-03-17 16:34:16 +08:00 via Android
    这个话题本质上是"企业公信力丧失"的问题
    fan123199
        20
    fan123199  
       2019-03-17 18:04:32 +08:00
    这是 Android 的要求,为了安全性,必须要位置定位才能连接蓝牙。莫要错改小米了。
    fan123199
        21
    fan123199  
       2019-03-17 18:09:56 +08:00
    为什么之前没出现,我猜你更新了系统从 6.0- -> 6.0+
    ShaunSS
        22
    ShaunSS  
       2019-03-17 18:32:10 +08:00
    小米运动 app 越做越烂,以前只是纯粹的手环手表辅助的时候还挺好的。
    itisaun
        23
    itisaun  
       2019-03-17 18:40:59 +08:00 via Android
    我的点取消可以继续使用啊
    plutia
        24
    plutia  
       2019-03-17 18:52:30 +08:00 via Android   ❤️ 1
    系统语言改成英语以后好像不给定位也可以同步,但是中文的话肯定连不上
    orangeade
        25
    orangeade  
       2019-03-17 19:20:46 +08:00 via Android
    appops 解决
    boileryao
        26
    boileryao  
       2019-03-17 19:30:39 +08:00 via Android   ❤️ 1
    这个是 Android 系统的锅,大概情况就是 Google 认为通过 BLE 设备可以比较精确的确定你的位置(确实是这样,并且准确度挺高,参考室内导航),所以就要求需要声明这个权限。小米这个问题 PM 有一定的责任。
    yingfengi
        27
    yingfengi  
       2019-03-17 19:53:59 +08:00 via Android
    跑步轨迹需要。
    hasaki1997
        28
    hasaki1997  
       2019-03-17 20:27:43 +08:00
    你难道就没发现不给权限依然可以同步吗,大概是 bug 吧
    Faratv2
        29
    Faratv2  
    OP
       2019-03-17 21:01:52 +08:00
    @itisaun #23
    @hasaki1997 #28

    并没有同步。不给权限,一直提示“正在连接中...”。
    azh7138m
        30
    azh7138m  
       2019-03-17 22:22:46 +08:00
    play 的 Mi Fit 不给定位权限可以正常同步手环数据,Android 9 系统语言英文
    iskyzh
        31
    iskyzh  
       2019-03-17 23:19:07 +08:00
    Vitameans
        32
    Vitameans  
       2019-03-17 23:31:22 +08:00 via iPhone
    @stephenyin 你开心就好。
    gtanyin
        33
    gtanyin  
       2019-03-17 23:32:46 +08:00 via Android   ❤️ 1
    本人 Android 开发
    Android 6.0 以上需要定位权限才能搜索附近蓝牙设备
    jousca
        34
    jousca  
       2019-03-17 23:50:40 +08:00
    @CastleBUPT 获取定位跟 GPS 又没关系。它只是要“定位”这个权限,你不开 GPS 它只是获得一个很低精度的“定位“而已。就好比我找你要钥匙,又不是非要拿钥匙开你的大门……或者我只是要个钥匙,你没有必要给我大门的。只要是”钥匙“我就满意。
    jousca
        35
    jousca  
       2019-03-17 23:52:10 +08:00
    @Faratv2 后面有人说了,你是不是把安卓系统升级了? 6.0 以上的安卓不开定位连不上蓝牙。
    dioxide
        36
    dioxide  
       2019-03-18 00:07:15 +08:00
    这还有疑问么? 收集你信息呗
    ThomasZ
        37
    ThomasZ  
       2019-03-18 00:29:28 +08:00 via Android
    看了下小米运动的。权限,这 TM 就是一把梭啊,打电话的权限都有。。。。
    mengyang624
        38
    mengyang624  
       2019-03-18 07:23:04 +08:00
    @Biggoldfish #18

    我也是用的第三方,但是米动青春版坏了,售后换回来一个新版本固件的,就必须保持小米运动在后台运行了
    否则第三方软件无法与手表进行通讯。。。
    cowap
        39
    cowap  
       2019-03-18 07:24:00 +08:00 via iPhone
    @stephenyin 圈起来养的猪和生长在野外的是不一样的。大数据出现的目的不是为了给人们带来便利而是为了收集到数据才弄成这样……
    hasaki1997
        40
    hasaki1997  
       2019-03-18 08:02:46 +08:00 via Android
    @ThomasZ 这个似乎是为了在有电话来了时候手环能震动
    skylancer
        41
    skylancer  
       2019-03-18 08:13:06 +08:00
    直到 16 楼才有人解释原因,真的是好多人为喷而喷
    ThomasZ
        42
    ThomasZ  
       2019-03-18 08:41:02 +08:00 via Android
    @hasaki1997 接电话的权限可以接受,但是打电话的权限这个跟振动关系不大吧?
    kokutou
        43
    kokutou  
       2019-03-18 09:00:04 +08:00 via Android
    给权限,然后开隐私保护。。。不就完事了。。。
    maxshaw
        44
    maxshaw  
       2019-03-18 09:16:35 +08:00 via Android
    直接弃用就好了
    bertsir
        45
    bertsir  
       2019-03-18 09:41:00 +08:00
    天气
    polo3584
        46
    polo3584  
       2019-03-18 09:44:34 +08:00
    好多人为喷而喷
    xFrye
        47
    xFrye  
       2019-03-18 09:45:06 +08:00
    就是懒,一次过申请了权限后面就不用管这么多了,不然你每次用到 gps 的时候你还要申请权限
    hz353215386
        48
    hz353215386  
       2019-03-18 10:03:40 +08:00
    好像和吃饭为啥要用筷子一样道理
    ljmsun
        49
    ljmsun  
       2019-03-18 10:06:01 +08:00   ❤️ 2
    现在 Android 系统申请蓝牙权限就是得要 GPS 权限,这是 Google 规定的,代码就是这么写的( 6.0 之后的都是这样)
    这不是小米这个 app 的问题,不管哪个品牌的 Android 手机只要是要蓝牙权限的都是这样
    你要喷要找 Google 的人喷
    Vegetable
        50
    Vegetable  
       2019-03-18 10:10:17 +08:00
    @ljmsun 没错,佳明 connect 也一样,开了位置才能用蓝牙
    ljmsun
        51
    ljmsun  
       2019-03-18 10:10:32 +08:00
    接上面的它那个是模糊定位权限,不是高精度的定位
    Biggoldfish
        52
    Biggoldfish  
       2019-03-18 10:11:49 +08:00
    @mengyang624
    我手环 3 NFC 最新版固件是可以用 Notify & Fitness for Mi Band 直接连接,无需保持小米运动开启的
    (实际上这两个应用似乎只能同时有一个连着手环
    s2555
        53
    s2555  
       2019-03-18 10:30:21 +08:00
    安卓系统的锅,之前公司做蓝牙链接的 APP,给客户解释这个问题都烦死了
    v2chou
        54
    v2chou  
       2019-03-18 10:34:45 +08:00
    地图划线用吧 ,我就不理解 keep 一个运动软件要我的短信,电话权限做什么 !
    nicevar
        55
    nicevar  
       2019-03-18 10:45:46 +08:00
    targetSdkVersion 在 23 之前是不需要请求权限的,就是有些人太难伺候了,扯什么知情权,搞得现在系统弄运行时请求权限那一套,丝毫用处都有没有,浪费开发者和用户时间,普通用户不懂用的还是不懂,动态请求权限对他们来说只是不耐烦的点击各种确认对话框。
    yukiww233
        56
    yukiww233  
       2019-03-18 10:47:09 +08:00
    第一次连接(扫描蓝牙)需要位置权限,后续同步都可以不给权限
    原因的话 16 楼解释的很清楚了,一堆人好像都选择性无视了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5977 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 06:10 · PVG 14:10 · LAX 22:10 · JFK 01:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.