安卓下Application和Activity的Context获取

情形一:Activity中

通过getApplication()获得Application,其本身也是一个的Context,也可以通过getApplicationContext()获得Application的Context,结果一样。

而this表示当前的Activity对象,其本身也是一个的Context。

注意:这两个Context是不一样的,它们的hash code不同。

情形二:Fragment中

通过getActivity()和getContext()得到的是一样的,都是Activity的Context。

情形三:View中

通过getContext()得到的是Activity的Context。


补充:要在Fragement或View中获得Application的Context,先参考"情形二"和"情形三"得到Activity或Activity的Context,再参考"情形一"得到Application的Context。

通过对象的toString方法就能得到对象的描述,形如"com.example.demo.MainActivity@176af1e",这可以用来识别是否为同一对象。

相关推荐
SHEN_ZIYUAN7 小时前
深度解析:从 AnimationHandler 原理看 Android 动画内存泄漏
android
冬奇Lab7 小时前
稳定性性能系列之十六——车机特定场景:黑卡死问题分析与排查实战
android·性能优化
座山雕~8 小时前
Springboot
android·spring boot·后端
香气袭人知骤暖9 小时前
SQL慢查询常见优化步骤
android·数据库·sql
丨康有为丨9 小时前
Android滑动冲突详解(场景+解决)
android
千里马学框架10 小时前
疑难ANR面试题:crash导致ANR深入剖析
android·智能手机·framework·perfetto·性能·anr·小米汽车
石像鬼₧魂石13 小时前
安卓 WiFi 钓鱼渗透测试全流程教程(详细版)
android
YIN_尹14 小时前
【MySQL】表的约束(上)
android·数据库·mysql
_李小白14 小时前
【Android 美颜相机】第二天:Android-GPUImage Sample模块源码解析
android·数码相机
2501_9159090614 小时前
Charles 抓不到包怎么办?iOS 调试过程中如何判断请求路径
android·ios·小程序·https·uni-app·iphone·webview