安卓下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",这可以用来识别是否为同一对象。

相关推荐
星空语1 小时前
音频001_Android+Linux车载/手机音频全链路分层架构图
android·linux·音视频
CyL_Cly2 小时前
解决官网下载慢!Android Studio 最新版网盘下载
android·ide·android studio
智塑未来2 小时前
鸿蒙系统对比安卓、iOS,核心优势是什么?
android·ios·harmonyos
AI刀刀2 小时前
豆包智能体对话导出后,如何构建长期归档与高效检索体系?
android·人工智能·word·excel·ai导出鸭
初雪云3 小时前
iOS 上架入门:证书、描述文件、IPA 上传到底是什么关系?
android·ios·自动化·产品经理·iphone
玩机达人886 小时前
一加12/Ace5/Ace3pro手机ColorOS16降级回锁BL熔断变黑砖怎么办
android·智能手机·电脑
Digitally7 小时前
使用 USB 数据线将文件从安卓设备传输到电脑
android·电脑
xieliyu.7 小时前
MySQL 六大基础约束详解:NOT NULL/DEFAULT/UNIQUE/ 主键 / 外键 / CHECK
android·数据库·sql·mysql
Anokata8 小时前
MYSQL SQL 执行系列1
android·sql·mysql
REDcker9 小时前
Android 15 16KB 内存页适配详解
android·开发语言·python