Explorar el Código

1:替换阿里ARouter,修改全局Gradle脚本,以及路由跳转;

guiying712 hace 8 años
padre
commit
6c15fc6037

+ 2 - 2
module_app/build.gradle

@@ -22,7 +22,7 @@ android {
         targetSdkVersion rootProject.ext.targetSdkVersion
         versionCode rootProject.ext.versionCode
         versionName rootProject.ext.versionName
-        multiDexEnabled false
+        multiDexEnabled true
         //打包时间
         resValue "string", "build_time", buildTime()
     }
@@ -61,7 +61,7 @@ android {
 
 dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
-    annotationProcessor "com.github.mzule.activityrouter:compiler:$rootProject.annotationProcessor"
+    compile 'com.android.support:multidex:1.0.1'
     if (isModule.toBoolean()) {
         compile project(':lib_common')
     } else {

+ 0 - 13
module_app/src/main/AndroidManifest.xml

@@ -10,19 +10,6 @@
         android:supportsRtl="true"
         android:theme="@style/AppTheme">
 
-        <!--声明整个应用程序的路由协议-->
-        <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>
         <!--发送崩溃日志界面-->
         <activity
             android:name="org.acra.CrashReportDialog"

+ 17 - 9
module_app/src/main/java/com/guiying/androidmodulepattern/MyApplication.java

@@ -1,9 +1,11 @@
 package com.guiying.androidmodulepattern;
 
 import android.content.Context;
+import android.support.multidex.MultiDex;
 
-import com.github.mzule.activityrouter.annotation.Modules;
+import com.alibaba.android.arouter.launcher.ARouter;
 import com.guiying.common.base.BaseApplication;
+import com.guiying.common.utils.Utils;
 
 import org.acra.ACRA;
 import org.acra.ReportField;
@@ -15,7 +17,7 @@ import org.acra.sender.ReportSender;
 import org.acra.sender.ReportSenderException;
 
 /**
- * <p>这里是整个组件化项目管理各个组件的地方,所有需要使用的组件必须在此声明</p>
+ * <p>这里仅需做一些初始化的工作</p>
  *
  * @author 张华洋 2017/2/15 20:14
  * @version V1.2.0
@@ -36,25 +38,31 @@ import org.acra.sender.ReportSenderException;
         resToastText = R.string.crash_toast_text,
         resDialogText = R.string.crash_dialog_text,
         resDialogTitle = R.string.crash_dialog_title)
-@Modules({"main", "girls", "news"})
 public class MyApplication extends BaseApplication {
 
 
     @Override
     public void onCreate() {
         super.onCreate();
+        if (Utils.isAppDebug()) {
+            //开启InstantRun之后,一定要在ARouter.init之前调用openDebug
+            ARouter.openDebug();
+            ARouter.openLog();
+        }
+        ARouter.init(this);
         //崩溃日志记录初始化
         ACRA.init(this);
         ACRA.getErrorReporter().removeAllReportSenders();
         ACRA.getErrorReporter().setReportSender(new CrashReportSender());
     }
 
-//    @Override
-//    protected void attachBaseContext(Context base) {
-//        super.attachBaseContext(base);
-//        // dex突破65535的限制
-//        MultiDex.install(this);
-//    }
+
+    @Override
+    protected void attachBaseContext(Context base) {
+        super.attachBaseContext(base);
+        // dex突破65535的限制
+        MultiDex.install(this);
+    }
 
 
     /**

+ 8 - 6
module_girls/build.gradle

@@ -13,8 +13,14 @@ android {
         targetSdkVersion rootProject.ext.targetSdkVersion
         versionCode rootProject.ext.versionCode
         versionName rootProject.ext.versionName
-    }
 
+        //ARouter
+        javaCompileOptions {
+            annotationProcessorOptions {
+                arguments = [moduleName: project.getName()]
+            }
+        }
+    }
 
     sourceSets {
         main {
@@ -29,15 +35,11 @@ android {
             }
         }
     }
-    //设置了resourcePrefix值后,所有的资源名必须以指定的字符串做前缀,否则会报错。
-    //但是resourcePrefix这个值只能限定xml里面的资源,并不能限定图片资源,所有图片资源仍然需要手动去修改资源名。
-    //resourcePrefix "girls_"
-
 
 }
 
 dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
-    annotationProcessor "com.github.mzule.activityrouter:compiler:$rootProject.annotationProcessor"
+    annotationProcessor "com.alibaba:arouter-compiler:$rootProject.annotationProcessor"
     compile project(':lib_common')
 }

+ 0 - 14
module_girls/src/main/java/com/guiying/girls/Girls.java

@@ -1,14 +0,0 @@
-package com.guiying.girls;
-
-import com.github.mzule.activityrouter.annotation.Module;
-
-/**
- * <p>类说明</p>
- *
- * @author 张华洋 2017/2/15 16:34
- * @version V1.2.0
- * @name Girls
- */
-@Module("girls")
-public class Girls {
-}

+ 2 - 0
module_girls/src/main/java/com/guiying/girls/girl/GirlActivity.java

@@ -4,6 +4,7 @@ import android.os.Bundle;
 import android.support.v4.view.ViewPager;
 import android.view.WindowManager;
 
+import com.alibaba.android.arouter.facade.annotation.Route;
 import com.guiying.common.HackyViewPager;
 import com.guiying.common.base.BaseActivity;
 import com.guiying.girls.Constants;
@@ -18,6 +19,7 @@ import java.util.List;
  * @version V1.1
  * @name GirlActivity
  */
+@Route(path = "/girls/detail")
 public class GirlActivity extends BaseActivity {
 
     @Override

+ 2 - 2
module_girls/src/main/java/com/guiying/girls/main/GirlsActivity.java

@@ -2,11 +2,11 @@ package com.guiying.girls.main;
 
 import android.os.Bundle;
 
-import com.github.mzule.activityrouter.annotation.Router;
+import com.alibaba.android.arouter.facade.annotation.Route;
 import com.guiying.common.base.BaseActionBarActivity;
 import com.guiying.girls.R;
 
-@Router("girls")
+@Route(path = "/girls/list")
 public class GirlsActivity extends BaseActionBarActivity {
 
     private GirlsView mView;