针对正方教务开发大学App(查成绩,课表,一键评教……)

大一时针对我校开发的校园客户端,方便学生查课表、成绩、一卡通消费记录、失物招领等等。遵循MD设计原则,数据大多通过抓包获取,现开源(已屏蔽学校相关信息,怕被请回去喝茶)

Ps:第一次这么认真写文章,有不合理的地方希望大家提出 — 谢谢谢谢啦

还是先附上github,希望大家给个star : https://github.com/longer96/CDTU


Introduction

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

Ps:有公司看得起的望给口饭吃(流泪)

Apk下载

  1. Pre.im http://pre.im/cdgyxy
  2. 应用商店搜索 “成都工业学院
  3. 扫码下载

实现功能

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

    涉及代码:AppSplashActivity.java

    • 防止APP启动时白屏/黑屏 参考博客

* 本校学生通过校园帐号登录
涉及代码:LoginSchool_Activity.java
* 若作为刚接触的同学可以参考后面补充,写的很详细(大佬绕道):更多补充_模拟网页登录

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

ps:但是不能进行学生相关的查询。涉及代码:Register_Activity.java , LoginPhone_Activity.java
* 短信验证码使用的是:Bmob短信服务
* 同时推荐使用阿里大于的短信验证API:阿里大于
* 中间还涉及到手机号码的验证,介绍一个好用的工具集合:AndroidUtilCode
* QQ三方登录官方文档

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

涉及代码: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

* **表白墙**

涉及代码:LoveActivity.java , LoveOne_Activity.java
* 点赞动画的实现 ShineButton
* 文字墙效果的实现 文字飞入、飞出效果

* **图书馆**

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

* **一卡通消费记录**

涉及代码:Card_Activity.java
* 下拉刷新,上拉加载 刷新效果参考:WaveSwipeRefreshLayout

* **正方系统**

涉及代码:zfxt 文件下所有
* 在校成绩(查成绩很方便,期末app经常挤爆)
* 课表查询
* 等级考试、学分统计、考室查询(还有更多功能 如:一键评教、一键选课等不方便贴上来,有兴趣的同学可以下载查看)

* **学校黄页**

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

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

Ps:最近没时间完善了,涉及代码:Store_Activity.java
* 左边导航栏的实现(仿外卖App以及京东) 开源项目:VerticalTabLayout
* 寝室的选择(友好的交互) 开源项目:Carousel Picker
* 店铺的选择 直接参考Store_Activity.java 中代码
* 底部购物车的实现 参考博客
* 加入购物车动画可参考 开源项目:ShoppingCartAnimation

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

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

* **跳蚤市场**

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

* **校园公告**

涉及代码:NewsActivity.java , News_bodyActivity.java
* 抓取我校校园公告数据简单的显示 连接:校园公告

* **学生查询、一卡通查询**

涉及代码:QueryActivity.java , Query_cardActivity.java
* 主布局(仿QQ个人信息布局)
* 搜索控件是自己写的,网上有更好的实现,如:
* MaterialSearchView
* MaterialSearchBar
* PersistentSearch

* **校车、校历、学生处**

涉及代码:ImageActivity.java , Calan_Activity.java , StudentActivity.java
* 图片放缩控件 该App使用的是:PinchImageView,同时附上2个不错的框架
* PhotoView
* FrescoImageViewer
* 网络图片加载框架用的是:Glide图片加载,有很多优秀的图片加载框架博文中也有提到
* Glide加载圆图、白边圆图、高斯模糊见:更多补充

* **关于App**

涉及代码:Info_Activity.java
* 检查更新(打开App就有自动更新,分为强制和非强制更新,自己写的可以参考)
* 滑动折叠的实现可以参考:博客

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

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

涉及代码:SkinActivity.java

* **一卡通改密、挂失**

涉及代码:CardToolsActivity.java
* 使用Material-dialogs接受用户的输入

更多补充

  • 模拟网页登录(初学者)

    能把以下3篇内容吸收就没有问题了

    • 毕业设计想把学校教务系统的功能模块做成手机APP?(灰常灰常详细)
    • 打造超级课程表一键提取课表功能
    • 如何做一个Android APP来访问正方教务管理系统查成绩?
    • 补充:模拟登陆带验证码的网站客户端

* 图标素材网
* 阿里巴巴图标库
* easyicon.net
* 不容错过的10个图标素材网站

* **图片加载框架** * [Gilde](https://github.com/bumptech/glide) * [使用方法及简介](https://mrfu.me/2016/02/27/Glide_Getting_Started/) * [Glide加载圆形图片,设置白色边框](http://blog.csdn.net/u010694658/article/details/53539486) * [Glide的拓展(高斯模糊、加载监听、圆角图片)](http://www.jianshu.com/p/4107565955e4?open_source=weibo_search)

* **应用加固**(第三方加固平台很多,仁者见仁) * [5大移动应用加固平台评测](http://www.cnblogs.com/redbricks/p/5666202.html) * 该App使用的是:[360加固宝](http://jiagu.360.cn/)

* **数据统计** * 国内做应用统计的也有很多,大家可以自行了解后选择 * [小米统计服务使用指南](https://dev.mi.com/doc/p=3995/index.html)

* **消息推送** * 推送了解:[安卓推送这件小事](https://zhuanlan.zhihu.com/p/26053061) * 国内做第三方推送的也有很多:[Android推送SDK哪家好?](https://www.zhihu.com/question/22354498) * 大家自行选择,该App使用的是:[小米推送](https://dev.mi.com/doc/p=6421/index.html)

* **QQ一键加群** * 原来以为需要接入QQ Sdk才能实现,结果却是很简单:[QQ一键加群](http://qun.qq.com/join.html)

* **jsoup解析网页** * [利用Jsoup抓取数据](http://www.jianshu.com/p/b7ee086e6eae)

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

福利

自己在开发过程中收集的一些有用的干货现在全部分享出来,总的来说:个人的开发能力不强,但更愿意借助巨人的肩膀
* 最全面的 Material Design 学习资料
* 博主每天有时间就在看的干货App:Gank.Io非官方客户端应用
* 安卓书签网
* Android开发技术周报
* 有很多不错的Demo:开源代码
* Android 资源大全中文版

  • UE、UI 相关的网站

    • App整体布局参考
    • RGB对照表
    • 图片在线压缩
  • RxJava 的学习

    • 给 Android 开发者的 RxJava 详解
    • RxJava是什么
    • 给初学者的RxJava2.0教程
    • MVP+Retrofit+RxJava实践小结
  • Android之App瘦身攻略

关于我

即将毕业的学生,因学历压制,想找个对口的工作都不容易(工作尽心尽责,有上进心)

★★★★★ Ps:望收留!(成都) ★★★★★

如果看见这篇文章的你也想给自己的学校开发一个App、或是遇到一些问题都可以联系我

QQ:1114070859

Email:longer2016@qq.com

针对正方教务开发大学App(查成绩,课表,一键评教,图书馆,正方系统)相关推荐

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

    原文地址:https://zhuanlan.zhihu.com/p/29776226 githu地址:https://github.com/longer96/CDTU 大一时针对我校开发的校园客户端, ...

  2. 教务系统自动评教_PHP版正方教务系统一键评教(已修改BUG)

    <首先介绍大家都熟悉的JS版本> 1.拖动右边的链接到浏览器书签栏或添加到书签:一键评教脚本 2.打开教务管理系统的评教页面,进入第一个要评教的老师页面. 3.点击书签栏的"一键 ...

  3. 教务系统一键评教案例分析

    本文中使用的教务系统是湖南强智 思路 1.登录取cookie 2.获得评教链接 3.获得评教接口 4.一键评教 1.登录 一般来讲登录有两种思路,分别是selenium模拟登录和接口登录,在分析过腾讯 ...

  4. 正方教务系统一键评教代码

    选取了好几种代码,第一种是我自己使用成功的一种.其他几个没有成功,等以后学会了javascript之后再来分析一下为什么. 第一种:正方教务管理系统 - 一键评价(JS) (function(){va ...

  5. 简单的正方教务系统一键评教 js 代码

    var x=document.getElementById(select.id); for(var j =0;j<=x.options.length;j++){if(j=options.inde ...

  6. 华侨大学教务系统评教脚本----一键评教

    一键评教脚本 每到期末,我们就会面临一个繁琐的事情--评教.重复的工作总是使人厌烦,所以今天我们带来了华侨大学教务处一键评教的脚本. 食用方法: 浏览器进入评教页面(要在具体的评教页面): 键盘按下F ...

  7. 教务系统自动评教_教务系统一键评教教程

    在红方框内输入代码并回车: (function(){ var done = false; var length = document.getElementById("iframeautohe ...

  8. 新版正方教务网模拟登录python实现

    新版正方教务网模拟登录 前言 正好大学期末考完,分析一下正方教务网登录,实现模拟登录就可以自己实现抢课和查询成绩等常规操作了 申明 本文以我学校的正方教务网为例,关键信息已打码,理论上适用于所有新版正 ...

  9. Android 模拟登陆正方教务系统

    茂名职业技术学院官网新闻APP 这是一个使用jsoup爬取茂职院官网和正方教务系统信息的app. 采用viewpager+fragment+tablayout结构,支持下拉刷新和上拉加载. 主要功能有 ...

最新文章

  1. [20171225]查看并行执行计划注意的问题.txt
  2. CVPR新规严禁审稿期间公开宣传论文,可发arXiv,LeCun:疯了吧!
  3. 常见算法的python实现(Github标星75.5k+)
  4. Hibernate快速入门
  5. IO的几种分类(详细)
  6. THUSCH 2017 大魔法师(矩阵乘法+线段树)
  7. 书评:学会提问——批判性思维指南
  8. AC A2C A3C
  9. 熊博士c语言,InstallShield2015制作安装包----------安装后实现电脑开机自启动
  10. 元宇宙之经济(01)理解区块链
  11. Python+OpenCV 识别银行卡卡号
  12. 计算机认识新朋友教案,认识新朋友教案
  13. python以图搜图_以图搜图(一):Python实现dHash算法(转)
  14. C++中abort()函数与exit()函数区别
  15. 笔记 | 笨方法学Python
  16. List如何在遍历时删除元素
  17. python 获取微妙时间差
  18. python读取hdf文件 高效_Python解析HDF文件
  19. js根据关键词数组匹配违禁词并标红显示
  20. 会喊麦的CTO:从外包仔到熊猫直播CTO的技术态度丨今晚直播

热门文章

  1. Java(1):Java SE疯狂复习基本数据类型、OOP
  2. 向日葵资深产品总监技术分享:“国民远控”如何在AD域环境下应用
  3. 【协议】MQTT、CoAP、HTTP比较,MQTT协议优缺点
  4. excel单元格内容拆分_Excel技巧:如何批量合并相同内容单元格?
  5. Excel中如何批量合并相同内容单元格
  6. 小米10性能再进化!小米带来国内安卓系统GPU驱动首次更新——初阶GPU及其驱动升级认识
  7. centos 中redis的使用
  8. IT工具【日常随手记】
  9. ResNet+cifar10总结-由浅入深
  10. vue 播放器视频插件 之 vue-video-player 铺满全屏自动播放