本帖最后由 重要的是有好的建议 于 2018-10-24 11:24 编辑
1. 管控组件安装工具的使用 1.1 下载管控组件apk和aWork
下载管控组件apk 管理员可以从控制台的两个位置获取管控组件。 位置1:在【移动设备策略】-【Android策略】的设备管控页面下载管控组件,如下图的红色框:
位置2: 在【移动设备管理页面】下载管控组件,如下图的红色框:
下载aWork 在【移动设备管理页面】下载aWork.
1.2 下载管控组件安装工具 在【移动设备策略】-【Android策略】的设备管控页面,点击“安装并激活”链接,进入某公司BBS社区下载管控组件,如下图的红色框:
下载的管控组件安装工具包为一个压缩包,如下图所示:
解压该压缩包,该压缩包包含两个文件夹(管控组件安装程序所依赖的文件夹)、管控组件安装程序.exe,目录结构如下图所示:
1.3 管控组件安装工具的使用 准备工作 1. 将所有待安装激活的手机的“USB调试”打开,不同的手机型号打开方式不一样,可以通过百度查询,网上都有对应的教程; 2. 将手机通过USB数据线连接到电脑。 使用步骤 1. 双击运行“管控组件安装程序.exe”,安装程序界面如下图所示:
2. 点击“浏览目录”按钮,选中管控组件 device_admin.apk; 3. 点击“开始安装组件”按钮,进行管控组件的安装和device owner权限的设置,成功后,连接另一台手机,会继续进行安装和设置;(如果失败,则会停止当前的安装和权限设置流程) 注:如果将awork和管控组件apk放在同一个目录,点击开始安装管控组件,会在手机上面安装aWork、管控组件、设置权限
2. 设置DeviceOwner权限发现的问题 2.1 小米手机 1. 点击开始安装之后报错:"INSTALL_CANCELED_BY_USER",大概的意思是用户取消安装,但实际上我们并没有看到界面上有任何安装提示 其实这个问题是miui开发者选项中没有勾选“USB安装”。 我们尝试去勾选“USB安装”,这时弹出来一个界面“请登录小米账号”,但是设置DeviceOwner权限要求系统账户数目必须为0,这不是矛盾吗? 解决办法1(小米5s(或其他小米机型)2017/12/21之前MIUI系统有问题;截止20181024最新MIUI没有问题):按照提示勾选usb安装,并且登陆上小米账号,接着勾选“USB安装”,“USB调试(安全设置)”。然后再进入设置->小米账号,将刚刚登陆的账号退出。这时我们系统中没有了账号,并且也把“USB安装”打开了,接着就可以用安装器安装awork了。 缺点:需要网络,需要小米账号 解决办法2:既然限制了usb安装,那我们手动安装即可。将小米手机连接上电脑,通知栏USB链接选项选择MTP文件传输,接着在我的电脑里面找到小米手机的磁盘,将device_admin.apk拷贝到小米手机外部存储的根目录,这些回到小米手机,找到文件管理,找到刚刚拷贝的device_admin,点击安装。 安装完成之后,再点安装器的“设置权限”按钮,给device_admin设置权限即可。 设置权限完成后,打开手机系统设置->找到设备管理器,找到awork管控组件,选择激活。
推荐: 先尝试解决办法1,1解决不了再尝试解决办法2(使用该方法千万别忘了激活管控组件的设备管理器选项)。
小米5s(或其他小米机型)截止2017/12/21最新MIUI系统,重置手机之后不能登录小米账号。 经测试,在登录小米账号打开USB安装和USB调试(安全设置),然后再注销小米账号,小米手机里面留下了一个隐藏账户,这个账户无法删除。只能再重置手机。所以截至目前小米手机最新MIUI处理办法:重置手机之后,只打开USB调试;千万千万不要登录小米账号;然后再用最新的安装工具来安装即可。 截止20181024,小米8 小米5s最新MIUI,方法1又没问题。
2. 小米手机重置之后仍然无法设置deviceowner权限,通过命令查看账户发现手机内有yellopage的隐藏账户。 解决办法:重置手机,在系统初始化设置的时候,初始化界面上有一些选项(比如锁屏画报,用户体验计划),能不选的就别选。因为勾选了这些选项之后系统就会创建一个隐藏的账户,而awork在有账户的手机上是不能安装的,尤其是系统创建的账户,我们也没办法隐藏。
3. 小米5s(或其他小米机型)截止2017/12/21最新MIUI系统,重置手机之后不能登录小米账号;截止20181024最新MIUI系统已没有该问题。 经测试,在登录小米账号打开USB安装和USB调试(安全设置),然后再注销小米账号,小米手机里面留下了一个隐藏账户,这个账户无法删除。只能再重置手机。所以截至目前小米手机最新MIUI处理办法:重置手机之后,只打开USB调试;千万千万不要登录小米账号;然后再用最新的安装工具来安装即可 2.2 oppo手机 1. OPPO手机和小米类似,业限制了usb安装应用 但OPPO和小米手机有些不同。 相同之处:都限制了USB安装应用;都可以用手动安装的方式来安装awrok。 不同之处:在OPPO手机上,如果我们想通过usb安装应用,需要输入OPPO账号密码;OPPO手机即使登录的有账号也能设置device-owner权限。 3. adb常用命令 找到安装器目录下(ADB_EXE文件夹内)的adb.exe,在文件夹内空白处按住shift键,鼠标右键,选择“在此处打开命令窗口”
3.1 查看手机账户信息 如果重置手机了,还是设置不了device-owner权限,那可能这手机内存在账户或者User。 接下来我们可以通过adb获取手机账户信息也可以查看设置不了权限的原因。
查看手机账户(Account): - .\adb.exe shell dumpsys account
复制代码如果账户数目大于0,则请查看手机账户管理,是否有账户存在,存在的账户要退出或者删除;如果没有看到账户,那可能是隐藏账户,需要重置手机。然后再重新设置权限。
查看手机用户(User): - .\adb.exe shell dumpsys user
复制代码android6以后,设置device-owner会检测手机里面user数目,如果大于1个则不能设置device-owner权限。
3.2 抓取日志 - .\adb.exe logcat > log.txt
复制代码注意:这条命令式阻塞运行的,当不需要再收集日志的时候需要手动按ctrl+c取消命令,否则日志会一直往文件里面写,不会停止。 执行以上命令,手机的当前日志就保存到了当前目录的log.txt文件内。
3.3 取手机上的文件 - .\adb.exe pull /sdcard/filepath
复制代码filepath指的是要从手机外置存储里面取得文件路径。 在现在的Android手机上,一般都不用插SD卡了。这时/sdcard/ 和/storage/emulated/0/是等价的。
3.4 安装工具报错 3.4.1 手机中有多个用户 错误提示:java.lang.IllegalStateException: Not allowed to set the device owner because there are already several users on the device 解释:设置权限失败,因为手机里面有多个user。这个和账户不同,并不在手机设置-账户中。目前发现的国产手机中均没有从设置中手动删除的办法。要想给awork设置权限,必须将多出来的user先删掉,只保留一个。 解决办法: (1) 给手机安装上RmUser.apk,然后在手机上手动将其设置为“双开应用”。然后查看手机用户, ,可能看到如下结果:``` Users: UserInfo{0:机主:13} serialNo=0 Created: <unknown> Last logged in: +22h0m48s329ms ago``` 找到这种形式的结果```UserInfo{0:机主:13}``` serialNo=0,0是userid,0是主用户,主用户我们不用处理。我们只需要将不是0 的用户删掉即可安装awork。比如vivo x9s第二个用户id为999,```UserInfo{999 OBULE_APP:20000030} serialNo=10```。 给手机安装RmUser.apk,```.\adb.exe install -r ..\RmUser.apk```,接着在手机上找到该app,将其双开。 截图:
出现以下红框中的图标(右下角有2nd)表示分身成功
(2)接着执行一行命令(注意:以下是一行命令) - adb shell dpm set-profile-owner --user 999 com.tencent.mm/com.sangfor.wg.rmcuruser.AdminReceiver
复制代码,这里的999是要删除的用户的id,根据手机不同,这个id也可能不同。
(3)打开app(双开的那个,vivo手机上会有2nd标识),点击删除当前用户。 (4)如果没出意外,账号已经被删掉了。可以安装之前的流程安装device_admin.apk了。
4 如何协助技术支持解决awork问题
4.1 描述现象 一线人员解决不了的问题就要找研发处理了,但是找研发处理问题首先要做的就是要描述清楚awork遇到的问题,尽量一句话描述清楚。 说一下几个常见的问题描述示例:
(1)awork连接界面提示 连接失败 (2)awork正常登录,但是打开浏览器无法访问百度 (3)awork连接界面正常,登录不上,报错:连接mdm服务器失败
错误示例:
(·)手机上不了网(描述不够清楚,是awork无法连接?无法登录?还是登录后浏览器无法上网?) ----实际上询问之后发现可能是连接失败压根没登录上。 (2)登录不了(连接失败?登录失败?提示什么?) ----这种情况可能是连接界面出错也可能是输入用户名密码的时候出错。
tips:
(1)awork出问题时,能截屏或者拍照的,最好截屏或拍照 (2)不能拍照或截屏的,反馈时请一定准确描述错误提示,如果是一线人员在接收客户反馈,也一定要问清除客户 awork提示是什么。研发人员会根据错误提示去定位代码,如果提示有偏差可能找不到出错的位置。
4.2 获取日志 取日志分为两种,一种是取手机即时日志,另一种是取awork记录下来的日志(/sdcard/sangfor/process目录,崩溃日志在/sdcard/sangfor/crash)。
4.2.1 获取即时日志(取系统日志) 什么情况下需要取即时日志?
* awork频繁崩溃,这种情况下awork崩溃日志可能并没有写到文件日志里面去。 另外如果awork是native层崩溃(当你在crash目录没有发现刚产生的崩溃日志,但awork又确实是闪退了),这时也需要抓取即时日志。 * 技术支持回复说需要抓即时日志时。一般这种情况是抓系统其他组件的日志。
如果获取即时日志? 请参考上文,adb常用命令-抓取日志。
4.2.2 获取awork记录的日志 有两种方法:
1. 直接将手机外置存储中/sdcard/sangfor/process和/sdcard/sangfor/crash目录压缩,然后将压缩后的文件发给研发。process目录里面记录的是awork进程的日志;crash目录记录的是进程崩溃的信息,所以如果awork没有崩溃过,crash目录应该是空的;如果awork崩溃是在java层则一般会有记录,如果是native层崩溃,则可能没有文件记录。 缺点:日志是先写在缓存中,缓存满了才会刷新到文件中,一般要等几分钟才能取到现在的日志。步骤多。 优点:操作简单。容易理解。 2. 进入awork设置->日志->导出日志文件,日志就会导出到/sdcard/目录下了。 优点:方便,取得全,主进程日志没有延时。 缺点:手机选择MTP文件传输时,经常看不到手机上的日志压缩包。 |