首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

成功解决Android设备adb连接后显示device unauthorized

一、提出问题 在电脑通过USB连接新的Android设备,想要通过adb来进行一些操作时,却发现命令提示符上在输入下面命令后显示设备未授权的信息也就是"unauthorized" adb devices...二、不可行的解决方案 有人提出的解决方案是打开Android设备的开发者选项中的USB调试,但笔者在之前已经打开了,由此可知问题并不与此相关。...Android设备撤销USB调试授权 点击Android设备的开发者选项中的撤销USB调试授权,笔者认为此举在于去掉之前的设置,方便之后重新操作。...3.Android设备重连计算机 如果此时Android设备仍通过USB线连接计算机,需要先拔掉,接着再重新插入使其重连计算机 4.输入adb相关指令 Android设备重连计算机后,在计算机的命令提示符依次输入下面三个指令...: adb kill-server adb start-server 5.Android设备重新授权 在输入完上面两条指令后,Android设备会弹出授权弹窗,点击确定即可 6.重新输入adb指令 进行完上面的步骤后就可以重新输入指令

7.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    TCP 异常关闭研究分析

    服务器端只Recv消息而不Send消息 1.1 测试方法 服务器程序在接受客户端的TCP连接后Sleep几秒钟,客户端程序在TCP连接后立即发送很多消息给对端后做相应动作(退出或等待),服务器程序Sleep...2.服务器端Recv消息并Send应答消息 2.1 测试方法 服务器程序在接受客户端的TCP连接后Sleep几秒钟,客户端程序在TCP连接后立即发送很多消息给对端后做相应动作(退出或等待),服务器程序...,也是我们需要进一步研究和解决的情况,特别是程序崩溃导致问题: 当TCP连接的进程在忘记关闭Socket而退出、程序崩溃、或非正常方式结束进程的情况下 (Windows客户端),会导致TCP连接的对端进程产生...B项目实现跨服跳转的流程是GameSvr给客户端程序下发的跨服跳转命令的同时携带了Stop请求,也就是说tconnd在向客户端转发跨服跳转消息后立即就会关闭当前的Socket连接,而且B项目的客户端程序会定期不断地向服务器上报消息...3.2 效果 B项目跨服跳转的掉线问题有相当一部分的种情况是tconnd向客户端转发跨服跳转消息后立即关闭Socket连接,而此时刚好客户端向tconnd发送了数据包: 第一种情况:tconnd在关闭

    9.4K00

    记一次 android 线上 oom 问题

    为了解决这个问题,打算用本地 socket (unix domain socket) 代替 tcp socket,因为前者不依赖端口号,只依赖文件路径,而 Android 中的私有存储可以有效的防止文件冲突...一次上报并不会占用太多内存,但关键是一旦进入这个特定场景,日志就会一直产生,而主端会在传输数据的过程中频繁调用这个接口,导致大量的日志进入队列,特别是当用户处于非 WIFI 环境下,日志上报会被关闭来节省流量...内容非常多但都是重复的,看起来 Work 进程没有启动,导致连接端一直在进行重连。...,连接时两种方式同时发送异步连接请求,先收到应答的连接将设置对应的 channel 值并关闭另一种连接通道,连接建立成功后 channel 必为两种方式之一 (local | tcp)。...打好的修复版本在 Work 进程不启动的场景下运行了一天也没有出现崩溃,对外灰度后,观察 App 崩溃率正常,逐步全量覆盖线上版本,最后合入 master。

    1.1K40

    深入浅出即时通讯(1)_即时通讯协议对比

    http短轮询: [图1.1.3.png] 短轮询的处理如下: 客户端请求服务器,服务器立即返回; 客户端间隔一段时间; 客户端请求服务器,服务器立即返回; http长轮询: [图1.1.4.png...与MQTT相比,MQTT与socket.io都是基于发布/订阅(Publish/Subscribe)模式的,但与MQTT不同的是, socket.io 是基于Web应用发展起来的,它天然支持Web应用,...1.2 即时通讯协议选型 在设计"E聊SDK"的过程中,笔者注意考虑了以下几点即时通讯的需求: 聊天方式支持单聊,群聊,消息类型支持文本,表情 ,图片,文件等; 首要支持移动端(android, ios....当socket.io 连接起来后(底层使用websocket), 可以得益于websocket 全双工,低延时的优势。...多种底层实现方式,在传统Web, 现代h5 已得到良好的验证。

    3.1K20

    客户端断连,服务端也断?

    0.导语 在socket网络编程中,如果此时客户端忽然由于某种原因断开连接或者崩溃,服务端没有处理好,便会同时崩溃掉,本篇文章将会从崩溃到问题分析,解决,一步步入手。...TCP是全双工的信道, 可以看作两条单工信道, TCP连接两端的两个端点各负责一条. 当对端调用close时, 虽然本意是关闭整个两条信道, 但本端只是收到FIN包....对一个已经收到FIN包的socket调用read方法, 如果接收缓冲已空, 则返回0, 这就是常说的表示连接关闭. 但第一次对其调用write方法时, 如果发送缓冲没问题, 会返回正确写入(发送)....但发送的报文会导致对端发送RST报文, 因为对端的socket已经调用了close, 完全关闭, 既不发送, 也不接收数据....close(listenfd); return 0; 我们可以使用 Linux 的 nc 工具作为 client,当 client 连接到 server 之后,就立即杀死 client

    3.4K11

    Web端即时通讯实践干货:如何让WebSocket断网重连更快速?

    试想打开网络一分钟后,微信的网络不能即时感知到socket连接的恢复,无法即时收发聊天消息的话,是不是很崩溃?...比如以下场景: 1)设备切换网络; 2)链路中间路由崩溃(常识是一条socket连接对应的网络通路上,会存在很多路由设备); 3)链路的前端出口不可用(比如家庭WiFi中,网络连接正常,但实际运营商的宽带已经欠费被停机...此快非彼快,这里的快并非是立即发起连接,立即发起连接会对服务器带来不可预估的影响。重连时通常会采用一些退避算法,延迟一段时间后再发起重连。但如何在重连间隔和性能消耗间做出权衡?...因此在网络由断开到连接上时,立即判断下连接是否可用,可以通过发一个心跳包判断,如果能够正常收到服务器的心跳回包,则说明连接仍是可用的,如果等待超时后仍没有收到心跳回包,则需要重连,如上图中的右侧。...过程具体总结就是: 1)首先:通过定时发送心跳包的方式检测当前连接是否可用,同时监测网络恢复事件,在恢复后立即发送一次心跳,快速感知当前状态,判断是否需要重连; 2)其次:正常情况下由服务器断开旧连接,

    4.1K20

    好知识 | TCP中的两类故障模式

    如果此时程序还执着地往这条连接写数据,写操作会立即失败,返回一个 SIGPIPE 信号给应用程序。2、系统崩溃造成的对端无 FIN 包当系统突然崩溃,如断电时,网络连接上来不及发出任何东西。...不过还有一种情况需要考虑,那就是系统在崩溃之后又重启,当重传的 TCP 分组到达重启后的系统,由于系统中没有该 TCP 分组对应的连接数据,系统会返回一个 RST 重置分节,TCP 程序通过 read...如果是阻塞的 read 调用,会立即返回一个错误,错误信息为连接重置(Connection Reset)。如果是一次 write 操作,也会立即失败,应用程序会被返回一个 SIGPIPE 信号。...3、对端有 FIN 包发出对端如果有 FIN 包发出,可能的场景是对端调用了 close 或 shutdown 显式地关闭了连接,也可能是对端应用程序崩溃,操作系统内核代为清理所发出的。...= 2) { error(1, 0, "usage: reliable_client01 "); } int socket_fd = tcp_client

    11510

    鸿蒙NEXT版仿微信聊天App的SocketIO库

    把socketio的源码克隆到本地后,抽出里面的library目录作为鸿蒙App工程的library模块,这样主入口的entry模块才能引用socketio提供的API。...this.client.clear_socket_listeners(); 注意:官方文档提到还要调用下面的socket_close方法,但实际验证发现该方法会导致App崩溃。...this.client.socket_close(); 4、连接socketio服务器,以及关闭socketio连接 在执行socketio通信前调用下面的连接代码,表示连接socketio的服务器。...) // socket.io服务端地址 在退出socketio通信时调用下面的关闭代码,表示关闭与socketio服务器的连接。...this.client.close(); 当然,以上代码都是在客户端App运行,要想让App与服务端正常通信,还得先启动后端的socketio服务器,具体的启动方式参见《Android Studio开发实战

    10510

    面试中经常问到的 长连接&短连接,你了解的多吗?

    再来一波自己话介绍: 长连接:连接->传输数据->保持连接 -> 传输数据-> ....->直到一方关闭连接,客户端关闭连接。 长连接指建立SOCKET连接后不管是否使用都保持连接,但安全性较差。...例如:数据库的连接用长连接, 如果用短连接频繁的通信会造成socket错误,而且频繁的socket 创建也是对资源的浪费。...为什么呢,一般的server不会回复完client后立即关闭连接的,当然不排除有特殊的情况。...客户的TCP响应正常,而服务器也知道对方是正常的,服务器在两小时后将保证定时器复位。 客户主机已经崩溃,并且关闭或者正在重新启动。在任何一种情况下,客户的TCP都没有响应。...服务端将不能收到对探测的响应,并在75秒后超时。服务器总共发送10个这样的探测 ,每个间隔75秒。如果服务器没有收到一个响应,它就认为客户主机已经关闭并终止连接。 客户主机崩溃并已经重新启动。

    19.2K40

    搞懂IO多路复用及其技术

    阻塞和非阻塞的概念描述的是用户线程调用内核IO操作的方式,阻塞时指IO操作需要彻底完成后才能返回用户空间,非阻塞时指IO操作被调用后立即返回给用户一个状态值,无需等待IO操作彻底完成。...同步非阻塞IO 在同步基础上,将socket设置为NONBLOCK,这样用户线程可以在发起IO请求后立即返回。...虽说可以立即返回,但并未读到任何数据,用户线程需要不断的发起IO请求,直到数据到达后才能真正读到数据,然后去处理。...当select函数返回后,可以通过便利fdset,来找到就绪的描述符。 优点:良好的跨平台性。...同时pollfd并没有最大数量的限制(但数量过大性能也会下降)。和select一样,poll返回后,需要轮询pollfd来或许就绪的描述符。

    61420

    TCP四次挥手和TIME_WAIT

    (主动方) FIN_WAIT_2 :实际上FIN_WAIT_2状态下的SOCKET,表示半连接 ,也即有一方要求close连接,但另外还告诉对方,我暂时还有点数据需要传送给你,稍后再关闭连接。...当对方close一个SOCKET后发送FIN报文给自己,你系统毫无疑问地会回应一个ACK报文给对方,此时则进入到CLOSE_WAIT状态。...TCP关闭连接的方式 正常关闭 调用close()关闭socket、没close但进程正常结束(当然这是不应该的做法)、进程core掉、在shell 命令行中kill掉进程,都可抽象成“正常”关闭。...因为即使core掉,内核也会马上帮应用程序回收(close)socket文件描述符。 不正常关闭 客户端崩溃了,此时肯定发不出FIN包了(当然啦,内核都没机会帮应用程序回收资源了)。...1、服务器send数据,因为客户端已经崩溃,服务器收不到ACK自然会不停的重传。

    53420

    项目线上问题总结与反思

    但版本上线后,还是会遇到问题遗漏及意料外的稳定性问题。小编对项目中遇到的两次问题进行了总结反思,吸取教训,与君共勉。 ? 【一....老用户升级后触发某个功能崩溃】 问题出现现象 【线上问题监控】新版本如果老用户升级后 触发获取转写语言崩溃。 问题复现: a. 环境:Android 已经下载V3.4.4老版本; b....操作:打开录音助手app V3.4.4版本,连接录音笔,进行实时录音,切换语言为英文;升级到V3.4.5版本,升级完成后,连接录音笔,APP端发起实时录音; 问题出现原因 代码层面 老版存在配置文件里的语言是...问题出现原因 代码层面 App为了提高wifi连接成功率和稳定性,将录音笔wifi网络绑定到录音笔app,录音笔wifi断开,手机切换到其它wifi会重置网络绑定,但切换到4G网络没有触发重置逻辑,导致...releaseNetworkRoute()这句话应该在每次socket断开的时候加上,现在只是加在了切换到其他wifi网络时。 【三. 总结】 测试覆盖度 用例设计层面,开发实现方案了解不够充分。

    61020

    【TCP】相关机制:异常处理

    进程崩溃 Java 中的体现就是抛出异常,但没人 catch,最终异常到了 JVM 这里,JVM 进程就会直接噶了。...看起来是崩溃,挺严重,实际上操作系统会进行善后 当进程崩溃的时候,进程中的 PCB 就要被回收,PCB 中的文件描述符表里对应的所有文件也都会被系统自动关闭 其中针对 Socket 文件,也就会触发正常的关闭流程...(TCP 四次挥手) 这样的情况看起来是异常,但实际上是一种正常情况,并不会有什么特殊处理,和正常关闭没有什么区别 2 ....此时操作系统就先干掉所有的进程(相当于第一种情况),在干的过程中,同样就会触发四次挥手 四次挥手非常快,四次挥手已经完成了,关机动作才完成 四次挥手没来得及挥完,关机就完成了 B 收到 FIN 后,...就会立即返回一个 ACK,在紧接着 B 发送 FIN 的时候,就可能: A 已经关机完毕了,B 的 FIN 发过去之后,就不会有 ACK 了 B 就会触发超时重传(B 只知道 A 要和他说拜拜,但并不知道

    13510

    Python搭建HTTP服务

    SO_LINGER,如果选择此选项,close或 shutdown将等到所有套接字里排队的消息成功发送或到达延迟时间后才会返回.否则, 调用将立即返回。...2.请求解析 接收到请求后,对请求内容进行解析,得到我们需要的数据 ? ?...同时,我们还能看到我们在处理完请求以后,立即生成了一个jobId,并返回给客户端,这步操作的作用是,防止后台测试工具处理时间较长,造成http连接超时,同时也是为了防止用户长时间等待,但并不知道请求是否发送成功...通过 json.dumps 我们可以直接得到json字符串,最后通过sendall方法发送结果 注意事项 1.由于HTTP服务要长期存在,因此,代码不能在出现异常时就崩溃退出。...2.建议返回结果后,主动关闭连接,即clientConnection.close() 3.添加必要的日志信息,以便时刻掌握服务状态

    3.7K10

    分析 HTTP,TCP 的长连接和短连接以及 sock

    也可以这样说:短连接是指Socket连接后发送后接收完数据后马上断开连接。 长连接 连接->传输数据->保持连接 -> 传输数据-> 。。。->关闭连接。...长连接指建立Socket连接后不管是否使用都保持连接。 在 HTTP/1.0 中,默认使用的是短连接。也就是说,浏览器和服务器每进行一次 HTTP 操作,就建立一次连接,但任务结束就中断连接。...为什么呢,一般的 server 不会回复完 client 后立即关闭连接的,当然不排除有特殊的情况。...服务端将不能收到对探测的响应,并在75秒后超时。服务器总共发送 10 个这样的探测 ,每个间隔 75 秒。如果服务器没有收到一个响应,它就认为客户主机已经关闭并终止连接。 客户主机崩溃并已经重新启动。...所以并发量大,但每个用户无需频繁操作情况下需用短连好。 6 长连接和短连接的生命周期有多久? 短连接在建立连接后,完成一次读写就会自动关闭了。

    4.8K21

    SRT在B站的落地

    一旦进程1崩溃,内核会回收进程1并把进程2的index从原本的2变成1,取模算法的模值也从3变成了2。这就导致进程1崩溃后,进程0与其index不变。...但进程2的index变为1,同时index 2的Socket依旧存在且会被转至进程0,也就是说其中一个进程的崩溃会造成其他连接的重置会造成其它连接的重置。...这里还存在下图所示问题: 假设进程1崩溃,index0与index2均按照既定正常对应进程0与进程2,但所有崩溃的进程都是由守护进程重新拉起。...一旦拉起就意味着进程1崩溃后对应进程0的index1随后又会恢复对应进程1,相当于要中断两次运算。 接下来就要怎么优化?...这里的一个先决条件是每个SRT连接成功后有一个唯一的SOCKET ID ,这个Socket是SRT所给而非底层Socket。我们使用eBPF做 连接-进程绑定 。

    5.2K21

    SRT在B站的落地

    一旦进程1崩溃,内核会回收进程1并把进程2的index从原本的2变成1,取模算法的模值也从3变成了2。这就导致进程1崩溃后,进程0与其index不变。...但进程2的index变为1,同时index 2的Socket依旧存在且会被转至进程0,也就是说其中一个进程的崩溃会造成其他连接的重置会造成其它连接的重置。...这里还存在下图所示问题: 假设进程1崩溃,index0与index2均按照既定正常对应进程0与进程2,但所有崩溃的进程都是由守护进程重新拉起。...一旦拉起就意味着进程1崩溃后对应进程0的index1随后又会恢复对应进程1,相当于要中断两次运算。 接下来就要怎么优化?...这里的一个先决条件是每个SRT连接成功后有一个唯一的SOCKET ID ,这个Socket是SRT所给而非底层Socket。我们使用eBPF做 连接-进程绑定 。

    1.2K30

    长连接和短连接分析

    为什么呢,一般的server不会回复完client后立即关闭连接的,当然不排除有特殊的情况。...客户的TCP响应正常,而服务器也知道对方是正常的,服务器在两小时后将保活定时器复位。 客户主机已经崩溃,并且关闭或者正在重新启动。在任何一种情况下,客户的TCP都没有响应。...服务端将不能收到对探测的响应,并在75秒后超时。服务器总共发送10个这样的探测 ,每个间隔75秒。如果服务器没有收到一个响应,它就认为客户主机已经关闭并终止连接。 客户主机崩溃并已经重新启动。...解释1 所谓长连接指建立SOCKET连接后不管是否使用都保持连接,但安全性较差; 所谓短连接指建立SOCKET连接后发送后接收完数据后马上断开连接,一般银行都使用短连接 解释2 长连接就是指在基于tcp...短连接:Client方与server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。 此方式常用于一点对多点通讯。C/S通信。

    3.3K90

    活用控制反转 -- 一大波骚操作

    一年前在 MPJ 老师的频道上了解到了,但一直没自己独立创造场景用过。直到最近在项目中遇到个坑才用起来。...挑战一:等 socket 连接成功后再发起订阅 当应用打开后,需要立即订阅推送数据,包括用户登录状态下的私有数据和其它基础数据等。但是当发起订阅时,socket 可能连接成功了,也可能还没连接成功。...一开始我想设置个定时器,过两秒后再发起订阅。可是想想这种做法也太挫了。第二个思路是在 socket 连接的 onopen 事件里执行订阅。...知道这个需求后我内心是崩溃的,这根本没法写下去了啊!就在我都快要打算调整架构重写时,一拍脑袋灵光一闪,试试控制反转! 首先要让 Socket 工厂函数有个判断重连的机制。这个简单。...每次 socket 连接后,生成的连接实例都是新的。

    74810
    领券