ActionInterceptor

abstract class ActionInterceptor

Functions

getArguments
链接已复制到剪贴板
fun getArguments(): Bundle

每个Action都有一个对应的Arguments,如果一个Action有多个ActionInterceptor处理,则所有ActionInterceptor会根据优先级链式处理。 ActionInterceptor处理链间,可以通过Arguments,向下传递参数

handle
链接已复制到剪贴板
open fun handle(context: Context, navigator: Navigator): Boolean

响应某个指定Action

onFinish
链接已复制到剪贴板
open fun onFinish()

当前Action的所有处理器均处理完成以后回调。 此时调用getArguments()获取的结果,与handle()中调用getArguments()获取的内容,可能不相同。 因为你不能保证处理链后面的拦截器,是否修改了Arguments

optActivity
链接已复制到剪贴板
fun optActivity(): Activity?

尝试获取当前所在的Activity。 如果TheRouter.action(activity)传入了Activity,则此处会返回此Activity,
否则尝试通过应用生命周期获取,此时不一定能获取到数据。

Properties

priority
链接已复制到剪贴板
open val priority: Int

数字越大,优先级越高