AndroidAutoResolveHelper.resolveTask()和已弃用的onActivityResult()方法
创始人
2024-10-06 09:33:11
0

从Android 11(API 30)开始,Google不推荐使用onActivityResult()方法作为从Activity中获取结果的方式。此外,Android AutoResolveHelper.resolveTask()方法也被修改,需要使用新的方法来替代。

以下是使用ActivityResultContracts.StartIntentSenderForResult解决这些问题的示例代码:

在Activity中:

private ActivityResultLauncher mStartIntentSenderForResult;
private IntentSenderRequest mIntentSenderRequest;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    // 初始化 ActivityResultLauncher
    mStartIntentSenderForResult = registerForActivityResult(
            new ActivityResultContracts.StartIntentSenderForResult(),
            result -> {
                if (result.getResultCode() == Activity.RESULT_OK) {
                    // 处理成功结果
                } else {
                    // 处理取消或错误结果
                }
            });

    // 构建 IntentSenderRequest 对象
    IntentSender intentSender = ...;
    mIntentSenderRequest = new IntentSenderRequest.Builder(intentSender).build();

    // 启动结果处理方法
    mStartIntentSenderForResult.launch(mIntentSenderRequest);
}

在Fragment中:

private ActivityResultLauncher mStartIntentSenderForResult;
private IntentSenderRequest mIntentSenderRequest;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    // 初始化 ActivityResultLauncher
    mStartIntentSenderForResult = registerForActivityResult(
            new ActivityResultContracts.StartIntentSenderForResult(),
            result -> {
                if (result.getResultCode() == Activity.RESULT_OK) {
                    // 处理成功结果
                } else {
                    // 处理取消或错误结果
                }
            });

    // 构建 IntentSenderRequest 对象
    IntentSender intentSender = ...;
    mIntentSenderRequest = new IntentSenderRequest.Builder(intentSender).build();
}

public void startIntentSenderForResult() {
    // 启动结果处理方法
    mStartIntentSenderForResult.launch(mIntentSenderRequest);
}

相关内容

热门资讯

网友热议!吉利比鸡辅助(辅助挂... 网友热议!吉利比鸡辅助(辅助挂)其实是有挂的(有挂手册)-哔哩哔哩;打开点击测试直接进入微信(136...
第9分钟开挂!雀友会广东潮汕辅... 第9分钟开挂!雀友会广东潮汕辅助,浙江宝宝游戏辅助器,规律教程-2026最新版本1、全新机制【浙江宝...
据公告内容!宝宝吃吃吃有开挂吗... 【亲,宝宝吃吃吃有开挂吗 这款游戏可以开挂的,确实是有挂的,很多玩家在这款宝宝吃吃吃有开挂吗中打牌都...
第二分钟开挂!小程序财神十三水... 第二分钟开挂!小程序财神十三水脚本时评,友友联盟辅助器,必赢方法-2026最新版本;1、小程序财神十...
围绕透视问题!山西扣点点app... 围绕透视问题!山西扣点点app技巧(辅助挂)果然是有挂(有挂法门)-哔哩哔哩【无需打开直接搜索加薇1...
第一分钟开挂!陕麻圈内购破解辅... 第一分钟开挂!陕麻圈内购破解辅助,老友广东辅助器,规律教程-2026最新版本1、玩家可以在陕麻圈内购...
备受关注的!山西扣点点辅助挂定... 山西扣点点辅助挂定制交易平台开挂教程视频分享装挂详细步骤在当今的网络游戏中,山西扣点点辅助挂定制交易...
第五分钟开挂!随意玩聚乐部辅助... 第五分钟开挂!随意玩聚乐部辅助,中至江西插件,揭秘攻略-2026最新版本1.随意玩聚乐部辅助 ai辅...
据通报!广东闲来辅助免费(辅助... 您好:广东闲来辅助免费这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...
1分钟开挂!聚友联盟免费辅助器... 1分钟开挂!聚友联盟免费辅助器,老夫子拼十辅助,必备教程-2026最新版本1、聚友联盟免费辅助器ai...