位置: 编程技术 - 正文

Android--全局获取Context的技巧(android全局异常捕获并弹框提示)

编辑:rootadmin

推荐整理分享Android--全局获取Context的技巧(android全局异常捕获并弹框提示),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android全局异常捕获并弹框提示,android定义全局变量,android全局捕获异常,android 全局loading,android 全局dialog,android 全局dialog,android 全局loading,android获取全局context,内容如对您有帮助,希望把文章链接给更多的朋友!

Android中很多地方都会用到Context,弹出Toast的时候需要、启动活动时需要、发送广播的时候也需要、操作数据库的时候需要、使用通知的时候也需要等等等。

或许你现在还没有为得不到Context而发愁,因为现在我们的很多操作都是在活动中进行的,而活动本身就是一个Context对象。但是,当应用程序的框架逐渐开始复杂起来的时候,很多的逻辑代码都将脱离Activity类,但此时你又恰恰需要使用Context,也许这个时候你就会感到有些伤脑筋了。

举个例子,这里我们编写了一个HttpUtil类,将一些通用的网络操作封装起来:

这里可以使用sendHttpRequest()来发送Http请求,但是我假如我们想对sendHttpRequest()方法进行一些优化,当检测到网络不存在的时候就给用户一个Toast提示,并不再执行后面的代码。这里却让我们遇到了一个问题,弹出的Toast提示需要一个Context参数,而我们在HttpUtil类中显然是获取不到Context对象的,怎么办呢?

Android--全局获取Context的技巧(android全局异常捕获并弹框提示)

其实这个问题经常会遇到,我们怎么解决呢?这里我们介绍一种技巧,让你在项目的任何地方都能轻易的获取到Context。Android提供了 一个Application类,以便于管理程序内一些全局的状态信息,比如全局的Context。定制一个自己的Application,首先我们需要创建一个MyApplication类继承自Application,如下:

接下来我们需要告知系统,在程序启动的时候应该初始化MyApplication 类,而不是默认的Application类,在AndroidManifest.xml文件中的<application>标签下进行指定:

这样以后在项目的任何地方使用Context,只需要调用一下MyApplication.getContext()就可以了:

我的应用:

webview与h5交互 androidwebview与H5的交互方法无响应@SuppressLint({SetJavaScriptEnabled,JavascriptInterface})protectedvoidonStart(){//TODOAuto-generatedmethodstubsuper.onStart();webView=(WebView)findViewById(R

android 在android中教你一行代码判断是不是主线程 我们有些时候需要判断这是不是主线程,特别是在一些使用别人框架的时候,比如想在某个回调中显示textview控件上的文字,但是我不知道他是不是在主线程

Android中的设计模式-单例模式 Android中的设计模式-单例模式单例模式算是比较常用的模式,在Java中如果想要一个JVM中只存在某个类的一个实例,就需要使用到单例模式,而只存在一

标签: android全局异常捕获并弹框提示

本文链接地址:https://www.jiuchutong.com/biancheng/378193.html 转载请保留说明!

上一篇:android icon和启动页大小与尺寸(安卓手机如何打开.icon文件)

下一篇:webview与h5交互(html5webview交互)

  • 什么公司需要缴纳印花税
  • 个体摊贩
  • 考税务师的报考条件
  • 个体工商户增值税怎么计算
  • 汇算清缴现金流量表怎么填
  • 餐饮业税负上升有什么原因
  • 普通发票作废影响额度吗
  • 公司开户费用都包括哪些
  • 一般纳税人劳务税率是多少2023
  • 残疾人保障金做什么会计科目
  • 信用减值损失在利润表怎么填列
  • 补交税款时加收的滞纳金有上限吗
  • 房地产企业土地使用税
  • 在银行开资信证明的流程
  • 保安服务专票是多少税点
  • 新办企业汇算清缴流程
  • 普票开票开给个人怎么开
  • 公司给个人买的意外险个人有权利查吗
  • 盈余公积补亏影响资产吗
  • 企业工资和社保缴费基数
  • 支付应付账款的会计科目
  • 向人力资源公司辞职怎么说
  • cdr插件哪个最好用
  • 鸿蒙超级终端搜不到
  • 软件开发行业的现状
  • 直接计入当期利润的利得,即企业非日常
  • 其他业务成本属于成本类吗
  • linux环境什么意思
  • 法人借给公司钱怎么备注
  • session失效的方法
  • remind32.exe - remind32是什么进程 有什么用
  • 收到对方公司开的电子专票怎么入账
  • 屏幕颜色怎么变
  • 怎么修改boot启动项
  • flash是什么文件
  • win7打开启动
  • 2021发票勾选认证
  • 无损数据分区
  • 收取包装物押金税率
  • 劳务报酬所得与经营所得
  • 工会经费两种拨缴方式
  • 出售低值易耗品的成本
  • 大沼泽地国家公园位于哪个城市
  • 公司租房子 房东让我们代缴税
  • 个人所得税完整证明
  • axios用法示例
  • 食堂员工自己吃饭违法吗
  • 通过微信支付码能查到微信本人吗
  • 办理完税证明需要什么资料
  • 总公司签协议,分公司开票,报账怎样写说明
  • 企业单方面调整员工的工作岗位
  • 普通发票该可以抵扣吗
  • 股份支付的账务如何处理?
  • MySQL中distinct语句去查询重复记录及相关的性能讨论
  • 废旧物资回收公司名称
  • 企业的利润分配包括哪些
  • 暂估的原材料用不用记原材料明细账
  • 用银行存款支付本季度短期借款利息
  • 其他业务收入借贷方向表示
  • 分公司非独立核算企业所得税税率
  • 免税发票怎么抵扣
  • 开票软件升级包
  • 建筑业纳税人简易征收偷逃增值税
  • 房产公司销售成本怎么算
  • win2003安装
  • win2008定时任务设置
  • 在一台电脑安装两个省份个税系统
  • win8 怎么样
  • Linux通过sar命令查看网卡流量
  • jquery如何赋值
  • bat批处理命令大全
  • 批处理常用命令总结
  • Unity3D: StartCoroutine 和 yield return 深入研究
  • 什么是javascrip
  • unityshader插件
  • unity游戏加密
  • 临沭公交车多久一班
  • 仓库需要交房产税吗
  • 税务注销相关文件
  • 残疾人个体工商户补贴
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设