[Android 分享]在无任何接口的情况下开发校园客户端的尝试 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
MummyDing
V2EX    分享创造

[Android 分享]在无任何接口的情况下开发校园客户端的尝试

  •  
  •   2016-04-28 10:36:53 +08:00 3687 次点击
    这是一个创建于 3455 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我相信 V 站有好多学生党,一般学校应该都有了自己的客户端,其中不少是以学校&学生合作的形式完成。这种开发就减少了很多麻烦:
    1.有校方提需求 
    2.学校有资源(资金,服务器,人员,推广... ) 
    3.有现成的接口
    但是我们在开发这个的时候,统统都没有!  
    首先,之前没有任何专门为学生服务的官方 App 。自己向有关老师了解过,他们有想过做,但是学校不肯出钱,另外学校好像也是不愿提供接口。所以,我们学校一直没有自己的 App 。
    上个学期我准备自己写一个,正好发现同学也有在做这个的,于是两人组了个队。寒假前,我们大概确定了下需求,寒假开工:自己抓包分析请求,解析页面,折腾一个寒假。(顺带吐槽我校混乱的身份认证,有教务处&图书馆&自习室三套,使用各自的功能都需要登相应的账号) 一个寒假,功能完成了个大概,然后开学这段找实习,不得不搁置。前段实习确定下来,这两个礼拜又重新填坑,昨天发布,本来还担心没什么人会关注,不过空间两三个小时就被我们的 App 刷屏了。
    说了这么多,当然到这里我们不是要推广 App(显然大家用不了) 我们在这发帖的目的是:
    1. 我想不仅仅我们学校有这个情况,没有校方的支持,但是又想自己开发一个 App 供身边同学使用。(我在开始开发这个 App 的时候还有老师泼冷水,在课堂上和他杠上了)
    2 .我们这次的开发经验,希望给和我们状况类似的同学一个参考
    3. 同时,我们这个本身也是个 Android 项目,源码这块也欢迎交流

    GitHub 项目地址:
    https://github.com/MummyDing/Awesome-Campus [随意 fork&star&发 issue]
    视频简介: http://m.miaopai.com/show/channel/Q-ekXL4V31-TkE8jIR14AQ__ [没有账号可以看这个视频]

    后续我们会发点技术博客,不过这几天还要修 bug&加 feature
    邮箱  MummyDing   MummyDing@outlook & KevinWu: [email protected]
    36 条回复    2016-05-01 15:42:14 +08:00
    MummyDing
        1
    MummyDing  
    OP
       2016-04-28 10:42:30 +08:00
    rosu
        2
    rosu  
       2016-04-28 11:06:08 +08:00
    (瞩目
    (拇指
    coolair
        3
    coolair  
       2016-04-28 11:09:34 +08:00
    听说你们学校有个食堂女神……
    tscat
        4
    tscat  
       2016-04-28 11:11:27 +08:00 via iPhone
    本来打算开发的,但是学校的查询大部分都需要内网或者 vpn ,放弃。
    目前就写了个图书馆查询的。因为就发现这个是可以外网访问的。。不能外网在手机上根本没意义
    geeksu
        5
    geeksu  
       2016-04-28 11:17:45 +08:00
    曾经毕设做的就是这东西,外网通宵抓图书馆,结果第二天外网访问被禁了。
    zonghua
        6
    zonghua  
       2016-04-28 11:18:49 +08:00 via iPhone   1
    @tscat 帮教务处做网站的时候,自己留了个 http 代理,这样就有办法从外网访问了
    MummyDing
        7
    MummyDing  
    OP
       2016-04-28 11:24:19 +08:00
    @coolair 啊啊啊啊 这你都知道,哪的,不过那个应该是炒作打广告
    MummyDing
        8
    MummyDing  
    OP
       2016-04-28 11:24:52 +08:00
    @tscat  这就略坑了,不给留条活路
    MummyDing
        9
    MummyDing  
    OP
       2016-04-28 11:25:24 +08:00
    @geeksu  这么惨,摸头...
    tscat
        10
    tscat  
       2016-04-28 12:00:26 +08:00 via iPhone
    @zonghua 这个流量大一点就被发现了
    iyaozhen
        11
    iyaozhen  
       2016-04-28 12:07:49 +08:00 via Android
    @tscat 哈哈,我当时是直接搞了台内网虚拟机,开了外网权限做代理
    coolair
        12
    coolair  
       2016-04-28 12:38:09 +08:00 via Android
    @MummyDing 都上新闻了,大家都知道吧
    zonghua
        13
    zonghua  
       2016-04-28 15:06:21 +08:00 via iPhone
    @tscat 但是好像也没管我
    xuzywozz
        14
    xuzywozz  
       2016-04-28 15:21:10 +08:00
    正好在写自己学校的这一套 哈哈~
    qqmishi
        15
    qqmishi  
       2016-04-28 21:34:15 +08:00
    哈哈哈我也在规划自己学校的,目前写完了 python 版正在向 java 移植
    jeremaihloo
        16
    jeremaihloo  
       2016-04-28 21:59:06 +08:00 via Android
    学校提供各种接口,随便玩
    imNull
        17
    imNull  
       2016-04-28 22:31:59 +08:00 via Android
    出最美女教官的临近高校支持下,可惜我没找到做移动端的同学,我也不会写, https://github.com/xu42/DLPU-Student-API
    imNull
        18
    imNull  
       2016-04-28 22:38:22 +08:00 via Android
    额,,视频里,看成辽宁师范了,,,
    SkyEcho
        19
    SkyEcho  
       2016-04-28 23:30:35 +08:00 via Android
    打开 Chrome 抓包,模拟登录就行了,主要是解析 HTML 繁琐
    MummyDing
        20
    MummyDing  
    OP
       2016-04-29 09:32:34 +08:00 via Android
    @imNull 貌似没有辽宁字眼?
    imNull
        21
    imNull  
       2016-04-29 09:45:07 +08:00 via Android
    @MummyDing 眼花了。。
    TheOutgoing
        22
    TheOutgoing  
       2016-04-29 10:03:29 +08:00 via iPhone
    曾经因为做这个被学校请喝茶的路过。坐等各位来问我是什么学校,然后一起批判。
    heygu
        23
    heygu  
       2016-04-29 10:17:51 +08:00 via iPhone
    前段时间也想做个,但无奈坑太多,能力也有限
    MummyDing
        24
    MummyDing  
    OP
       2016-04-29 13:17:24 +08:00 via Android
    @heygu 找个靠谱的队友一起干
    MummyDing
        25
    MummyDing  
    OP
       2016-04-29 13:17:48 +08:00 via Android
    @StephenW 谈谈吧~_~
    csx163
        26
    csx163  
       2016-04-29 13:52:13 +08:00
    我还以为我这的师大,然后里面也有一个食堂女神
    yejinmo
        27
    yejinmo  
       2016-04-29 18:17:34 +08:00 via Android
    同想做一个,然而学校方面以种种安全原因拒绝支持(怕担责任可以理解)

    (很多信息都是内网的,外网无法访问)

    另学校自带墙,微软账号都登陆不了,非 SSL VPN 无法外连

    想做反向代理没有合适的方法
    TheOutgoing
        28
    TheOutgoing  
       2016-04-29 19:24:53 +08:00
    @MummyDing 抓了几个现成的接口,还有写了一点爬虫。校方找了几个打着官腔的人来说 你影响我们系统安全了,能看到我们银行卡和密码。。。我当时是懵逼的。还自吹江苏第三大计算机院校,所有系统都是外包的。
    MummyDing
        29
    MummyDing  
    OP
       2016-04-30 01:17:17 +08:00 via Android
    @StephenW 有利益关系吧,外包给外边公司可能有回扣
    ayaseangle
        30
    ayaseangle  
       2016-05-01 00:41:21 +08:00 via Android
    @StephenW
    这结果
    ayaseangle
        31
    ayaseangle  
       2016-05-01 00:49:01 +08:00 via Android
    貌似大家都有这样的经历,但是却改变不了什么。


    比如学校的选课系统

    系统本身复杂性就比较高,但是没有单元测试,年久失修,已经不具备重构条件。

    比如我上过的那所大学,选课是全校性的,集中时段,基本所有学生都在对系统进行 DDoS 。
    aliuwr
        32
    aliuwr  
       2016-05-01 09:38:31 +08:00 via Android
    是不是懒得起名字的软件都叫 XXX+
    MummyDing
        33
    MummyDing  
    OP
       2016-05-01 14:37:06 +08:00 via Android
    @ayaseangle 刚刚就有同学发现一个 bug ,我们学生账号可以查看其他同学的成绩
    MummyDing
        34
    MummyDing  
    OP
       2016-05-01 14:37:42 +08:00 via Android
    @aliuwr 你是第一个吐槽名字的~
    ayaseangle
        35
    ayaseangle  
       2016-05-01 14:46:33 +08:00 via Android
    @MummyDing 参数验证不严格
    MummyDing
        36
    MummyDing  
    OP
       2016-05-01 15:42:14 +08:00 via Android
    @ayaseangle 嗯,类似我之前还发现修改密码那块,新密码重复输入并不会检查,我忘了重复输入最后修改的密码就是空...
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5950 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 06:22 PVG 14:22 LAX 23:22 JFK 02:22
    Do have faith in what you're doing.
    ubao 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