android onresume方法,Android onActivityResult()和onResume()的执行顺序

android onresume方法,Android onActivityResult()和onResume()的执行顺序问题回顾:在Android8.0手机上不能直接安装Apk,需要权限申请,回调后执行onActivityResult()方法,并弹出对应的dialog,这时需要判断当前Activity是否处于resume状态,通过变量来控制,但结果是这个dialog并不会弹出。问题本质Activity跳转到系统应用后回调onActivityResult()先执行还是onResume()先执行?查看源码/***C…

大家好,又见面了,我是你们的朋友全栈君。

问题回顾:

在Android8.0手机上不能直接安装Apk,需要权限申请,回调后执行onActivityResult()方法,并弹出对应的dialog,这时需要判断当前Activity是否处于resume状态,通过变量来控制,但结果是这个dialog并不会弹出。

问题本质

Activity跳转到系统应用后回调onActivityResult() 先执行还是onResume()先执行?

查看源码

/**

* Called when an activity you launched exits, giving you the requestCode

* you started it with, the resultCode it returned, and any additional

* data from it. The resultCode will be

* {@link #RESULT_CANCELED} if the activity explicitly returned that,

* didn’t return any result, or crashed during its operation.

*

*

You will receive this call immediately before onResume() when your

* activity is re-starting.

*

*

This method is never invoked if your activity sets

* {@link android.R.styleable#AndroidManifestActivity_noHistory noHistory} to

* true.

*

* @param requestCode The integer request code originally supplied to

* startActivityForResult(), allowing you to identify who this

* result came from.

* @param resultCode The integer result code returned by the child activity

* through its setResult().

* @param data An Intent, which can return result data to the caller

* (various data can be attached to Intent “extras”).

*

* @see #startActivityForResult

* @see #createPendingResult

* @see #setResult(int)

*/

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

}

onActivityResult()注释中有这么一句话:

You will receive this call immediately before onResume() when your activity is re-starting.

(意思是说当你的Activity重新启动时 onActivityResult() 会在onResume()之前执行)

很显然,如果你的Activity 调用了 startActivityForResult() 方法启动,回调之后会先执行 onActivityResult() ,然后执行onResume()

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139798.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 提问的艺术(转帖)

    提问的艺术(转帖) 一、为什么要探讨提问的艺术呢?首先我们要搞清楚什么是问题,为什么要提问,为什么要强调提问的艺术?所谓问题指的是,所有造成我们焦虑、争议的、不能自我答复和解决的一些思考和事情,而且在当时并没有适当答案可以解决。在这个网络时代,没有人是全能的,谁都会在必要的时候为了寻求帮助和寻找答案而提问。而所谓艺术,指的是通过某种表现手法,使人产生喜爱感觉。谁都需要自己的提问,可以在最短、最快

    2022年6月23日
    61
  • System.out.println什么意思_out的意思是

    System.out.println什么意思_out的意思是在Java编程中,我们常常用 System.out.println(); 来输出字符串,也许我们都已经猜到println()是方法名,但System是什么,out又是什么呢?  其实System是java.lang里面的一个类,如下图:     而out就是System里面的一个静态数据成员,而且这个成员是java.io.PrintStream类的引用。如下图,被关键字static修饰的成员可…

    2022年10月2日
    5
  • 微信小程序超级大坑之40029(invalid code)

    微信小程序超级大坑之40029(invalid code)在小程序新建的时候就应该输入你正式的AppID,如果使用修改的AppID,则无法使用。jscode2session会返回{"errcode":40029,"errmsg":"invalidcode,hints:[req_id:m3yw8a0472th20]"}不能通过修改project.config.json中的AppID来实现:必须重新创建新的小程序项目。…

    2022年5月29日
    85
  • goland2021激活码_在线激活[通俗易懂]

    (goland2021激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlMLZPB5EL5Q-eyJsaWN…

    2022年3月21日
    163
  • 通达OA工作流-流程设计

    通达OA工作流-流程设计2.2    流程设计  2.2.1    流程分类  在工作流工作流设置分类设置可以为系统添加流程分类。流程分类更方便了流程的管理,把不同性质的流程放在不同的分类下,也方便了流程的查找。 同时根据流程分类的所属部门,实现了流程分类按部门进行独立管理的目的。

    2022年6月23日
    35
  • Oracle中关于bitmap index的使用问题

    Oracle中关于bitmap index的使用问题

    2021年9月2日
    77

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号