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

相关推荐
always_TT13 小时前
内存泄漏是什么?如何避免?
android·java·开发语言
xiangxiongfly91514 小时前
Android ViewRootImpl源码分析
android·绘制流程·viewrootimpl·activitythread
Yang-Never14 小时前
ADB ->Android 实时监控内存
android·开发语言·adb·android studio
zhangren0246814 小时前
Laravel5.x版本特性全解析
android·vue.js·spring boot·mysql
2501_9159184114 小时前
WebKit 抓包,WKWebView 请求的完整数据获取方法
android·前端·ios·小程序·uni-app·iphone·webkit
EasyControl移动设备管理14 小时前
打破系统壁垒:从 Android 到 macOS,打造全平台统一终端管理(MDM)方案
android·人工智能·物联网·macos·移动设备管理·mdm系统·跨区域设备
帅得不敢出门14 小时前
Android Framework中调用由java编译成的jar接口
android·java·framework·jar
火山上的企鹅14 小时前
QGC 二次开发实战:Android 单机离线授权怎么落地
android·qt·qgroundconrol·离线授权
黄林晴14 小时前
Swift 杀进 Android,Google 和 Apple 都要失眠了?
android·前端·swift
黄林晴15 小时前
改完代码1秒生效,Compose热重载来了!
android