onstart()之后就不能注册了。 注意2:registerForActivityResult()方法不要放在setOnClickListener()里面,要放在onCreate里。 第2个Activity给第1个Activity返回数据 传统的写法就是使用startActivityForResult()方法传入intent和请求码,然后会回调到onActivityResult()中,在这里面进行返回数据的处理。 使用Activity Result...
方法确实已经被弃用。这是因为在Android 10(API级别29)及更高版本中,Google引入了新的活动结果获取API,以简化异步操作并提升用户体验。以下是关于这个问题的详细回答: 1. 确认startActivityForResult(android.content.Intent, int)已被弃用 startActivityForResult 方法在Android API 30中被正式弃用,并建议使用新的Activ...
SecondActivity::class.java),REQUEST_CODE)}override funonActivityResult(requestCode:Int,resultCode:Int,data:Intent?){super.onActivityResult(requestCode,resultCode,data)when(requestCode){REQUEST_CODE->{val code=resultCode
从Android 11开始,startActivityForResult方法已被弃用,推荐使用registerForActivityResult方法来处理Activity结果。下面是取消从startActivityForResult调用的Intent的步骤: 在调用startActivityForResult方法的Activity中,重写onActivityResult方法。这个方法会在子Activity结束后被调用,用于处理返回的结果。 在子Activity中,当需要取...
* 创建启动Intent * @param context [Context] * @param input 当前类的第一个泛型参, 这里自己实现传递过程 */overridefuncreateIntent(context:Context,input:String):Intent=Intent(context,ContractActivity::class.java).apply{putExtra(EXTRA_NAME,"$input-${System.currentTimeMillis()}")}/** ...
1. 2. 3. 在上述代码中,我们创建了一个Intent对象,并使用putExtra方法将需要传递的数据添加到Intent中。然后,我们调用launcher的launch方法来启动Activity。 步骤3:处理ActivityResult回调 当第二个Activity结束后,我们可以在之前注册的ActivityResultLauncher的回调函数中处理返回的结果。回调函数中的result参数包含了返回...
Intentintent=newIntent(this,SecondActivity.class);startActivityForResult(intent,REQUEST_CODE); 1. 2. 然而,从Android 11(API 30)开始,startActivityForResult被逐渐弃用,推荐使用Activity Result API。这使得代码更加简洁和可靠。 使用Activity Result API ...
好久没写安卓应用了,最近才发现 startActivityForResult() 方法被弃用了,便听从谷歌官方的建议了解了一下 registerForActivityResult。 为在日后为方便自己使用,故有此文以作备忘。 1. 首先阅读谷歌官方的指南 https://developer.android.google.cn/training/basics/intents/result?hl=zh-cn#kotlin ...
除了startActivityForResult()方法之外,requestPermissions()方法也被废弃了。至于理由都是一样的,推荐使用Activity Result API。 详细替换方案见: https://developer.android.com/training/basics/intents/result?hl=zh-cn#java https://blog.csdn.net/guolin_blog/article/details/121063078 ...
() .build(); // 在Activity的onCreate方法中初始化GoogleSignInClient对象 GoogleSignInClient mGoogleSignInClient = GoogleSignIn.getClient(this, gso); // 在登录按钮的点击事件中调用谷歌登录 Intent signInIntent = mGoogleSignInClient.getSignInIntent(); startActivityForResult(signInIntent, RC_SI...