# 模拟来电 **Repository Path**: dishuizhu/mock-call ## Basic Information - **Project Name**: 模拟来电 - **Description**: 学习使用ArkUI框架、harmony,api9,主要涉及基础页面路由,媒体权限,弹窗组件,后台驻留等功能 - **Primary Language**: TypeScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2023-08-20 - **Last Updated**: 2025-06-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: ArkTS, 声明式开发 ## README # 模拟来电 #### 介绍 当生活需要一点小小的刺激,或者你只是想要摆脱一些尴尬的场合,不妨考虑一下我们的手机应用——“模拟来电”! 不再尴尬场合尴尬 🙈 你是否曾因无法逃脱乏味会议,却急需一个接敌电话来解救自己?现在不必再担心了!我们的应用可以让你的手机瞬间响起“来电”,轻松掩盖任何无聊的场合,你可以故作认真、装作急事或者偷偷摸摸地离开,而不担心被抓个正着! 变身通话高手 📱 你是否渴望成为通话高手,获得和朋友们的赞誉?通过我们的应用,你可以随时模拟接到重要电话,与假想客户、老板或明星进行“通话”,让你的朋友们感到佩服不已。你可以偷偷抄起手机,然后露出一副“生意繁忙”的表情! 化解突发状况 🚨 有时候,我们会陷入一些令人尴尬的境地,需要一个借口来逃脱。无论是难堪的约会还是突如其来的社交场合,只需轻轻一按,你的手机将响起“来电”声,为你提供一个完美的借口,轻松脱身!
哈哈,以上是gpt生成的一个场景应用,接下来正式介绍下此软件目前所拥有或将涉及到的功能: 使用ArkUI框架、harmony,api9,主要功能涉及基础页面路由,媒体权限,弹窗组件,后台驻留,一多端、音乐播放、等功能。
#### 开发环境 win系统版本:22H2 (22621.2215) DevEco Studio Version: 4.0.0.400 (4.0 Beta2) SDK: 3.1.0(API 9) 真机测试: 手机型号: mate30 5G ,系统版本:4.0.0.113(多屏协同才正常) 平板型号:matepad11 ,系统版本:4.0.0.115
已实现功能:(时间23年9月12日) UI层 - [x] 设定页面 - [x] 详细页 - [x] 来电者设定页 - [x] 未接听状态页和接听页 - [x] 背景选择页 - [x] 铃声选择页 业务层 - [x] 设定时间 - [x] 设定来电者 - [ ] 设定铃声 - [x] 设定震动 - [ ] 来电背景 - [ ] 数据持久化 #### 软件架构 软件架构说明 ![软件架构.png](Screen_gif_png%2F%E8%BD%AF%E4%BB%B6%E6%9E%B6%E6%9E%84.png) 主要功能结构 ![主要功能结构.png](Screen_gif_png%2F%E4%B8%BB%E8%A6%81%E5%8A%9F%E8%83%BD%E7%BB%93%E6%9E%84.png) #### 安装教程 1. 观看官方教程:https://developer.harmonyos.com/cn/documentation/teaching-video/?catalogVersion=V3 #### 工程目录 ```c_cpp mock-call/entry/src/main/ets/ |--- common | |--- bean | | |--- ItemData.ets // 列表项实体数据组件 | |--- constants | | |--- CommonConstants.ets // 常量 | |--- utils | | |--- BreakpointSystem.ets // 查询媒体断点工具组件 | | |--- CommonUtils.ets // 通用工具组件 | | |--- DataSource.ets // 数据源组件 | | |--- Logger.ets // 日志工具组件 |--- database // 暂未使用 |--- entryability | |--- EntryAbility.ts |--- pages | |--- bg_select.ets // 背景选择页 | |--- Caller_Setting.ets // 来电者设定页 | |--- MainPage.ets // 主页 | |--- Mock_Call.ets // 模拟来电显示页 | |--- Mock_Calling.ets // 模拟来电接听页 | |--- Music.ets // 铃声选择页 |--- view | |--- commonViewItem | | |--- title_area.ets // 标题扩充组件(现阶段未用到) | | |--- title_item.ets // 标题栏组件 | |--- dialog | | |--- CustomDialogView.ets // 自定义弹窗组件(现阶段未用到) | | |--- MainSettingDialog.ets // 主页弹窗组件 | | |--- SettingDialog.ets // 主页设置页弹窗组件 | |--- musicView | | |--- Content.ets // 铃声内容组件 | | |--- Header.ets // 标题栏组件 | | |--- Player.ets // 播放组件 | | |--- PlayerList.ets // 音乐列表组件 | | |--- PlayerListCover.ets // 音乐列表展示封面组件 | |--- Call_setting.ets // 主页设置页内容 | |--- Caller_Setting_View.ets // 模拟来电设置页内容 | |--- Mock_Call_View.ets // 主页视图内容 | |--- Mock_Calling.ets // 来电显示与接听内容 | |--- Setting.ets // 主页设置页内容 |--- viewmodel | |--- MainViewModel.ets // 主页用到的获取路径资源 | |--- Mock_CallViewModel.ets // 模拟来电页用到的获取路径资源 | |--- SongViewModule.ets // 铃声选择页用到的获取路径资源 ``` #### 使用说明 1、设定来电时间(默认0秒后) 2、设定来电者的内容 3、设定是否开启震动和铃声(默认开启) 4、其余默认设置或自定义 5、单击 开始模拟 #### 软件展示(一多端) 手机端 ![时间来电设定.gif](Screen_gif_png%2F%E6%97%B6%E9%97%B4%E6%9D%A5%E7%94%B5%E8%AE%BE%E5%AE%9A.gif) ![震动铃声选择背景选择.gif](Screen_gif_png%2F%E9%9C%87%E5%8A%A8%E9%93%83%E5%A3%B0%E9%80%89%E6%8B%A9%E8%83%8C%E6%99%AF%E9%80%89%E6%8B%A9.gif) 平板端 ![时间来电平板.gif](Screen_gif_png%2F%E6%97%B6%E9%97%B4%E6%9D%A5%E7%94%B5%E5%B9%B3%E6%9D%BF.gif) ![平板背景设定.gif](Screen_gif_png%2F%E5%B9%B3%E6%9D%BF%E8%83%8C%E6%99%AF%E8%AE%BE%E5%AE%9A.gif)