【超级课程表】大学校园客户端App(查成绩,一卡通,课表,一键评教,正方系统……)

原文地址:https://zhuanlan.zhihu.com/p/29776226

githu地址:https://github.com/longer96/CDTU

大一时针对我校开发的校园客户端,方便学生查课表、成绩、一卡通消费记录、失物招领等等。遵循MD设计原则,数据大多通过抓包获取,现开源(已屏蔽学校相关信息,怕被请回去喝茶) 
Ps:第一次这么认真写文章,有不合理的地方希望大家提出   --- 谢谢谢谢啦 


Introduction

功能的实现主要是通过模拟网页登录,通过抓包和爬虫获取数据,底层都是HttpClient写的(当时大一才接触Android,Httpclient已被官方废弃)。正往Mvp + RXjava 转型,在校期间有空就在更新软件,校内好评度很高,现毕业设计之后开源。 
Ps:有公司看得起的望给口饭吃(流泪)

实现功能

  • App Splash页秒开(感谢图形图像专业提供的UI设计)

    涉及代码:AppSplashActivity.java


 

  • 本校学生通过校园帐号登录

    涉及代码:LoginSchool_Activity.java

    • 若作为刚接触的同学可以参考后面补充,写的很详细(大佬绕道):更多补充_模拟网页登录 


 

  • 其他用户可以通过手机号或QQ一键注册、登录

    ps:但是不能进行学生相关的查询。涉及代码:Register_Activity.java , LoginPhone_Activity.java


 

  • 课表功能的实现(很好看,用户体验棒)

    涉及代码:CourseActivity.java , Course_addActivity.java , Course_editActivity.java

    • 高校大多数都是使用正方系统,课表的数据也是从正方系统爬取解析的,解析的方法大家可以参考utils目录下StreamTools.java getcourse方法。 

    • 扁平设计,大大提升内容的占有率
    • 个性化设计,可使用系统自带背景图以及自定义背景图
    • 用户可编辑课程,查看学期安排以及教学时间表 

        


 

  • 主页轮播图的实现

    涉及代码:MainActivity.java

    • 预览图使用的是学校的风景图,后台可更换图片url、数量、添加事件。
      • 图片是挂在在 花瓣网 上的(自己服务器带宽小,学生党伤不起)
    • 轮播图的实现参考 RollViewPager 


 

  • 主页布局实现(主要参考支付宝)

    涉及代码:MainActivity.java , Fragment_Menu.java

    • 底部导航实现参考 AHBottomNavigation
    • 布局严格遵守 Material Design 准则。 Material Design 中文版
    • 实现了信息的整合,将有效的信息提取显示,避免效益冗余。
    • 更多功能菜单的实现,可下载查看布局文件app_bar_main.xml 参考博客
    • 水平RecyclerView的使用,相关博客:RecyclerViewSnap
    • 场景过度动画 可百度Shared Element Transition 

       


 


 

  • 图书馆

    涉及代码:library 文件下所有

    • 抓取我校图书馆相关数据,优雅的显示在手机上
      • 学生可以查询所借图书,历史借阅
      • 可以查询图书信息,检索图书(有时间可以深入完成高级检索功能)
      • 学生可以查询图书馆相关信息 

          


 

  • 一卡通消费记录

    涉及代码:Card_Activity.java


 

  • 正方系统

    涉及代码:zfxt 文件下所有

    • 在校成绩(查成绩很方便,期末app经常挤爆)
    • 课表查询
    • 等级考试、学分统计、考室查询(有时间可以扩展更多功能 如:一键评教、一键选课) 

        

       


 

  • 学校黄页

    涉及代码:Yellow_Activity.java , Sqlite_selectActivity.java

    • 数据不是很齐全,没有官方提供数据。也迫于没有经济支持没能做大
    • 自己写的标签页,之后才发现网上有更好的
    • 显示数据仿魅族通讯录(上个手机是Mx3,魅族通讯录做的真的不错) 


 

  • 同学的店(还对应一个商户版,用来管理、添加商品,接单等等,学生可以自己开店)

    Ps:最近没时间完善了,涉及代码:Store_Activity.java


 

  • 失物招领(界面实现还行)

    涉及代码:MainActivity.java , Fragment_Menu.java , Fragment_Lost.java

    • 主界面(都是自己辛辛苦苦写出来的界面)
    • 详细界面(消息发布者可以编辑该消息)
    • 发布消息(需登录)
    • 其中也使用到了过渡动画,参考上面“主页布局实现-场景过度动画”
    • EditText的MD实现  可百度:TextInputLayout
    • 图片选择框架  开源项目:ImageSelector
    • 之后发现几个很好的图片选择框架,比如:GalleryFinal
    • 同时附上2个图片压缩框架(该项目未使用,是自己写的)


 

  • 跳蚤市场

    涉及代码:MainActivity.java , Fragment_Menu.java , Fragment_Goods.java

    • 主界面(中规中矩),详细界面和上面的失误招领详细界面差不多就不重复了
    • 右下角FAB 的实现 参考博客:MaterialSheetFab,网上还有很多类似的就不详细介绍了
    • Material Design 

        

       


 

  • 校园公告

    涉及代码:NewsActivity.java , News_bodyActivity.java

    • 抓取我校校园公告数据简单的显示 连接:校园公告 


 


 

  • 校车、校历、学生处

    涉及代码:ImageActivity.java , Calan_Activity.java , StudentActivity.java


 

  • 关于App

    涉及代码:Info_Activity.java

    • 检查更新(打开App就有自动更新,分为强制和非强制更新,自己写的可以参考)
    • 滑动折叠的实现可以参考:博客 


 

  • 校园消息通知(若有消息,主界面显示,一般用于通知学校相关活动,以及学生会相关) 


 

  • 换肤框架(自己写的比较渣,简单略过)

    涉及代码:SkinActivity.java 


 

  • 一卡通改密、挂失

    涉及代码:CardToolsActivity.java

    • 使用Material-dialogs接受用户的输入 


 

更多补充


 


 


 


 


 


 

  • QQ一键加群
    • 原来以为需要接入QQ Sdk才能实现,结果却是很简单:QQ一键加群


 


 

  • 接入分享App、跳转到应用商店评论功能
    • 这块网上教程很多,也不复杂,博主就不啰嗦了


 

福利

自己在开发过程中收集的一些有用的干货现在全部分享出来,总的来说:个人的开发能力不强,但更愿意借助巨人的肩膀


 

Apk下载

  1. Pre.im http://pre.im/cdgyxy
  2. 应用商店搜索 “成都工业学院
  3. 下载Demo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值