Skip to content

Commit

Permalink
Modify the project structure to facilitate users to understand the de…
Browse files Browse the repository at this point in the history
…sign concept of the framework.
  • Loading branch information
zhi1ong committed Oct 22, 2020
1 parent b653995 commit 54dfcb0
Show file tree
Hide file tree
Showing 32 changed files with 130 additions and 71 deletions.
14 changes: 4 additions & 10 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,6 @@ android {
minSdkVersion Integer.parseInt(MIN_SDK_VERSION)
targetSdkVersion Integer.parseInt(TARGET_SDK_VERSION)
versionName "0.0.1"

javaCompileOptions {
annotationProcessorOptions {
arguments = [AROUTER_MODULE_NAME: project.getName(), AROUTER_GENERATE_DOC: "enable"]
}
}
}

compileOptions {
Expand Down Expand Up @@ -50,13 +44,13 @@ android {
}

dependencies {
annotationProcessor project(':arouter-compiler')
implementation project(':arouter-api')

// 开发中依赖对方的 service 包
implementation project(':module-java-export')
implementation project(':module-java')
implementation project(':module-kotlin')
implementation project(':arouter-annotation')

implementation 'com.alibaba:fastjson:1.2.48'
implementation project(':module-kotlin')

implementation "com.android.support:support-v4:${SUPPORT_LIB_VERSION}"
implementation "com.android.support:appcompat-v7:${SUPPORT_LIB_VERSION}"
Expand Down
12 changes: 0 additions & 12 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,18 +43,6 @@
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:name=".TestWebview">
</activity>
<activity android:name=".testactivity.Test1Activity">
</activity>
<activity android:name=".testactivity.Test2Activity">
</activity>
<activity android:name=".testactivity.Test3Activity">
</activity>
<activity android:name=".testactivity.Test4Activity">
</activity>
<activity android:name=".testactivity.TestDynamicActivity">
</activity>
</application>

</manifest>
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.alibaba.android.arouter.demo;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
Expand All @@ -12,12 +11,12 @@
import android.view.View;
import android.widget.Toast;

import com.alibaba.android.arouter.demo.testactivity.TestDynamicActivity;
import com.alibaba.android.arouter.demo.testinject.TestObj;
import com.alibaba.android.arouter.demo.testinject.TestParcelable;
import com.alibaba.android.arouter.demo.testinject.TestSerializable;
import com.alibaba.android.arouter.demo.testservice.HelloService;
import com.alibaba.android.arouter.demo.testservice.SingleService;
import com.alibaba.android.arouter.demo.module1.testactivity.TestDynamicActivity;
import com.alibaba.android.arouter.demo.service.model.TestObj;
import com.alibaba.android.arouter.demo.service.model.TestParcelable;
import com.alibaba.android.arouter.demo.service.model.TestSerializable;
import com.alibaba.android.arouter.demo.service.HelloService;
import com.alibaba.android.arouter.demo.module1.testservice.SingleService;
import com.alibaba.android.arouter.facade.Postcard;
import com.alibaba.android.arouter.facade.callback.NavCallback;
import com.alibaba.android.arouter.facade.enums.RouteType;
Expand Down Expand Up @@ -73,6 +72,10 @@ public void onClick(View v) {
ARouter.getInstance()
.build("/test/activity2")
.navigation();

// 也可以通过依赖对方提供的二方包来约束入参
// 非必须,可以通过这种方式调用
// Entrance.redirect2Test1Activity("张飞", 48, this);
break;
case R.id.kotlinNavigation:
ARouter.getInstance()
Expand Down
40 changes: 40 additions & 0 deletions module-java-export/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
apply plugin: 'com.android.library'

dependencies {
implementation project(':arouter-annotation')
implementation project(':arouter-api')
implementation "com.android.support:appcompat-v7:${SUPPORT_LIB_VERSION}"
annotationProcessor project(':arouter-compiler')

implementation 'com.alibaba:fastjson:1.2.48'
}
android {
compileSdkVersion Integer.parseInt(COMPILE_SDK_VERSION)
buildToolsVersion BUILDTOOLS_VERSION

defaultConfig {
minSdkVersion Integer.parseInt(MIN_SDK_VERSION)
targetSdkVersion Integer.parseInt(TARGET_SDK_VERSION)

javaCompileOptions {
annotationProcessorOptions {
arguments = [ AROUTER_MODULE_NAME : project.getName() ]
}
}
}

compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}

buildTypes {
release {
debuggable false
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}

lintOptions { abortOnError false }
}
}
4 changes: 4 additions & 0 deletions module-java-export/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.alibaba.android.arouter.demo.service">
</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.alibaba.android.arouter.demo.service;

import android.content.Context;

import com.alibaba.android.arouter.launcher.ARouter;

public class Entrance {
/**
* 跳转到 Test1 Activity,
*
* @param name 姓名
* @param age 年龄
* @param context ctx
*/
public static void redirect2Test1Activity(String name, int age, Context context) {
ARouter.getInstance().build("/test/activity1")
.withString("name", name)
.withInt("age", age)
.navigation(context);
}
}
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.alibaba.android.arouter.demo.testservice;
package com.alibaba.android.arouter.demo.service;

import com.alibaba.android.arouter.facade.template.IProvider;

/**
* TODO feature
* 通过 service module 提供给使用方依赖,使用方可以不依赖具体实现,只需要保证最终打包在 app 中即可
*
* @author Alex <a href="mailto:zhilong.lzl@alibaba-inc.com">Contact me.</a>
* @version 1.0
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo.testinject;
package com.alibaba.android.arouter.demo.service.model;

/**
* TODO:Feature
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo.testinject;
package com.alibaba.android.arouter.demo.service.model;

import android.os.Parcel;
import android.os.Parcelable;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo.testinject;
package com.alibaba.android.arouter.demo.service.model;

import java.io.Serializable;

Expand Down
8 changes: 6 additions & 2 deletions module-java/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,12 @@ apply plugin: 'com.android.library'
dependencies {
implementation project(':arouter-annotation')
implementation project(':arouter-api')
implementation "com.android.support:appcompat-v7:${SUPPORT_LIB_VERSION}"
annotationProcessor project(':arouter-compiler')

implementation project(':module-java-export')

implementation "com.android.support:appcompat-v7:${SUPPORT_LIB_VERSION}"
implementation 'com.alibaba:fastjson:1.2.48'
}
android {
compileSdkVersion Integer.parseInt(COMPILE_SDK_VERSION)
Expand All @@ -16,7 +20,7 @@ android {

javaCompileOptions {
annotationProcessorOptions {
arguments = [ AROUTER_MODULE_NAME : project.getName() ]
arguments = [AROUTER_MODULE_NAME: project.getName(), AROUTER_GENERATE_DOC: "enable"]
}
}
}
Expand Down
10 changes: 8 additions & 2 deletions module-java/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,14 @@
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<application>
<activity android:name=".TestModuleActivity"></activity>
<activity android:name=".TestModule2Activity"></activity>
<activity android:name="com.alibaba.android.arouter.demo.module1.TestModuleActivity" />
<activity android:name="com.alibaba.android.arouter.demo.module1.TestModule2Activity" />
<activity android:name="com.alibaba.android.arouter.demo.module1.TestWebview" />
<activity android:name="com.alibaba.android.arouter.demo.module1.testactivity.Test1Activity" />
<activity android:name="com.alibaba.android.arouter.demo.module1.testactivity.Test2Activity" />
<activity android:name="com.alibaba.android.arouter.demo.module1.testactivity.Test3Activity" />
<activity android:name="com.alibaba.android.arouter.demo.module1.testactivity.Test4Activity" />
<activity android:name="com.alibaba.android.arouter.demo.module1.testactivity.TestDynamicActivity" />
</application>

</manifest>
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo;
package com.alibaba.android.arouter.demo.module1;


import android.os.Bundle;
Expand All @@ -8,9 +8,9 @@
import android.view.ViewGroup;
import android.widget.TextView;

import com.alibaba.android.arouter.demo.testinject.TestObj;
import com.alibaba.android.arouter.demo.testinject.TestParcelable;
import com.alibaba.android.arouter.demo.testinject.TestSerializable;
import com.alibaba.android.arouter.demo.service.model.TestObj;
import com.alibaba.android.arouter.demo.service.model.TestParcelable;
import com.alibaba.android.arouter.demo.service.model.TestSerializable;
import com.alibaba.android.arouter.facade.annotation.Autowired;
import com.alibaba.android.arouter.facade.annotation.Route;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo;
package com.alibaba.android.arouter.demo.module1;

import android.os.Handler;
import android.os.Looper;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo;
package com.alibaba.android.arouter.demo.module1;

import android.app.Activity;
import android.os.Bundle;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo.testactivity;
package com.alibaba.android.arouter.demo.module1.testactivity;

import android.support.v7.app.AppCompatActivity;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
package com.alibaba.android.arouter.demo.testactivity;
package com.alibaba.android.arouter.demo.module1.testactivity;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;

import com.alibaba.android.arouter.demo.R;
import com.alibaba.android.arouter.demo.testinject.TestObj;
import com.alibaba.android.arouter.demo.testinject.TestParcelable;
import com.alibaba.android.arouter.demo.testinject.TestSerializable;
import com.alibaba.android.arouter.demo.testservice.HelloService;
import com.alibaba.android.arouter.demo.module1.R;
import com.alibaba.android.arouter.demo.service.HelloService;
import com.alibaba.android.arouter.demo.service.model.TestObj;
import com.alibaba.android.arouter.demo.service.model.TestParcelable;
import com.alibaba.android.arouter.demo.service.model.TestSerializable;
import com.alibaba.android.arouter.facade.annotation.Autowired;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.alibaba.android.arouter.demo.testactivity;
package com.alibaba.android.arouter.demo.module1.testactivity;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.widget.Toast;

import com.alibaba.android.arouter.demo.R;
import com.alibaba.android.arouter.demo.module1.R;
import com.alibaba.android.arouter.facade.annotation.Autowired;
import com.alibaba.android.arouter.facade.annotation.Route;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package com.alibaba.android.arouter.demo.testactivity;
package com.alibaba.android.arouter.demo.module1.testactivity;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;

import com.alibaba.android.arouter.demo.R;
import com.alibaba.android.arouter.demo.module1.R;
import com.alibaba.android.arouter.facade.annotation.Autowired;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.alibaba.android.arouter.demo.testactivity;
package com.alibaba.android.arouter.demo.module1.testactivity;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.widget.TextView;

import com.alibaba.android.arouter.demo.R;
import com.alibaba.android.arouter.demo.module1.R;
import com.alibaba.android.arouter.facade.annotation.Route;

@Route(path = "/test/activity4")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo.testactivity;
package com.alibaba.android.arouter.demo.module1.testactivity;

import android.os.Bundle;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package com.alibaba.android.arouter.demo.testinterceptor;
package com.alibaba.android.arouter.demo.module1.testinterceptor;

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.util.Log;

import com.alibaba.android.arouter.demo.MainActivity;
import com.alibaba.android.arouter.demo.MainLooper;
import com.alibaba.android.arouter.demo.testservice.HelloService;
import com.alibaba.android.arouter.demo.module1.MainLooper;
import com.alibaba.android.arouter.facade.Postcard;
import com.alibaba.android.arouter.facade.annotation.Interceptor;
import com.alibaba.android.arouter.facade.callback.InterceptorCallback;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
package com.alibaba.android.arouter.demo.testservice;
package com.alibaba.android.arouter.demo.module1.testservice;

import android.content.Context;
import android.util.Log;
import android.widget.Toast;

import com.alibaba.android.arouter.demo.service.HelloService;
import com.alibaba.android.arouter.facade.annotation.Route;

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo.testservice;
package com.alibaba.android.arouter.demo.module1.testservice;

import android.content.Context;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.alibaba.android.arouter.demo.testservice;
package com.alibaba.android.arouter.demo.module1.testservice;

import android.content.Context;
import android.widget.Toast;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.alibaba.android.arouter.demo.testactivity.Test1Activity">
tools:context=".module1.testactivity.Test1Activity">

<TextView
android:id="@+id/test"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.alibaba.android.arouter.demo.testactivity.Test2Activity">
tools:context=".module1.testactivity.Test2Activity">

<TextView
android:layout_width="wrap_content"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.alibaba.android.arouter.demo.testactivity.Test4Activity">
tools:context=".module1.testactivity.Test4Activity">

</RelativeLayout>
Loading

0 comments on commit 54dfcb0

Please sign in to comment.