# WangYueCheExam **Repository Path**: Johnny_Guo/WangYueCheExam ## Basic Information - **Project Name**: WangYueCheExam - **Description**: 网约车考试通 - **Primary Language**: Kotlin - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-10 - **Last Updated**: 2026-10-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 网约车考证通(WangYueCheExam) 一款面向 **网络预约出租汽车驾驶员从业资格证** 备考的 Android 应用:按考试大纲做培训练习,并按官方组卷规则随机生成模拟试卷。 - 应用包名:`com.wyc.kaoshi` - 版本:1.3.1 - 内置题库:全国公共科目 **1 套** + 各省市区域科目 **48 套**(覆盖 26 个省级行政区,共 **24 102 题**) - 最低系统:Android 5.0(API 21) - 目标系统:Android 14(API 34) - 技术栈:Kotlin + AndroidX + Material Components(View 体系,ViewBinding) --- ## 一、考试依据(依据交通运输部现行规定) | 项目 | 内容 | | --- | --- | | 考试组成 | 全国公共科目 + 区域科目(“两考合一”,一次考试完成) | | 全国公共科目题型 | **判断题 25 题×1 分 + 单项选择题 25 题×1 分**(共 50 题,无多选题) | | 满分 / 合格线 | **50 分 / 40 分及以上合格** | | 考试时长 | **50 分钟** | | 组卷方式 | 全国统一题库,计算机系统按考试项目分值随机抽题 | | 区域科目 | 各占 50 分,同样 40 分及以上合格;题库由各设区的市级交通运输主管部门公布 | | 主要法规 | 《网络预约出租汽车经营服务管理暂行办法》《出租汽车驾驶员从业资格管理规定》《巡游出租汽车经营服务管理规定》《出租汽车服务质量信誉考核办法》 | 依据文件:交通运输部《关于改革出租汽车驾驶员从业资格考试有关工作的通知》(交运发〔2017〕134 号)及其附件《出租汽车驾驶员从业资格全国公共科目考试大纲》《……全国公共科目考试题库》。 全国公共科目考试项目与分值分配(合计 50 分): | 考试项目 | 分值 | 考点 | | --- | --- | --- | | 1. 政策、法律法规 | 14 | 国家出租汽车政策、法律法规 | | 2. 服务标准规范 | 20 | 服务流程 7 / 车辆服务要求 4 / 驾驶员服务要求 4 / 特殊人群服务与服务禁忌 3 / 服务评价与投诉处理 2 | | 3. 安全运营知识 | 10 | 安全运营生理与心理知识 3 / 行车安全与突发情况处置 5 / 自我安全防范 1 / 常见危险品的基本知识 1 | | 4. 职业道德 | 2 | 社会责任与职业道德 | | 5. 其他相关知识 | 4 | 运价与计程计价设备使用 1 / 节能与环保 1 / 交通事故处理 1 / 应急保障、消防与乘客救护 1 | 应用内的模拟考试严格按上表配额抽题:先按每个考点抽取指定数量的判断题与单选题,再把全部题目随机打乱,因此**每一套卷都是 25 判断 + 25 单选、满分 50 分**,与官方大纲完全一致。 --- ## 二、功能 ### 练习(培训) - **章节练习**:按政策法规 / 服务规范 / 安全运营 / 职业道德 / 其他知识五个考试项目分类刷题,实时显示各章节已练题数与正确率。 - **顺序练习 / 随机练习 / 未做题目**:三种刷题入口,适合不同复习阶段。 - **即时判分 + 解析**:点选即判分,作答后显示对错、正确答案,以及「考试项目 · 官方考点」定位与法规依据/答题要点。 - **错题本**:答错自动进入错题本;在练习中答对后自动移出(真正掌握)。 - **收藏夹**:随时收藏不熟的题目,支持单独抽出来练。 ### 模考(随机组卷) - **按官方规则随机抽题**:判断题 25 + 单选 25,满分 50 分,50 分钟,40 分合格;抽题范围严格按官方分值分配(政策法规 14 · 服务规范 20 · 安全运营 10 · 职业道德 2 · 其他知识 4)。 - **限时考试**:倒计时最后一分钟变黄提醒,时间到自动交卷。 - **答题卡**:格状答题卡,可跳题、查看已答/未答,交卷前提示未答数量。 - **自动判分与全卷解析**:交卷后给出总分、是否合格、分题型得分、用时,并列出全部题目(可切换“只看错题”)包含你的答案、正确答案与解析。 - **成绩记录**:保存最近 60 次模考成绩,可查看每次详情。 ### 我的 - **题库选择页**:全国公共科目 + **各省市区域科目 48 套**,按省级行政区分组、支持搜索省份/城市/题库名 - 累计答题量、正确率、今日答题量统计 - 近 7 日答题量柱状图 - **区域题库管理**:导入本地官方区域科目题库(JSON)、导出模板、删除自定义题库 - 关于与免责声明 ### 界面 - **沉浸式状态栏**(v1.3.1):状态栏透明,各页面顶部的蓝色头部一直延伸到状态栏之下,内容区不被状态栏遮挡;底部按钮与导航栏自动避开系统手势条。 - 首页顶部显示当前题库的**短名**(如“昆明区域科目”)与「切换题库」入口,长题库名不再被截断;头部按钮为半透明白底样式,在深蓝底上清晰可辨。 --- ## 三、内置题库(官方题库) 应用内置 **49 套官方题库**:全国公共科目 1 套 + 各省市区域科目 48 套,在「模考 → 选择题库」或「首页/我的 → 当前题库」随时切换。 ### 1. 全国公共科目(交通运输部统一题库) 应用已内置**交通运输部公布的完整题库**: | 项目 | 内容 | | --- | --- | | 题量 | **498 题**(判断题 258 / 单项选择题 240) | | 考点 | 覆盖官方大纲全部 15 个考点、5 个考试项目:政策法规 108 · 服务规范 190 · 安全运营 130 · 职业道德 20 · 其他知识 50 | | 数据来源 | 交通运输部《出租汽车驾驶员从业资格全国公共科目考试题库》,取自福州市交通运输局政府信息公开页面(原文为表格,脚本抽取) | | 解析 | 官方题库本身不含解析,应用为每题生成「结论/正确答案 + 考试项目 · 考点 + 法规依据或答题要点」的提示 | ### 2. 区域科目(48 套,覆盖 26 个省级行政区) 按《出租汽车驾驶员从业资格管理规定》第八条,区域科目题库由**设区的市级**交通运输主管部门编制并公开 (海南、河南为省级统一)。应用已接入**全国所有能找到公开文件的地区**: | 省级行政区 | 城市(题量) | | --- | --- | | 北京市 | 北京 418 | | 天津市 | 天津 498 | | 重庆市 | 重庆 974 | | 河北省 | 沧州 615 · 衡水 599 · 邯郸 499 | | 山西省 | 大同 481 | | 内蒙古自治区 | 呼和浩特 500 · 鄂尔多斯 449 · 呼伦贝尔 299 | | 辽宁省 | 营口 194 | | 吉林省 | 通化 678 · 长春 302 | | 黑龙江省 | 齐齐哈尔 854 | | 浙江省 | 舟山 400 · 嘉兴 206 · 宁波 119 | | 安徽省 | 芜湖 585 | | 福建省 | 福州 479 | | 江西省 | 景德镇 399 | | 山东省 | 烟台 897 · 枣庄 747 · 威海 358 · 淄博 349 | | 河南省 | 洛阳 960 · 平顶山 483 | | 湖北省 | 襄阳 802 · 咸宁 657 · 武汉 554 | | 湖南省 | 长沙 497 · 常德 478 · 岳阳 399 | | 广东省 | 珠海 250 · 东莞 101 | | 广西壮族自治区 | 柳州 365 · 来宾 318 · 梧州 153 | | 海南省 | 海南 499(全省统一) | | 四川省 | 雅安 345 · 广元 247 | | 贵州省 | 黔东南 559 · 六盘水 297 · 毕节 162 | | 云南省 | 曲靖 1931 · 昆明 700 | | 甘肃省 | 兰州 489 | | 宁夏回族自治区 | 银川 757 | | 新疆维吾尔自治区 | 吐鲁番 200 | 各城市组卷规则以当地官方公告为准(多数为 50 题 / 50 分 / 40 分合格 / 50 分钟;天津 40 分钟 32 分合格、 呼伦贝尔 30 题 24 分合格、景德镇 80 分钟)。 尚未接入的城市见 [`docs/官方题库接入说明.md`](./docs/官方题库接入说明.md#尚未接入的城市及原因): 兴安盟/苏州/西安/拉萨(仅微信公众号发布)、莆田(站内检索已失效)、淮安/楚雄(页面已删除)、 黄山(站点 WAF 拦截)、赣州/潮州(扫描版 PDF 需 OCR)。 题库由 `tools/` 下的脚本生成,新增城市可一键批量重建: ```bash python tools/extract_official.py # 全国题库:官网网页 -> official/questions_official.json python tools/merge_bank.py # 全国题库:装配组卷计划 -> app/src/main/assets/questions_national.json python tools/run_regions.py # 区域题库:按 tools/regions_sources.json 批量抓取解析 python tools/reindex_regions.py # 区域题库:重建 assets/regions/index.json ``` > 区域题库采用「索引 + 懒加载」:启动只读 `assets/regions/index.json`(元信息), > 题目本体在用户选中该题库时才从 `assets/regions/.json` 载入,避免启动变慢、内存占用过高。 --- ## 四、区域科目题库导入(自定义城市) 内置题库已覆盖全国所有能找到公开文件的地区(48 套);若你的城市尚未覆盖,或想使用更新版题库, 可在应用内「我的 → 区域题库管理 → 导出区域题库模板」获得模板文件,按以下格式补充题目后导入: ```json { "id": "wuhan", "name": "出租汽车驾驶员从业资格考试·武汉区域科目", "shortName": "武汉区域科目", "region": "武汉", "source": "根据武汉市交通运输局公布的区域科目题库整理", "durationMin": 50, "passScore": 40, "sections": [ { "type": 1, "label": "判断题", "count": 25, "score": 1 }, { "type": 2, "label": "单项选择题", "count": 25, "score": 1 } ], "modules": ["政策法规", "服务规范", "地理地标"], "questions": [ { "id": 1, "t": 1, "m": "地理地标", "s": "题干", "o": ["正确", "错误"], "a": [0], "e": "解析" }, { "id": 2, "t": 2, "m": "服务规范", "s": "题干", "o": ["A", "B", "C", "D"], "a": [1], "e": "解析" }, { "id": 3, "t": 3, "m": "政策法规", "s": "题干", "o": ["A", "B", "C", "D"], "a": [0, 2], "e": "解析" } ] } ``` 字段说明: | 字段 | 含义 | | --- | --- | | `t` | 题型:1 判断题、2 单选题、3 多选题 | | `m` | 所属考试项目(章节) | | `k` | 可选,官方考点名称;内置题库用于按考点配额抽题 | | `s` | 题干 | | `o` | 选项数组(判断题固定为 `["正确","错误"]`) | | `a` | 正确答案的选项下标数组,从 0 开始;如 `[0,2]` 表示 A、C | | `e` | 答案解析 | | `sections` | 组卷规则:每种题型抽多少题、每题多少分 | | `plan` | 可选,按考点配额组卷,形如 `[{"k":"服务流程","j":4,"s":3}]`(j=判断题数、s=单选题数);内置题库使用 | | `passScore` | 合格分数线 | 某题型题量不足时,应用会自动按实际可用题量组卷并同步下调总分与合格线。 --- ## 五、工程结构 ``` WangYueCheExam/ ├── app/src/main/ │ ├── assets/ │ │ ├── questions_national.json # 全国公共科目题库(498 题,由工具脚本生成) │ │ └── regions/ # 区域科目题库(48 套) │ │ ├── index.json # 题库索引(仅元信息,启动读取) │ │ ├── beijing.json / tianjin.json / … # 各城市题目本体(按需懒加载) │ ├── java/com/wyc/kaoshi/ │ │ ├── MainActivity.kt # 底部导航容器 │ │ ├── BankListActivity.kt # 题库选择页(按省份分组 + 搜索) │ │ ├── QuizActivity.kt # 答题(练习/考试) │ │ ├── ResultActivity.kt # 成绩与解析 │ │ ├── QuestionListActivity.kt # 错题本 / 收藏夹 │ │ ├── data/ │ │ │ ├── Question.kt # 题目模型(含官方考点) │ │ │ ├── Bank.kt # 题库模型 + JSON 解析 + 考点组卷配额 │ │ │ ├── Paper.kt # 随机组卷(按考点配额 / 按题型配额) │ │ │ ├── Store.kt # 本地存储(收藏/错题/统计/成绩/自定义题库) │ │ │ └── Repo.kt # 题库仓库(索引 + 懒加载)+ 会话参数 + 模板 │ │ └── ui/ # 四个标签页 Fragment 与列表适配器 │ └── res/ # 布局、drawable、主题、图标 ├── official/ # 官方原始资料与抽取结果 │ ├── mot_public_bank.pdf # 交通运输部官方题库(扫描版,存档) │ ├── mot_outline.pdf # 官方考试大纲(扫描版,存档) │ ├── fuzhou_bank.html # 官方题库文本版网页(抽取源) │ └── questions_official.json # 抽取后的结构化官方题库 └── tools/ # 题库与资源生成脚本(构建辅助,非应用代码) ├── extract_official.py # 抽取交通运输部全国公共科目题库 ├── merge_bank.py # 装配组卷计划 -> assets/questions_national.json ├── regionlib.py # 区域题库通用解析库(HTML/xlsx/xls/docx/doc/pdf/zip) ├── run_regions.py # 区域题库批量抓取 + 解析 ├── regions_sources.json # 区域题库来源清单(58 条) ├── reindex_regions.py # 重建 assets/regions/index.json ├── probe_pages.py # 附件探测工具(排查接入失败的城市) ├── extract_cangzhou.py # 沧州早期脚本(已并入统一管线,保留存档) ├── build_bank.py / zhengce.py 等 # 早期自编题库脚本(已被官方题库取代,保留存档) ├── gen_res.py # 批量生成 XML 资源 └── gen_icons.py # 生成启动图标 ``` --- ## 六、构建 环境要求:JDK 17、Android SDK(platform 34)、Gradle 8.13。 ```bash # local.properties sdk.dir=<你的 Android SDK 路径> # 构建 Debug gradle :app:assembleDebug # 构建 Release(已使用 debug 签名,可直接安装) gradle :app:assembleRelease ``` 产物路径: ``` app/build/outputs/apk/debug/app-debug.apk app/build/outputs/apk/release/app-release.apk ``` --- ## 七、调研资料 | 文档 | 内容 | | --- | --- | | `docs/官方题库接入说明.md` | 官方题库来源、抽取流程、区域科目接入方法(新增城市只需放 JSON + 改 `Repo.builtinAssets`) | | `docs/调研-全国各省市区域科目题库.md` | **全国 31 个省级行政区**逐省检索:省级是否有统一题库、已公开题库的城市、来源站点、题量与格式 | | `docs/数据-全国区域题库索引.tsv` | 上表的机读版索引(省级行政区/层级/城市/格式/题量/发布时间/来源站点),便于后续批量接入 | | `docs/调研-河北及沧州区域题库.md` | 河北省与沧州市区域题库专题调研 | 核心结论:区域科目题库依《出租汽车驾驶员从业资格管理规定》第八条由「**设区的市级**」主管部门编制公开,因此**除海南(全省统一)与河南(省级统一平台)外,均为城市发布**;上海、青海、西藏未检索到公开的题库文件。 --- ## 八、免责声明 1. 内置题库为交通运输部公布的全国公共科目考试题库(政府公开发布信息),题目与答案以官方发布为准;解析由应用生成,属于学习提示,不代表官方解释; 2. 各地考试政策与题库会动态调整,实际考试请以当地交通运输主管部门发布的最新考试大纲、题库与考试通知为准; 3. 本应用不提供报名、代办、包过等任何服务。