Android模拟器实例不显示“允许USB调试”确认对话框以进行身份验证。

8

我正在尝试从Android Studio中的Android模拟器运行我的移动应用程序。当我运行应用程序时,它提示我选择模拟器实例:

enter image description here

当我选择一个模拟器实例后,应用程序的构建就会开始,并且所选的模拟器将启动。

enter image description here

编译完成后,Android Studio告诉我它在“等待目标设备上线”,以便可以通过桥接进行身份验证。
等待一段时间后,我没有收到RSA指纹的“允许USB调试”确认,因此我启用开发人员模式并进入设置。
然后,我尝试关闭和重新打开“USB调试”设置,然后重新启动计算机上的ADB服务,结果ADB服务要求我授权设备(但我无法获得确认)。

enter image description here

我已经尝试了几个其他的Android版本,其中只有一个版本(API 27)可以使用(这个版本在操作系统启动时立即显示允许确认窗口)。我还检查了API 27上是否启用了开发人员选项,结果没有启用,这表明这些操作系统映像是预配置的,因为它们是模拟器,我不需要更改任何设置。
这感觉像是一个映像问题,因为其中一个映像(API 27)可以正常工作。有人知道为什么我不能得到其他API版本提示进行远程目标身份验证吗?
需要注意的一点是: 在不起作用的版本中,我无法在开发人员选项->选择USB配置下看到设备上的USB端口,但在一个可用的映像上,我可以看到USB端口被检测到,并设置为“充电”。
API 27(可用的映像):

API 27 (The image that works)

API 25(一张不可用的图片):

enter image description here

enter image description here

这是我希望看到的提示,以便ADB服务可以与设备通信:

enter image description here

3个回答

5
我曾经也遇到过同样的问题,但是通过清除数据、关闭并重新启动adb服务器来解决了这个问题,但是这种方法对我来说仍然不起作用。因此,我使用了。

Emulaor with no Play support

选择没有Play Store的模拟器

这只解决了我的问题。希望它对其他人有帮助。


我需要带有Google Play的模拟器,并且每次都必须重复此答案中的过程。 - Viktor Brešan
这在模拟器中也适用于我,但不支持播放。 - Jayesh
1
仍在等待其他人在2022年的模拟器中提供带有Play服务的解决方案。 - amerw

0

如果它看起来很蠢,但它确实有效,那么它就不是蠢的,对吧?

  1. 前往控制面板 -> 电源选项 -> 编辑计划设置 -> 更改高级电源设置
  2. 将最小处理器状态和最大处理器状态更改为5%并应用

控制面板设置

3. 启动模拟器(冷启动) 4. 当“允许USB调试”窗口弹出时,快速点击允许按钮。 5. 恢复电源设置。


0

使用以下方法来解决问题:

方法一:重置Android ADB身份验证密钥

对于Linux/macOS:

  • 打开文件浏览器,导航到位于~/.android/的.android文件夹。
  • .android文件夹中删除adbkeyadbkey.pub两个文件。
  • 重新启动ADB,它将自动生成新的身份验证密钥对。

对于Windows:

  • 打开文件资源管理器并转到以下路径(将“username”替换为您实际的Windows用户名):

    C:\Users\username\.android
    
  • 在“.android”文件夹中,找到并删除“adbkey”和“adbkey.pub”文件。

  • 删除文件后,重新启动ADB。它将创建一组新的身份验证密钥。

方法二:调整电源设置并进行冷启动
- 将计算机的电源设置更改为将处理器状态降低到5%。 - 使用冷启动方式启动Android模拟器。这可以确保模拟器以干净和全新的状态启动。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接