startAbilityForResult转变为Callback回调 原创

没用的喵叔
发布于 2021-5-12 10:05
浏览
1收藏

ActCaller

AbilitySlice#startAbilityForResult+onAbilityResult()转变为Callback形式

使用

  1. 添加依赖

    implementation project(':ActCaller')//依赖源码或者直接用har
    
    • 1.
  2. 与原生方法对比

    原生方法:

    startAbilityForResult(intent, 0);
    
    
    @Override
    protected void onAbilityResult(int requestCode, int resultCode, Intent resultData) {
        super.onAbilityResult(requestCode, resultCode, resultData);
    
        //处理返回数据
    }
    
    • 1.
    • 2.
    • 3.
    • 4.
    • 5.
    • 6.
    • 7.
    • 8.
    • 9.

    使用ActCaller:

    ActCaller.startForResult(MainAbilitySlice.this, intent, new ActCaller.Callback() {
        @Override
        public void onAbilityResult(Intent result) {
            //处理返回数据
        }
    });
    
    • 1.
    • 2.
    • 3.
    • 4.
    • 5.
    • 6.

源码https://gitee.com/andych008/ActCaller

原理

使用一个中间页Slice代理调用startAbilityForResult并处理onAbilityResult(),然后回调Callback。
简化外部的使用。

没什么新意,只是代码使用上的一种改进(或者说是偏好)

局限性

目前只支持在Slice中使用

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
标签
已于2021-5-12 10:25:36修改
2
收藏 1
回复
举报
2
1
1
1条回复
按时间正序
/
按时间倒序
lazihuman
lazihuman

学习一下

回复
2021-5-12 10:09:53


回复
    相关推荐