diff --git a/activityrouter/src/main/java/com/github/mzule/activityrouter/router/MethodInvoker.java b/activityrouter/src/main/java/com/github/mzule/activityrouter/router/MethodInvoker.java index 6516713..a315b75 100644 --- a/activityrouter/src/main/java/com/github/mzule/activityrouter/router/MethodInvoker.java +++ b/activityrouter/src/main/java/com/github/mzule/activityrouter/router/MethodInvoker.java @@ -8,5 +8,5 @@ */ public interface MethodInvoker { - void invoke(Context context, Bundle bundle); + void invoke(Context context, Bundle bundle, int requestCode); } diff --git a/activityrouter/src/main/java/com/github/mzule/activityrouter/router/Routers.java b/activityrouter/src/main/java/com/github/mzule/activityrouter/router/Routers.java index 114e409..a84fd12 100644 --- a/activityrouter/src/main/java/com/github/mzule/activityrouter/router/Routers.java +++ b/activityrouter/src/main/java/com/github/mzule/activityrouter/router/Routers.java @@ -1,15 +1,15 @@ package com.github.mzule.activityrouter.router; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.List; - import android.app.Activity; import android.content.Context; import android.content.Intent; import android.net.Uri; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.List; + /** * Created by CaoDongping on 4/6/16. */ @@ -125,7 +125,7 @@ private static boolean doOpen(Context context, Uri uri, int requestCode) { for (Mapping mapping : mappings) { if (mapping.match(path)) { if (mapping.getActivity() == null) { - mapping.getMethod().invoke(context, mapping.parseExtras(uri)); + mapping.getMethod().invoke(context, mapping.parseExtras(uri), requestCode); return true; } Intent intent = new Intent(context, mapping.getActivity()); diff --git a/app/src/main/java/com/github/mzule/activityrouter/NonUIActions.java b/app/src/main/java/com/github/mzule/activityrouter/NonUIActions.java index f778a88..4766d61 100644 --- a/app/src/main/java/com/github/mzule/activityrouter/NonUIActions.java +++ b/app/src/main/java/com/github/mzule/activityrouter/NonUIActions.java @@ -1,11 +1,11 @@ package com.github.mzule.activityrouter; -import com.github.mzule.activityrouter.annotation.Router; - import android.content.Context; import android.os.Bundle; import android.widget.Toast; +import com.github.mzule.activityrouter.annotation.Router; + /** * Created by CaoDongping on 04/11/2016. */ @@ -13,12 +13,12 @@ public class NonUIActions { @Router("logout") - public static void logout(Context context, Bundle bundle) { + public static void logout(Context context, Bundle bundle, int requestCode) { Toast.makeText(context, "logout", Toast.LENGTH_SHORT).show(); } @Router("upload") - public static void uploadLog(Context context, Bundle bundle) { + public static void uploadLog(Context context, Bundle bundle, int requestCode) { Toast.makeText(context, "upload", Toast.LENGTH_SHORT).show(); } } diff --git a/compiler/src/main/java/com/github/mzule/activityrouter/compiler/RouterProcessor.java b/compiler/src/main/java/com/github/mzule/activityrouter/compiler/RouterProcessor.java index d16a66f..ce1387e 100644 --- a/compiler/src/main/java/com/github/mzule/activityrouter/compiler/RouterProcessor.java +++ b/compiler/src/main/java/com/github/mzule/activityrouter/compiler/RouterProcessor.java @@ -1,7 +1,17 @@ package com.github.mzule.activityrouter.compiler; +import com.github.mzule.activityrouter.annotation.Module; +import com.github.mzule.activityrouter.annotation.Modules; +import com.github.mzule.activityrouter.annotation.Router; +import com.google.auto.service.AutoService; +import com.squareup.javapoet.ClassName; +import com.squareup.javapoet.JavaFile; +import com.squareup.javapoet.MethodSpec; +import com.squareup.javapoet.TypeSpec; + import java.util.HashSet; import java.util.Set; + import javax.annotation.processing.AbstractProcessor; import javax.annotation.processing.Filer; import javax.annotation.processing.Messager; @@ -15,14 +25,6 @@ import javax.lang.model.element.Name; import javax.lang.model.element.TypeElement; import javax.tools.Diagnostic; -import com.github.mzule.activityrouter.annotation.Module; -import com.github.mzule.activityrouter.annotation.Modules; -import com.github.mzule.activityrouter.annotation.Router; -import com.google.auto.service.AutoService; -import com.squareup.javapoet.ClassName; -import com.squareup.javapoet.JavaFile; -import com.squareup.javapoet.MethodSpec; -import com.squareup.javapoet.TypeSpec; @AutoService(Processor.class) public class RouterProcessor extends AbstractProcessor { @@ -185,8 +187,8 @@ private boolean handleRouter(String genClassName, RoundEnvironment roundEnv) { } else { mapMethod.addStatement("com.github.mzule.activityrouter.router.Routers.map($S, null, " + "new MethodInvoker() {\n" + - " public void invoke(android.content.Context context, android.os.Bundle bundle) {\n" + - " $T.$N(context, bundle);\n" + + " public void invoke(android.content.Context context, android.os.Bundle bundle, int requestCode) {\n" + + " $T.$N(context, bundle, requestCode);\n" + " }\n" + "}, " + "extraTypes)", format, className, methodName);