cyberdak
V2EX  ›  问与答

刚好看到一个有趣的面试题

  •  
  •   cyberdak · Oct 26, 2015 · 3915 views
    This topic created in 4031 days ago, the information mentioned may be changed or developed.

    我们公司拥有一批代理商,代理商有一个服务代号(如 020001 ),每个用户注册后需要填写一名代理商服务代号进行绑定。现代理商要求拥有一个独立的二维码下载链接,通过该链接下载 App 后,对应的用户即可绑定对应的代理商,不需要用户自行操作绑定。请根据该需求,设计一种方式提供这个二维码下载链接,使得产品开发维护最简单。

    对于 android ,我能想到的就是系统每次添加新代理商时,脚本生成一个新的 apk 来提供下载。
    但是 ios 似乎没办法(我主要做服务端, ios 不太懂)

    如果代理商根据地域来划分的话,似乎是可行的方案

    10 replies  •  2015-10-27 11:10:47 +08:00
    slowgen
    slowgen
    PRO
    Oct 26, 2015
    1
    想到一个猥琐的方法...
    二维码跳转到 A 页面,A 页面插 flash,flash 获取设备等信息,生成一个 key,接着带着 key 和自身 url 中的代理商代码跳转到 B 页面,B 记录 key 和代理商,然后发送安装包
    然后 app 的注册页用 webview,插 flash,算出那个 key,注册时一起提交,找到厂商代码

    感觉根据代理商搞 n 个安装包不现实,应该是用 html5 或者什么来得到设备信息,然后像上面那样做
    嗯,我也是服务端
    zakokun
    zakokun
    Oct 26, 2015
    2
    这个只能自己填写吧...
    新用户注册的时候要他自己填去吧
    matsuijurina
    matsuijurina
    Oct 26, 2015❤️2
    3
    本质上,这个问题就是要求让用户通过一个二维码完成两件事: 1 ,获取 App ; 2 ,绑定代理商。
    解决方法:
    自己架设一个短链接服务器,为每个用户生成一个独立的短链接(如 daili.to/s12he),所有的短链接都指向 appstore 的应用下载地址。将独立短链接转为二维码分发给用户。用户扫码后跳转 appstore 下载安装 app ,启动 app 后引导用户再次在 app 内扫描那个二维码,这次直接把短链接内的独立字符串发给服务器,服务器确认新用户已获取 app 登录成功,在后台自动绑定代理商,将代理商信息传回 app ,在客户端完成绑定。

    这样就省去了为每个用户独立生成 App 的麻烦,也没有审核风险。
    matsuijurina
    matsuijurina
    Oct 26, 2015❤️1
    4
    哦,按照题目要求应该是为每个代理商生成一个独立的短链接,修正下。
    blacktulip
    blacktulip
    Oct 26, 2015
    5
    @matsuijurina 好巧妙的方法,值得学习。
    wy315700
    wy315700
    Oct 26, 2015
    6
    应用宝有个微下载的功能,但是 iOS 还没好办法,
    chairuosen
    chairuosen
    Oct 26, 2015
    7
    不知道 webview 能不能拿 fingerprint
    https://cseweb.ucsd.edu/~hovav/dist/canvas.pdf
    mornlight
    mornlight
    Oct 26, 2015
    8
    @wy315700
    iOS 应该也可以实现的,具体原理我还没去研究,效果是用户通过平台商生成的链接跳到 AppStore 去下载安装后,启动应用时可以知道来源链接。我用的是国外的 TapStream 。
    watzds
    watzds
    Oct 27, 2015 via Android
    9
    用户访问链接,如果已经登录,直接绑定,未登录就让他登录,最后跳转下载 App
    这样很简单啊,行不?
    cyberdak
    cyberdak
    OP
    Oct 27, 2015
    10
    @watzds 理论上,用户是接触 app 之后,再注册
    下载页面只提供下载功能了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   596 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 19:11 · PVG 03:11 · LAX 11:11 · JFK 14:11
    ♥ Do have faith in what you're doing.