类retrofit路由生成器 – Meepo

Meepo


Meepo是一个类retrofit路由生成器。你可以使用它为Activity,Fragmengt等创建路由。

安装

repositories {
    maven { url "https://jitpack.io" }
}
dependencies {
    compile 'com.github.nekocode:Meepo:{lastest-version}'
}

使用方法

首先声明路由接口。Meepo将你的方法 导航
到一个Java接口。

public interface Router {
    @TargetPath("user/{user_id}/detail")
    boolean gotoUserDetail(Context context, @Path("user_id") String userId, 
                           @Query("show_title") boolean showTitle);

    @TargetClass(StoreActivity.class)
    @TargetFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
    void gotoB(Context context, @Bundle("title") String title);
}

如果你想使用URI打开Activity,需要在Manifest文件添加一个<intent-filter>元素,用于折叠。

<activity android:name=".UserDetailActivity">
    <intent-filter>
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.DEFAULT"/>

        <data
            android:host="meepo.com"
            android:pathPattern="/user/.*/detail"
            android:scheme="meepo"/>
    </intent-filter>
</activity>

使用Meepo类生成一个路由接口实现。

final Meepo meepo = new Meepo.Builder()
        .config(new UriConfig().scheme("meepo").host("meepo.com"))
        .build();

final Router router = meepo.create(Router.class);

接下来你可以使用Router的方法来导航Activity而不是startActivity().

boolean isSucess = router.gotoUserDetail(this, "123", true);

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:类retrofit路由生成器 – Meepo