设置adb供应商密钥

时间:2015-08-21 04:37:49

标签: android android-studio adb att

编辑:我想,我想出了问题所在。亚行发现我不是最新的更新(并且发布了一个舞台上的udpate并且我不知道)所以亚行没有让我调试。一切都很好。

我已经在AT& T HTC One M8上调试我的应用程序大约一个月了。突然今天,当我插入手机时,我没有获得授权弹出窗口。经过一个小时的故障排除后,我发现了问题,但没有找到解决方案。

这是我在Android Studio 1.3.1中遇到的错误:

  

设备未经授权。
  此adbd的@Configuration public class AllResources extends WebMvcConfigurerAdapter { @Override public void configurePathMatch(PathMatchConfigurer matcher) { matcher.setUseRegisteredSuffixPatternMatch(true); } @Bean public ByteArrayHttpMessageConverter byteArrayHttpMessageConverter(){ ByteArrayHttpMessageConverter bam = new ByteArrayHttpMessageConverter(); List<org.springframework.http.MediaType> mediaTypes = new LinkedList<MediaType>(); mediaTypes.add(org.springframework.http.MediaType.APPLICATION_JSON); mediaTypes.add(org.springframework.http.MediaType.IMAGE_JPEG); mediaTypes.add(org.springframework.http.MediaType.IMAGE_PNG); mediaTypes.add(org.springframework.http.MediaType.IMAGE_GIF); mediaTypes.add(org.springframework.http.MediaType.TEXT_PLAIN); bam.setSupportedMediaTypes(mediaTypes); return bam; } @Override public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { MappingJackson2HttpMessageConverter mapper = new MappingJackson2HttpMessageConverter(); converters.add(mapper); converters.add(byteArrayHttpMessageConverter()); super.configureMessageConverters(converters); } } 未设置;如果这看起来不对,请尝试'adb kill-server'   否则,请检查设备上的确认对话框。

我用谷歌搜索$ADB_VENDOR_KEYS但无济于事。

信息:

  • 电话:AT&amp; T HTC One M8运行5.0.1(API 21)
  • Android Studio版本1.3.1 build 141.2135290
  • JDK版本:1.8.0_60

如何再次获得弹出窗口?我需要调试我的应用

7 个答案:

答案 0 :(得分:40)

在这种情况下,您可以做的是: 进入设备上的开发人员选项 取消选中“USB Debugging”,然后再次检查 然后会出现一个确认框 DvxWifiScan

答案 1 :(得分:16)

我几乎没有尝试任何帮助......

每次只是这个

➜  ~ adb devices    
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
aeef5e4e    unauthorized

但是我设法连接设备!

有导师,一步一步。

  1. 删除PC上的现有adb键:
  2. $ rm -v .android/adbkey* .android/adbkey .android/adbkey.pub

    1. 删除设备上现有的授权adb密钥,路径为/data/misc/adb/adb_keys

    2. 现在创建新的adb密钥对

    3. ➜ ~ adb keygen .android/adbkey adb I 47453 711886 adb_auth_host.cpp:220] generate_key '.android/adbkey' adb I 47453 711886 adb_auth_host.cpp:173] Writing public key to '.android/adbkey.pub'

      1. 从PC .android/adbkey.pub(pubkic键)手动复制到路径/data/misc/adb/adb_keys上的设备

      2. 重新启动设备并检查adb devices

      3. ➜ ~ adb devices List of devices attached aeef5e4e device

        /data/misc/adb/adb_keys的权限在我的设备上为(766/-rwxrw-rw-)

答案 2 :(得分:6)

如果您有AVD,这可能会有所帮助。

从Android Studio打开 AVD Manager 。选择设备最右侧的下拉列表。然后执行擦除数据。重新启动虚拟设备,ADB即可运行。

答案 3 :(得分:3)

查看此网址Android adb devices unauthorized否则请暂时执行以下操作:

  1. 在platform-tools / .android中查找没有扩展名的adbkey并删除此文件
  2. 查看C:\Users\*username*\.android)并删除adbkey
  3. C:\Windows\System32\config\systemprofile\.android并删除adbkey
  4. 您可以在上面的某个目录中找到它。或者只需在上面的父文件夹中搜索adbkey,然后找到并删除。

答案 4 :(得分:3)

我尝试了此处和Android adb devices unauthorized

中列出的所有方法

最终对我有用的是USB Debugging&#39; Revoke auths&#39;

以下的选项

答案 5 :(得分:2)

有时您只需要重新创建新设备

答案 6 :(得分:0)

我在运行Ubuntu 18.04时遇到了同样的问题。我尝试了多种解决方案,但我的设备(OnePlus 5T)始终未经授权。

解决方案

  1. 在Ubuntu上配置udev规则。为此,只需遵循官方文档: https://developer.android.com/studio/run/device

    我的设备(OnePlus)的idVendor未列出。要获取它,只需连接设备并使用lsusb

    Bus 003 Device 008: ID 2a70:4ee7

    在此示例中,2a70是idVendor。

  2. 删除Ubuntu上现有的adb密钥:

    rm -v ~/.android/adbkey* ~/.android/adbkey ~/.android/adbkey.pub

  3. 设备配置上的“撤消USB调试授权”(开发人员选项)。

  4. 最后,重新启动adb服务器以创建新密钥:

    sudo adb kill-server sudo adb devices

此后,我在设备上收到授权提示,并对其进行了授权。