AIDL使用注意事项总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/loveBuZhiDao/article/details/79953696

这里仅仅记录在使用AIDL的时候我们有哪些是要注意的

在UI线程执行AIDL方法引起的anr

客户端调用远程服务的方法,被调用的方法在服务端的Binder线程池中,同时客户端线程也会被挂起,这个时候如果服务端方法执行比较耗时的操作,
就会导致客户端线程长时间阻塞在这里,而如果这个客户端线程是UI线程的话,就会导致客户端ANR。
避免方法: 
1. 不要在onServiceConnection或者onServiceDisconnected中直接操作服务端方法(如果知道服务端的方法是耗时的)
2. 因为服务端的方法本身就是运行在Binder线程池中,所以服务端方法本身就是可以执行大量耗时操作的,不要在服务端的方法中开线程去进行异步任务。
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页