//组件化包,可以写在最底层module的build.gradle,其他组件引用
compile 'com.github.mzule.activityrouter:activityrouter:1.2.2'
annotationProcessor "com.github.mzule.activityrouter:compiler:1.1.7"
1.其中第二行的包需要在每个组件的build.gradle中导入,直接写在dependencies中,然后自动下载导入
2.在每个组件(Module)中,添加一个Java,用于说明组件,如:
@Module("main")
public class Main {
}
在主工程(app)中需要导入每个组件,并自定义Application将每个组件在其中声明,并在AndroidManifest.xml中配置
Modules({"Login","main"})
public class MyApplication extends BaseApplication {
}
在参与跨组件跳转的Activity中配置
@Router("MianActivity")
public class MainActivity extends Activity{}
组件中是Module,而Application中式Modules,多了s。
3. 在主工程AndroidManifest.xml中
<!--声明整个应用程序的路由协议-->
<activity
android:name="com.github.mzule.activityrouter.router.RouterActivity"
android:theme="@android:style/Theme.NoDisplay">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="@string/global_scheme" /> <!-- 改成自己的scheme -->
</intent-filter>
</activity>
4.跳转
Routers.open(StartActivity.this, "scheme://MianActivity");
5.每个组件单独运行,就不具体说明了