我的OpenGL学习进阶之旅解决Android OpenGL ES 调试工具 GAPID 无法识别Android设备的问题
Posted 字节卷动
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的OpenGL学习进阶之旅解决Android OpenGL ES 调试工具 GAPID 无法识别Android设备的问题相关的知识,希望对你有一定的参考价值。
一、问题描述
之前在博客【我的OpenGL学习进阶之旅】【强烈推荐】一款强大的 Android OpenGL ES 调试工具 GAPID并展示【实战操作演练】一步一步看如何使用GAPID调试工具介绍了GAPID工具的使用。
今天在使用GAPID工具调试真机的时候,发现无法识别设备,如下所示:
只能识别出当前的Windows10电脑设备,无法识别出我的android设备
二、解决问题
2.1 找到GAPID工具的安装目录
找到GAPID工具的安装目录,有几个apk如下所示:
2.2 安装apk到android设备
C:\\Users\\000>adb install -r "C:\\Program Files (x86)\\gapid\\gapid-armeabi-v7a.apk"
Performing Streamed Install
Success
但是这个不是根本问题,接下来我继续说
三、其他问题
3.1 服务启动失败
我这个案例的根本原因不是上面那个,而是因为gapid的服务无法启动,如下所示:
启动失败的异常日志:
2022-01-20 15:25:52.105 876-876/? E/adbd: shell,v2,raw:dumpsys package com.google.android.gapid.armeabiv7a
2022-01-20 15:25:52.518 876-876/? E/adbd: shell,v2,raw:pm path com.google.android.gapid.armeabiv7a
2022-01-20 15:25:53.625 876-876/? E/adbd: shell,v2,raw:am start-foreground-service -a com.google.android.gapid.action.SEND_DEV_INFO -n com.google.android.gapid.armeabiv7a/com.google.android.gapid.DeviceInfoService
2022-01-20 15:25:53.702 892-1584/system_process D/SelfstartManager: restrict start process pkg:com.google.android.gapid.armeabiv7a process:com.google.android.gapid.armeabiv7a
2022-01-20 15:25:53.702 892-1584/system_process D/SelfstartManager: restrictRetrieveService pkg:com.android.shell targetPkg:com.google.android.gapid.armeabiv7a
2022-01-20 15:25:54.143 876-876/? E/adbd: shell,v2,raw:am start-foreground-service -a com.google.android.gapid.action.SEND_DEV_INFO -n com.google.android.gapid.armeabiv7a/com.google.android.gapid.DeviceInfoService
2022-01-20 15:25:54.221 892-1584/system_process D/SelfstartManager: restrict start process pkg:com.google.android.gapid.armeabiv7a process:com.google.android.gapid.armeabiv7a
2022-01-20 15:25:54.221 892-1584/system_process D/SelfstartManager: restrictRetrieveService pkg:com.android.shell targetPkg:com.google.android.gapid.armeabiv7a
2022-01-20 15:25:54.667 876-876/? E/adbd: shell,v2,raw:am start-foreground-service -a com.google.android.gapid.action.SEND_DEV_INFO -n com.google.android.gapid.armeabiv7a/com.google.android.gapid.DeviceInfoService
这是因为这台设备禁止了一些非法安装的应用自己启动导致无法通过adb shell 命令启动服务
adbd: shell,v2,raw:am start-foreground-service -a com.google.android.gapid.action.SEND_DEV_INFO -n com.google.android.gapid.armeabiv7a/com.google.android.gapid.DeviceInfoService
3.2 分析这个服务
我们打开这个gapid-armeabi-v7a.apk
,查看描述文件,找到com.google.android.gapid.DeviceInfoService
,如下所示:
<service
android:name="com.google.android.gapid.DeviceInfoService"
android:exported="true">
<intent-filter>
<action
android:name="com.google.android.gapid.action.SEND_DEV_INFO" />
</intent-filter>
</service>
因为这个服务启动失败,所以Windows 10 电脑上的GAPID程序才无法显示android设备
四 解决
最终,我们把我这台设备的限制关闭掉,然后让这个服务可以启动,就正常了,如下所示:
最终Andoird真机设备显示出来了,如下所示!
对应的正常gapid的日志打印如下所示:
2022-01-20 15:21:24.951 4043-4043/? E/adbd: shell,v2,raw:dumpsys package com.google.android.gapid.armeabiv7a
2022-01-20 15:21:25.321 4043-4043/? E/adbd: shell,v2,raw:pm path com.google.android.gapid.armeabiv7a
2022-01-20 15:21:26.497 4043-4043/? E/adbd: shell,v2,raw:am start-foreground-service -a com.google.android.gapid.action.SEND_DEV_INFO -n com.google.android.gapid.armeabiv7a/com.google.android.gapid.DeviceInfoService
2022-01-20 15:21:26.586 929-7291/system_process I/ActivityManager: Start proc 10627:com.google.android.gapid.armeabiv7a/u0a40 for service com.google.android.gapid.armeabiv7a/com.google.android.gapid.DeviceInfoService
2022-01-20 15:21:26.587 10627-10627/? E/Zygote: xtc_appinfo pid 10627 name com.google.android.gapid.armeabiv7a
2022-01-20 15:21:26.768 929-1099/system_process D/ActivityManager: Active ForegroundApp:com.google.android.gapid.armeabiv7a
2022-01-20 15:21:26.796 10627-10655/com.google.android.gapid.armeabiv7a D/libEGL: loaded /vendor/lib/egl/libEGL_adreno.so
2022-01-20 15:21:26.892 10627-10655/com.google.android.gapid.armeabiv7a D/libEGL: loaded /vendor/lib/egl/libGLESv1_CM_adreno.so
2022-01-20 15:21:26.927 10627-10655/com.google.android.gapid.armeabiv7a D/libEGL: loaded /vendor/lib/egl/libGLESv2_adreno.so
2022-01-20 15:21:26.961 10627-10655/com.google.android.gapid.armeabiv7a I/Adreno: QUALCOMM build : 6b98e38, Ia11ce2d146
Build Date : 05/31/21
OpenGL ES Shader Compiler Version: EV031.22.00.01_06_07
Local Branch : mybranchebc1da3c-13e4-f1bd-bdce-08f1eafda2d0
Remote Branch : quic/LAW.BR.4.0
Remote Branch : NONE
Reconstruct Branch : NOTHING
2022-01-20 15:21:26.966 10627-10655/com.google.android.gapid.armeabiv7a I/Adreno: PFP: 0x005ff087, ME: 0x005ff063
2022-01-20 15:21:26.986 10627-10655/com.google.android.gapid.armeabiv7a I/zygote: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasWideColorDisplay retrieved: 0
2022-01-20 15:21:27.000 10627-10655/com.google.android.gapid.armeabiv7a D/vulkan: searching for layers in '/data/app/com.google.android.gapid.armeabiv7a-lyQCjKGEaBd26554_JYTjw==/lib/arm'
2022-01-20 15:21:27.003 10627-10655/com.google.android.gapid.armeabiv7a D/vulkan: added global layer 'GraphicsSpy' from library '/data/app/com.google.android.gapid.armeabiv7a-lyQCjKGEaBd26554_JYTjw==/lib/arm/libVkLayer_GraphicsSpy.so'
2022-01-20 15:21:27.006 10627-10655/com.google.android.gapid.armeabiv7a D/vulkan: added global layer 'VirtualSwapchain' from library '/data/app/com.google.android.gapid.armeabiv7a-lyQCjKGEaBd26554_JYTjw==/lib/arm/libVkLayer_VirtualSwapchain.so'
2022-01-20 15:21:27.007 10627-10655/com.google.android.gapid.armeabiv7a D/vulkan: searching for layers in '/data/app/com.google.android.gapid.armeabiv7a-lyQCjKGEaBd26554_JYTjw==/base.apk!/lib/armeabi-v7a'
2022-01-20 15:21:27.011 10627-10655/com.google.android.gapid.armeabiv7a W/GAPID: Unrecognised ABI: armeabi
2022-01-20 15:21:27.603 4043-4043/? E/adbd: localabstract:gapid-devinfo
2022-01-20 15:21:31.693 1825-2083/com.xtc.i3launcher D/[1825:10510]Anti_Addiction_AntiAddictionManager: AppDuration:GAPID - armeabiv7a;type=8;web=false
2022-01-20 15:21:32.628 1825-2083/com.xtc.i3launcher D/[1825:10496]Anti_Addiction_AntiAddictionManager: AppDuration:GAPID - armeabiv7a;type=7;web=false
以上是关于我的OpenGL学习进阶之旅解决Android OpenGL ES 调试工具 GAPID 无法识别Android设备的问题的主要内容,如果未能解决你的问题,请参考以下文章
我的OpenGL学习进阶之旅持续更新关于学习OpenGL的一些资料
我的OpenGL学习进阶之旅OpenGL ES对Android平台的支持情况
我的OpenGL学习进阶之旅OpenGL ES对Android平台的支持情况
我的OpenGL学习进阶之旅OpenGL ES 着色语言的IDE插件(Android Studio和Visutal Studio)以及常见GLSL文件扩展名介绍
我的OpenGL学习进阶之旅OpenGL ES 着色语言的IDE插件(Android Studio和Visutal Studio)以及常见GLSL文件扩展名介绍
我的OpenGL学习进阶之旅关于OpenGL ES 绘制中使用到的 Android中GLSurfaceView的两种渲染模式