现在的 app 是如何通过运营商直接获取当前手机号的? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
morethansean
V2EX    问与答

现在的 app 是如何通过运营商直接获取当前手机号的?

  •  
  •   morethansean 2019-06-14 18:45:00 +08:00 8307 次点击
    这是一个创建于 2380 天前的主题,其中的信息可能已经有所发展或是发生改变。
    下了个快狗打车的 app,刚打开发现自动填入了我的手机号,然后还可以一键登录。

    有点好奇需要什么样的资质可以向运营商申请这样的功能?

    另外,即便我连着 WiFi 为啥也可以获取到这些信息?原理是啥有没有老哥介绍一下哇?


    22 条回复    2020-12-29 19:22:39 +08:00
    Dragonish3600
        1
    Dragonish3600  
       2019-06-14 18:55:41 +08:00 via iPhone
    苹果获取不到,安卓随便获取
    morethansean
        2
    morethansean  
    OP
       2019-06-14 19:03:11 +08:00   1
    @ladypxy #1
    Android 能不能获取我就不说了...我这截图就是 iOS 啊亲...
    cb192c3
        3
    cb192c3  
       2019-06-14 19:05:57 +08:00
    移动联通 都有提供 sdk
    hihipp
        4
    hihipp  
       2019-06-14 19:06:52 +08:00 via iPhone
    很早就有了,三家运营商都有。

    可看一下这里
    https://www.cmpassport.com/dev/developer/h5/index.html
    Jirajine
        5
    Jirajine  
       2019-06-14 19:10:06 +08:00 via Android
    同想知道原理。按理说 Android 应该是拿 IMEI 像运营商提供的接口查询,iOS 应该实现不了。
    尤其在使用 WiFi 的情况下,应该没有可能关联到本机运营商信息的。
    morethansean
        6
    morethansean  
    OP
       2019-06-14 19:13:48 +08:00
    @cb192c3 #3
    这样的 sdk 通过什么实现的呢?
    lizhuoli
        7
    lizhuoli  
       2019-06-14 19:18:16 +08:00 via iPhone
    @morethansean 走的是运营商服务信道,你要是开发者的话,自己直接搜索 Core Telephony 的相关方法
    lizhuoli
        8
    lizhuoli  
       2019-06-14 19:19:10 +08:00 via iPhone
    @lizhuoli 只能是每个运营商 SDK 都接入一份(三份),电信取号 SDK,联通 SDK,移动不知道有没有
    cb192c3
        9
    cb192c3  
       2019-06-14 19:19:46 +08:00
    @morethansean 电信有个测宽带的服务,打开那个页面连宽带账号都会显示出来,你猜是怎么实现的
    lnim
        10
    lnim  
       2019-06-14 19:28:50 +08:00 via iPhone
    运营商有 sdk 的, 还分免费版本 付费版本
    morethansean
        11
    morethansean  
    OP
       2019-06-14 19:31:10 +08:00
    @lizhuoli 果然,搜了下这个 API,把应用的蜂窝权限关掉后这个功能就不行了……不知道 Android 上有没有这么细粒度的权限控制……
    Jirajine
        12
    Jirajine  
       2019-06-14 19:33:58 +08:00 via Android
    @morethansean @lizhuoli
    我测试了一下。
    在我 Android,xposed hook 所有网络数据,电话信息的 API 情况下安装这个应用完全没有被读取到电话号码。
    插了下资料,两个系统都有对运营商相关的 API,倒是并没有用什么无法阻止的骚操作获取。对 iOS 不了解,我以为 iOS 没有提供这种渠道的。
    值得一提的是,看 LZ 描述并没有任何授权提示就被取得了?这样看来 iOS 的安全性有点值得怀疑了。
    morethansean
        13
    morethansean  
    OP
       2019-06-14 19:53:29 +08:00   1
    @Jirajine #12
    看我上一条评论,至少国行 iOS 应用初次启动时会弹出一个框,询问是否允许 app 访问移动和 WiFi 网络,正常情况下为了 app 能联网都是能通过的,但只要允许了移动网络,app 就能通过 Core Telephony 的相关 API 获取 carrier 的网络等信息了,这个时候就能通过运营商给的 sdk 获取到手机相关信息包括唯一识别码了。
    Jirajine
        14
    Jirajine  
       2019-06-14 20:02:30 +08:00 via Android
    @morethansean 这就有点坑了。iOS 访问 LTE 网卡还是分应用的?这样的话简直比 Android 滥用 IMEI 更严重了。Android 只是搞拒绝就闪退,还能欺骗。这个和必须权限绑定一起的话,普及起来简直危害太大
    seabirds
        15
    seabirds  
       2019-06-14 21:19:12 +08:00 via iPhone
    @Jirajine 主要问题在运营商这边
    xshwy
        16
    xshwy  
       2019-06-15 02:22:16 +08:00 via iPhone
    ios 也可以了……抖音可以用本机手机号登陆
    honeycomb
        17
    honeycomb  
       2019-06-15 13:06:06 +08:00 via Android
    @morethansean 截图上已经说了
    honeycomb
        18
    honeycomb  
       2019-06-15 13:07:32 +08:00 via Android
    @morethansean 这个数据是直接从运营商获取的(只要是通过 cellular 的线路),期间不需要预先获得手机方面的识别码或者与电话有关的组件。
    lnim
        19
    lnim  
       2019-06-17 17:16:58 +08:00
    UchihaJay
        20
    UchihaJay  
       2019-12-11 14:26:52 +08:00
    安卓的话是从 SIM 卡那获取的 ,移动可以读取 . 至于怎么获取的我就不清楚了.
    lxk11153
        21
    lxk11153  
       2020-05-11 20:49:42 +08:00
    安卓获得的手机号格式是怎样的?"+86 18966665444" 还是 "+8618966665444" 还是 "18966665444"
    DingSoung
        22
    DingSoung  
       2020-12-29 19:22:39 +08:00
    @ladypxy Android 并不是随便取,会有提示。

    只不过按照国内的流氓 App 策略,不给就不让用,是一回事
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2507 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 95ms UTC 10:30 PVG 18:30 LAX 02:30 JFK 05:30
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86