當前位置:首頁 » 安卓系統 » 超級課程表android

超級課程表android

發布時間: 2022-08-07 08:29:27

Ⅰ 超級課程表怎麼在手機桌面顯示課表

超級課程表在手機桌面顯示課表
1.點擊打開超級課程表。
2.登錄自己超級賬號。
3.點擊打開發現一覽眾的課程表,點擊設置,課表最大節數,根據實際情況選擇,如果晚上沒課,就選擇8節課。
4.長按手機菜單鍵,直到彈出菜單欄,選擇編輯模式。
5.添加小工具,滑動選擇超級課程表。
6.進入超級課程表後,選擇課程表4X4就行了。
7.設置成功。

Ⅱ 華為手機怎麼設置課程表

手機本身不支持該功能,建議您在華為應用市場下載第三方應用。

Ⅲ 超級課程表的應用與開發

現在手機系統一般分三類:ios針對蘋果手機或ipad,android針對安卓平台,還有就是微軟平台。前兩個平台應用要廣范一些。
如果你要開發手機應用,對於個人開發者而言,像這類簡單的應用在android平台上開發要容易一些,因為ios開發成本較高。
而在android平台上開發,所需的語言就是java,而且你這類的應用是很簡單的應用,只需要一些基礎知識就能做出來。
希望對你有用。
請採納答案,支持我一下。

Ⅳ 基於android課程表怎麼獲取課表

開發過程
一開始因為畢設有關課程表的要求不明,主要就是利用jsoup拉取學校教務管理系統的課程數據進行課程表界面的填充顯示,並不能課程的個性化調整。
後來重新調整了需求,參考了超級課程表的功能。重新設計了實體類,利用bmob移動端雲作為爬取到的數據的數據伺服器進行了重新的開發。
主要代碼
1、課程實體類
package com.mangues.coursemanagement.bean;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import cn.bmob.v3.BmobObject;

public class CourseBean extends BmobObject implements Serializable {
public static final String TAG = "CourseBean";

private String studentId;
private String dataYear;
private String dataTerm;

private String courseName = ""; //課程名
private String courseRoom = ""; //教室
private String courseTeacher = ""; //老師
//private String courseWeekNumber = "0";
private ArrayList<Integer> courseWeekNumber = new ArrayList<>(); //周數
private int courseWeek = 0; //星期幾上課
private int courseLow = 0; //第幾排
private int courseSection = 0; //延續幾節課
//private String courseSection = "12"; //第幾節上課1,2,12(2節課)
//private String courseIn = "3"; //單雙周 1(單),2(雙),3(全)
public CourseBean() {
super();
}

public void setCourseBase(String studentId, String dataYear, String dataTerm) {
this.studentId = studentId;
this.dataYear = dataYear;
this.dataTerm = dataTerm;
}

public CourseBean(String courseName, String courseRoom, String courseTeacher, ArrayList<Integer> courseWeekNumber, int courseWeek, int courseLow, int courseSection) {
this.courseName = courseName;
this.courseRoom = courseRoom;
this.courseTeacher = courseTeacher;
this.courseWeekNumber = courseWeekNumber;
this.courseWeek = courseWeek;
this.courseLow = courseLow;
this.courseSection = courseSection;
}

/**
* str 數據到bean
* @Name: stringToBean
* @param str
* @return
* @Time: 2015-12-21 上午11:00:57
* @Return: CourseBean
*/
public static CourseBean stringToBean(String str) {
return toBean(str);
}

//輔助
private static CourseBean toBean(String courseDatas){
CourseBean bean = null;
String[] courseData = courseDatas.split("◇");
if(courseData.length>3){ //有數據
bean = new CourseBean();
String courseName = courseData[0];
String courseRoom = courseData[2];
//獲取上課周數
findWeekNumberFromStr(courseData[1],bean);
bean.setCourseName(courseName);
bean.setCourseRoom(courseRoom);
findCourseInFromStr(courseData[4],bean);
}
return bean;
}

/**
* 找出上課周數,老師名字
* @Name: findFromStr
* @return
* @Time: 2015-12-21 上午11:22:30
* @Return: String
*/
public static void findWeekNumberFromStr(String courseData,CourseBean bean){
Pattern pattern = Pattern.compile("(\\w*)\\((\\d+)-(\\d+)\\)");
Matcher matcher = pattern.matcher(courseData);
if(matcher.find()){
String teacher = matcher.group(1);
bean.setCourseTeacher(teacher);
String weekNumberstart = matcher.group(2);
String weekNumberfinish = matcher.group(3);
Integer weekNumberstartInt = Integer.parseInt(weekNumberstart);
Integer weekNumberfinishInt = Integer.parseInt(weekNumberfinish);
for (int i = weekNumberstartInt;i<=weekNumberfinishInt;i++){
bean.getCourseWeekNumber().add(i);
}
}
}

/**
* 找出 上課是不是單雙周,幾節課
* @Name: findCourseInFromStr
* @param courseData
* @return
* @Time: 2015-12-21 下午1:29:05
* @Return: String
*/
public static void findCourseInFromStr(String courseData,CourseBean bean){
Pattern pattern = Pattern.compile("(\\w*)\\{(\\d*)節\\}");
Matcher matcher = pattern.matcher(courseData);
if(matcher.find()){
String str = matcher.group(1);
ArrayList<Integer> list = bean.getCourseWeekNumber();
switch (str) {
case "單周":
for (int i = 0;i< list.size();i++){
Integer weekNumber = list.get(i);
if (weekNumber%2==0){ //移除偶數
bean.getCourseWeekNumber().remove(i);
}
}
break;
case "雙周":
for (int i = 0;i< list.size();i++){
Integer weekNumber = list.get(i);
if (weekNumber%2!=0){ //移除奇數
bean.getCourseWeekNumber().remove(i);
}
}
break;
default:
break;
}
String str2 = matcher.group(2);
String[] args = str2.split("");
if (args.length==3){
Integer integer = Integer.parseInt(args[1]);
Integer integer2 = Integer.parseInt(args[2]);
bean.setCourseLow(integer);
bean.setCourseSection(integer2-integer+1);

}else if (args.length==4){
Integer integer = Integer.parseInt(args[1]);
Integer integer2 = Integer.parseInt(args[2]+args[3]);
bean.setCourseLow(integer);
bean.setCourseSection(integer2-integer+1);

}else if (args.length==5){
Integer integer = Integer.parseInt(args[1]+args[2]);
Integer integer2 = Integer.parseInt(args[3]+args[4]);
bean.setCourseLow(integer);
bean.setCourseSection(integer2-integer+1);

}else if (args.length==2){
Integer integer = Integer.parseInt(args[1]);
bean.setCourseLow(integer);
bean.setCourseSection(1);
}

}
}

public String getCourseName() {
return courseName;
}

public void setCourseName(String courseName) {
this.courseName = courseName;
}

public String getCourseRoom() {
return courseRoom;
}

public void setCourseRoom(String courseRoom) {
this.courseRoom = courseRoom;
}

public String getCourseTeacher() {
return courseTeacher;
}

public void setCourseTeacher(String courseTeacher) {
this.courseTeacher = courseTeacher;
}

public ArrayList<Integer> getCourseWeekNumber() {
return courseWeekNumber;
}

public void setCourseWeekNumber(ArrayList<Integer> courseWeekNumber) {
this.courseWeekNumber = courseWeekNumber;
}

public int getCourseWeek() {
return courseWeek;
}

public void setCourseWeek(int courseWeek) {
this.courseWeek = courseWeek;
}

public int getCourseLow() {
return courseLow;
}

public void setCourseLow(int courseLow) {
this.courseLow = courseLow;
}

public int getCourseSection() {
return courseSection;
}

public void setCourseSection(int courseSection) {
this.courseSection = courseSection;
}

public String getStudentId() {
return studentId;
}

public void setStudentId(String studentId) {
this.studentId = studentId;
}

public String getDataYear() {
return dataYear;
}

public void setDataYear(String dataYear) {
this.dataYear = dataYear;
}

public String getDataTerm() {
return dataTerm;
}

public void setDataTerm(String dataTerm) {
this.dataTerm = dataTerm;
}
}

2、課程歸類處理

//按天查詢數據
private void getDayDate(List<CourseBean> list){
boolean boo = SaveUtil.getSharedPreferencesSwitch(mContext);
ArrayList<CourseBean> integerA = new ArrayList<>();
if (boo){
if (weekNum!=-1){
for (int l=0;l<list.size();l++){ //去除
ArrayList<Integer> integerArrayList = list.get(l).getCourseWeekNumber();
if (!integerArrayList.contains(weekNum)){ //不包含,就是不是本周,去除
integerA.add(list.get(l));
}
}
list.removeAll(integerA);

}
}

List<CourseBean> list1 = null;
Map<Integer,List<CourseBean>> map = new HashMap<>();

for (CourseBean be :list) {

Integer weekNum = be.getCourseWeek();
if (map.containsKey(weekNum)){ //有數據
list1 = map.get(weekNum);
}else {
list1 = new ArrayList<>();
map.put(weekNum,list1);
}
list1.add(be);
}

ArrayList<CourseBeanMap> ls = new ArrayList<>();

//按星期幾處理
for (Map.Entry<Integer,List<CourseBean>> entry : map.entrySet()) {
List<CourseBeanMap> mapw = handleRepeat(entry.getValue(),entry.getKey());
ls.addAll(mapw);

}

//本地存儲存儲使用
TimeTableBmob bmob = new TimeTableBmob();
bmob.setStudentId(CourseApplication.getInstance().getUserInfo().getStudentId());
bmob.setCourseList(ls);
bmob.setTerm(dataTerm);
bmob.setYear(dataYear);
CourseApplication.getInstance().setTimeTableBmob(bmob);

dataBack.onDataBack(ls);
}

//處理重復
private List<CourseBeanMap> handleRepeat(List<CourseBean> list,Integer weekNum){

Collections.sort(list,new Comparator<CourseBean>(){
public int compare(CourseBean arg0, CourseBean arg1) {
Integer year1 = arg0.getCourseLow();
Integer year2 = arg1.getCourseLow();
return year1.compareTo(year2);
}
});

List<CourseBeanMap> listKey = new ArrayList<>();
List<String> liststr = new ArrayList<>();

int size = list.size();

for (int h=0;h<list.size();h++){
CourseBean bean = list.get(h);
Integer low = bean.getCourseLow();
Integer sesson = bean.getCourseSection();
Boolean isAdd = false;

Ⅳ 超級課程表在技術上是怎麼實現的

有一批高校都是用的同一個教務系統,比如 URP教務系統 ,對這些學校只需開發同一套提取課程的介面,對於使用其他教務系統的學校,需要寫針對其提取的關鍵代碼。但是課程信息基本都一致,可以抽象出來,屏蔽底層獲取的細節,存儲和展示部分通用。

1、數據是怎麼獲取的,跟高校合作然後就可以獲得數據了么,然後獲得的數據是怎麼保存到系統的資料庫中呢?是導入還是輸入還是只是高校提供了一個介面...
1. 高校一般不會提供這種介面的,直接從網頁版的教務系統上獲取信息。Java 使用 JSoup 這個庫可以通過 JQuery 的風格獲取 HTML 上的結點信息,也就是教務系統的網站能獲取到什麼信息,客戶端就能獲取到什麼信息。
我估計超表是在伺服器端進行的信息解析,以免把解析的關鍵代碼放在客戶端導致核心技術泄漏,也壓縮了客戶端安裝包體積和傳輸數據量。
不過能開發出這么多學校的獲取介面,超表團隊的執行力還是挺強的。

2、課程表的設計:對這個還有困惑,如何更高效的從選課表中獲取到該學生選了什麼課,這些課是在星期幾第幾節課上的,然後存在一些特殊情況,不是每門課都是2節課連著一起上的有可能是3節課一起上。前台怎麼展示出來,資料庫又要怎麼設計查詢的性能才會更高效
2. 教務系統課程表都會有表格,HTML 的 Table 標簽,使用 Jsoup 可以提取去表格的每一行每一列的數據,每一行應該就是一個課程,讀取周次、節次信息,給課程相應欄位賦值即可。
這是我做的一個解析URP教務系統課表的代碼:scuol-android/NetHelper.java at master · mdluo/scuol-android · GitHub
關於在客戶端界面上連續課程的折疊和多周次課程重疊問題,我也盡量在模仿超表的那種按天的 ListView 的格式,設計了一種模擬俄羅斯方塊玩法的方法,具體代碼:scuol-android/CourseActivity.java at master · mdluo/scuol-android · GitHub

Ⅵ 超級課程表今天更新了,感覺不好使,想換回以前的版本,求連接,安卓版的

我覺得新版還好吧 沒有差太多~~

Ⅶ 超級課程表APP如何使用

超級課程表是一款大學生必備的APP,我們可以通過超級課程表記錄自己每周的課程,也可以用來記事,非常方便。下面我來介紹一下超級課程表APP如何使用,希望能夠幫到大家。
概括 01
首先我們需要用手機號碼注冊一個賬號,然後在個人中心填寫你的學校、專業等基本信息,其他的可以不用填,學校和專業是一定要填寫的。
02
在首頁里你可以找到筆記、成績查詢、考試倒計時等工具,按照你的需求進行選擇,這里我不再細說。
03
「下課聊」主要是和同校好友交流的地方,你可以發送動態,也可以瀏覽本校同學發表的動態,和他們進行交流。
04
在「課程表」中,你可以添加你的課程表,等會兒我將著重說明如何添加課程表。
05
「小紙條」就是加好友的,個人感覺用途不大,因為大學生普遍使用QQ、微信等交流軟體,大家熟悉後肯定還是要用QQ、微信來交流的。
如何導入課表? 01
首先在界面下方找到「課程表」,點擊進入。
02
然後在界面右上方找到「+」,點擊進入。
03
然後在界面上方找到「當前學期」,點擊進入選擇一下你目前所處的學期,如圖所示。
04
然後還是打開「+」,在界面左上角找到「添加課程」,如圖所示。
05
然後選擇你本學期應該學習的課程,如圖所示。
06
然後找到屬於你的那個老師的課程,因為這節課可能有很多班都有,因此也有很多的老師,點擊右側的「添加到課表」。
07
這樣這節課就添加成功了,按照這種方式,我們就可以把其他的課程都添加到這張課程表裡了。
導入課程表的另一種方法 01
如果你不想一個一個添加的話,你可以直接復制你朋友的課表,在「課程表」的右上角找到掃一掃的圖標,點擊進入。
02
界面右下角是「課表二維碼」,你可以讓你同學將這張二維碼發送給你,然後掃描你同學的課表二維碼就可以了。

熱點內容
c語言char數組長度 發布:2025-01-19 07:46:23 瀏覽:10
淘寶如何清理緩存垃圾 發布:2025-01-19 07:42:07 瀏覽:438
電腦輸入密碼階段如何改語言 發布:2025-01-19 07:42:05 瀏覽:786
存儲器國產率 發布:2025-01-19 07:04:36 瀏覽:567
銳程cc藍鯨版選什麼配置 發布:2025-01-19 06:56:28 瀏覽:169
城鎮居民醫保卡的原始密碼是多少 發布:2025-01-19 06:55:54 瀏覽:788
wifi密碼如何修改密碼 發布:2025-01-19 06:39:06 瀏覽:962
sqlserver認證 發布:2025-01-19 06:34:30 瀏覽:815
小米8se安卓p有什麼功能 發布:2025-01-19 06:25:22 瀏覽:359
ucos和linux 發布:2025-01-19 06:24:06 瀏覽:471