1. 程式人生 > >ARouter路由框架不回撥onActivityResult的問題

ARouter路由框架不回撥onActivityResult的問題

阿里巴巴的ARouter框架真的是好用,基本可以滿足專案的跳轉需求,而且使用簡單,

但是我在使用的時候卻遇到了一個問題,需求:需要呼叫navigation(Activity activity,int RequestCode)方法代替傳統的StartActivityForResult方法,在onActivityResult方法中處理業務邏輯。但是當我使用ARouter後,卻怎麼也不回撥onActivityResult方法,真實怪了。我的程式碼如下:



各種百度也沒有知道解決辦法,無奈只能追蹤原始碼。終於找到問題所在:原來跟你的requestCode有關,ARouter在跳轉的時候有一個判斷,如果requestCode>0,才執行startActivityForResult方法,否則執行的是startActivity方法。而我上面的程式碼使用的RequestCode正好是0,所以執行的是startActivity方法,怪不得不回撥onActivityResult方法,解決方法就是把RequestCode設定成大於0的值。

ARouter原始碼:


希望等幫助到遇到同樣問題的童鞋。