腾讯面试题

2021-05-26  本文已影响0人  hom03

•EventBus了解吗?

•安卓的注解有什么了解?

•滑动过程卡顿,刷新率太低,怎么排查?

Databinding有哪些了解?

webview有哪些问题?

3、listview缓存机制和优化;

5、okhttp源码:分发器和五大拦截器;

8、如何做进程保活?

四大组件、activity启动模式、activty各种情况下的生命周期

(1)activity生命周期:onCreate - onStart - onResume - onPause - onStop - onDestroy - onRestart

(2)activity启动模式:standard、singleTop、singleTask、singleInstance

(3)singleTop在栈顶时候再启动的生命周期变化:onPause - onNewIntent - onResume

(4)singleTask在栈内再次启动时候的生命周期变化:onRestart - onStart - onResume

2、屏幕横竖屏切换时的生命周期变化

己设计一个RecyclerView

RecyclerView 缓存(详细讲)

RecyclerView性能优化

2、动态权限适配方案,权限组的概念

4、进程保活

5、listview图片加载错乱的原理和解决方案,listview是如何做缓存的?

7、Android系统为什么会设计ContentProvider,进程共享和线程安全问题

(1)提供一种跨进程数据共享的方式:

由系统来管理ContentProvider的创建、生命周期及访问的线程分配,简化我们在应用间共享数据(进程间通信)的方式。我们只管通过ContentResolver访问ContentProvider所提示的数据接口,而不需要担心它所在进程是启动还是未启动 。

(2)更好的数据访问权限管理:

ContentProvider可以对开发的数据进行权限设置,不同的URI可以对应不同的权限,只有符合权限要求的组件才能访问到ContentProvider的具体操作。

10、EventBus实现原理和观察者模式在开发中的运用?

12、App 是如何沙箱化,为什么要这么做?

(1)Android是一个多用户系统,每个应用是一个独立的用户。系统为每个应用分配一个唯一的用户标识(UID),并为应用中所有的文件设置该用户才能访问的权限。每个进程中有一个独立的VM。每个应用在自己的进程中运行,应用组件需要执行时,系统创建该进程,当系统内存不足时,系统会销毁该进程。

(2)在很多情况下,源自同一开发者或同一开发机构的应用程序,相互间存在信任关系。Android系统提供一种所谓的共享UID(SharedUserID)机制,使具备信任关系的应用程序可以运行在同一进程空间。

(3)沙箱是为app提供隔离环境的一种安全机制,严格控制执行的程序所访问的资源,以确保系统的安全,让app在独立的进程中执行任务,让其不能访问外部进程的资源,这样一个应用出问题了,其他的应用进程能够保障不被影响

2. HTTP3.0有什么改进?

多进程保活( 一对一情况 一对多情况)这一块不是很清楚

三次握手 四次挥手

Activity启动模式

JAVA文件到APK的编译过程

讲一下recylerview

 TCP三次握手,四次挥手,为什么不能三次挥手

6. HTTP头部信息?

栈和堆的运用场景

4.string的底层逻辑

8.java的静态存储原理

算法题(快速排序)

说一说堆和栈的区别

为什么要用分开两个地方存储x

方法重载和重写有什么区别

跨进程传递大内存数据如何做?

讲讲 bindService 的过程,你当初是怎么优化后台服务进程的?

tcp三次握手,为什么要握第三次

string和stringbuffer的区别,stringbuffer为什么快一点

上一篇 下一篇

猜你喜欢

热点阅读