自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Android 组件通信中有哪些不为人知的细节?

在向AMS注册前,构造了IIntentReceiver 对象,该接口是AIDL声明的,也就是说向AMS注册了个回调接口,当AMS 接收到发送广播的请求后,发现是动态注册的,于是通过回调IIntentReceiver 接口的performReceive(xx)方法,进而调用BroadcastReceiver里的onReceive(xx)方法,貌似没有看到切换到主线程执行呢?可以看出,尽管Android 8.0前后获取IActivityManager 接口的方式不同,然而都要经历上面3个步骤。

2025-01-10 18:27:05 821

原创 Android 组件化场景下多module依赖优雅实践方案

相应的,使用方使用 仓库中的依赖项时,gradle会拉取其对应的pom文件,并添加依赖。当时,我们回到上面说的不人道主义之处,我们通过了with 函数,将A自身的依赖信息,注入到APP中。使用compileOnly方式的并没有被收录到pom文件中,而api和implementation 方式,在pom文件中,都表现为 采用compile的方案应用依赖。所以,如果我们直接使用一个编译好的静态包,而丢弃了他对应的pom文件时,可能会丢失依赖,出现打包失败或者运行异常。这是必须要解决的,当然,这很容易解决。

2025-01-10 18:23:24 1014

原创 Android 眼睛 显示隐藏密码(ImageView)_hidereturnstransformationmethod

【代码】Android 眼睛 显示隐藏密码(ImageView)_hidereturnstransformationmethod。

2025-01-10 18:19:43 868

原创 2024最新最全Java基础高频面试题汇总(1W字详细解析)

记住是有可能,而不是一定。简单来说,一个进程就是一个执行中的程序,它在计算机中一个指令接着一个指令地执行着,同时,每个进程还占有某些系统资源如 CPU 时间,内存空间,文件,输入输出设备的使用权等等。我们提供了泛指的概念,但具体执行的时候却可以有具体的规则来约束,比如我们用的非常多的ArrayList就是个泛型类,ArrayList作为集合可以存放各种元素,如Integer, String,自定义的各种类型等,但在我们使用的时候通过具体的规则来约束,如我们可以约束集合中只存放Integer类型的元素,如。

2025-01-10 03:04:07 480

原创 2024新鲜出炉的Android大厂面试题锦集(BAT TMD JD 小米),Github标星5K 建议收藏!

6.IPC的方式有:Bundle(在Intent启动的时候传入,不过是一次性的),文件共享(对于SharedPreference是特例,因为其在内存中会有缓存),使用Messenger(其底层用的也是AIDL,同理要操作哪端,就在哪端定义Messenger),AIDL,ContentProvider(在本进程中继承实现一个ContentProvider,在增删改查方法中调用本进程的SQLite,在其他进程中查询),Socket。同时如果像增加一个新生命周期方法的时候,只需要在接口中和代理中声明一下就行。

2025-01-10 02:56:45 356

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除