[[start|主页]] ===== 硬件部署 ===== 更对部署说明及软件下载地址,参看**软件部署**一节。 ==== 软件部署 ==== *[[software|校园APP部署]] *[[PowerSetting|自动开关机(触沃)]] ==== 统一部署 ==== 通过差异部署对特有硬件部署完成后,此时APP已经正确下载并安装到设备上,然后按照下列步骤进行进一步配置。 APP首次启动后,需要填写学校ID等相关信息对可视电话应用进行内部设置,具体设置方式如下: - 外部设置成功后,需要填写学校ID等相关信息对应用进行设置,具体设置方式如下: - 根据实际环境输入 **学校ID**,**CMDB ID**两项信息((关于CMDB的配置,参考:[[cmdb_config|CMDB配置]])) - 点击确认,等待初始化完成 - 初始化完成后,会回退到应用主页面,并可以看到 **__设备初始化成功__** 的提示 - 如果输入的信息有误,会回退到应用主页面,并可以看到 **__设备初始化失败,请稍后重试__** 的提示,需要确认输入的信息是否完全正确,进行再次设置,直到设备初始化成功 ====== !!!重要提示!!! ====== 设备端配置完毕后,需要验证推送是否正常工作。在CMDB后台的设备条目中,找到 //远程管理// ,点击 //应用设置//,确定发送后,观察设备是否跳转到配置信息展示页。如果跳转正常,说明推送正常工作。如果未跳转,说明推送未正常工作。 **对于推送未正常工作的情况,确定CMDB后台首页中,是否开启了 //启用CDN服务器// 功能,无论 部署学校是否存在CDN服务器,该项功能都必须始终处于开启状态,否则设备端无法收到推送消息。** ===== 操作提示 ===== 以下列举了一些在部署或后期维护中,可能需要的操作,仅供参考 ==== 回到系统桌面 ==== 回到系统设置可以通过两种方式: \\ - 直接让ISUS收到回到设置页面的命令:此方法适用于已经成功进行了软件初始化设置,可以在后台直接向指定设备发送设置命令((关于命令的的发送,参考:[[cmdb_config|CMDB配置]]中的**命令**一节)) - 对于未成功初始化软件的情况,需要先将开发者模式和调试模式都打开,将设备连接到电脑,在电脑终端直接输入 **ADB** 命令:adb shell am start -a android.settings.SETTINGS 以上操作会回到设置页面,再到主屏幕设置主程序为**系统桌面**即可。(受限用户不适用) ==== 设置受限用户 ==== 通过对软件完成外部设置及内部设置后,在软件运行周期内,用户跳转到其他页面,包括系统桌面及系统设置页面等。 但是当软件运行时发生了崩溃,再成功重新启动之前,用户可以通过其他方式跳转到系统桌面及系统设置等页面,进行其他不必要的操作。 通过设置受限用户的方式,可以避免此类问题的发生。 以下列出设置受限用户的具体方法: - 删除当前软件 - 进入系统设置 - 选择 **应用** - 选择对应的专属硬件应用 - 选择 **卸载** - 为当前主用户设置登录密码 - 进入系统设置 - 选择 **安全** - 选择 **屏幕锁定方式** - 选择 **图案** / **PIN码** / **密码** 以上三种锁定方式的其中一种,设置适当的密码 - 添加受限用户 - 进入系统设置 - 选择 **用户** - 选择 **添加用户或个人资料** - 在弹出的对话框中,选择 **受限个人资料** - 在 **应用和内容使用权** 页面,打开下列开关 - Android键盘(AOSP) - 在 **应用和内容使用权** 页面,点击顶部的 **新的个人资料** ,修改受限用户名称(如:学生),点击 **确定** - 重新下载安装应用 - 参考 **差异部署** 一节,对软件进行重新下载并安装 - 开始使用受限用户 - 进入系统设置 - 选择 **用户** - 点击刚刚添加的 **受限用户** - 若弹出对话框,点击 **确定** 完成以上操作,即可进入受限模式,无法使用系统桌面,浏览器等工具。当软件没有发生崩溃时,用户无法进入设置页面;当软件发生崩溃,没有重新启动前,用户可以进入设置页面,但由于是受限用户,可以进行的操作几乎为0。用户可以选择从受限用户切换到主用户,但是登录到主用户,需要输入密码,通过这种方式,可以限制用户无法进行不该有的操作。 === Tips:如何建立远程调试 === 我们需要在现场安装的设备都实现远程 ADB 调试,主要是给设备注入一条命令,以让其允许局域网环境下可以用 ADB 连接它。首先需要的是给学校的服务器安装上 ADB 环境,然后依次执行: - 打开机器的调试模式,下拉打开 USB 存储,确保机器和电脑能正常连接,可通过 adb shell 命令验证。 - 依次执行以下命令: - adb root - adb remount - adb pull /system/build.prop ./ - 在 adb 命令执行的文件夹下的 build.prop 中加入命令 service.adb.tcp.port=5555 - 执行命令 adb push ./build.prop /system/build.prop 后重启设备。 结束后需要在断开 USB 连接线,输入 adb connect 设备IP:5555 确认可以正常连接。 === Tips:如何切换换主用户 === 当管理员或部署者需要切换回主用户进行设置或操作时,可以在锁屏页面下拉通知条,点击右侧头像,选择**机主**,输入登录密码,即可登录到主用户。 === Tips:如何截屏 === adb连接设备后,执行命令 1. adb shell screencap -p /sdcard/screen.png 2. adb pull /sdcard/screen.png ./ 命令1将截屏图片保存在设备端的sdcard目录下,命名为screen.png;命令2将设备端的该图像文件保存在电脑端。 === Tips:如何退出当前页面 === adb连接设备后,执行命令 1. adb shell input keyevent BACK === Tips:如何进入系统设置页 === adb连接设备后,执行命令 1. adb shell am start -a android.settings.SETTINGS ==== 问题汇总 ==== - 如何快速确定CDN服务器是否正常。(当出现设备大面积功能不可用时,一般是CDN服务器出现问题,不能仅通过局域网内是否可以正常访问外部网络来判断CDN的工作状态) - 如何确定消息推送(RabbitMQ)是否可用。(部分自动更新的功能依赖与推送,若无法自动更新,有可能是RabbitMQ未推送引起的。前提:确保后台的设备管理-远程管理能够正常发送推送消息) - 如何快速确定部分校方提示的问题是BUG还是Feature(需要增加对产品的认识) - APK常规操作(卸载,清空数据) - adb常规操作(install uninstall logcat shell tcpdump) - 远程日志的抓取(CDN上的日志路径,ssh,scp) - 加强部署时验收标准(部署+全面测试,问题尽量内部消化) - 设备信息收集(出现问题时,先明确设备厂家,系统版本,刷卡器品牌等关键设备信息,设备是否在支持列表中)