Просмотр исходного кода

代理下面的细线,消息中心完成部分,

yuanshenglan лет назад: 7
Родитель
Сommit
adf4fec5d7

+ 17 - 15
app/build.gradle

@@ -1,5 +1,6 @@
 apply plugin: 'com.android.application'
 apply plugin: 'com.jakewharton.butterknife'
+//apply plugin: 'realm-android'//Realm数据库
 android {
     compileSdkVersion androidConfigs.compileSdkVersion
     buildToolsVersion androidConfigs.buildToolsVersion
@@ -59,17 +60,17 @@ android {
         }
     }
     productFlavors.all { flavor ->
-        flavor.manifestPlaceholders = [DUANDUAN_GRAPH     : "${flavor.name}",
-                                       DUANDUAN_DATASHARE : "${flavor.name}",
+        flavor.manifestPlaceholders = [DUANDUAN_GRAPH    : "${flavor.name}",
+                                       DUANDUAN_DATASHARE: "${flavor.name}",
         ]
     }
     productFlavors {
         developSheeptest {
             applicationId "com.sheep.jiuyan.samllsheep"
-            manifestPlaceholders = [DUANDUAN_GRAPH     : "sheeptest",
-                                    DUANDUAN_DATASHARE : "sheeptest",
-                                    jpush_appkey       : "4fea09bdbf9661a9689ee306",
-                                    umeng_app_key       : "5ab0a1da8f4a9d742900035f"
+            manifestPlaceholders = [DUANDUAN_GRAPH    : "sheeptest",
+                                    DUANDUAN_DATASHARE: "sheeptest",
+                                    jpush_appkey      : "4fea09bdbf9661a9689ee306",
+                                    umeng_app_key     : "5ab0a1da8f4a9d742900035f"
             ]
             buildConfigField "String", "DUANDUAN_DATASHARE", '"sheeptest"'
             buildConfigField "String", "DUANDUAN_GRAPH", '"sheeptest"'
@@ -80,10 +81,10 @@ android {
         }
         sheeptestjiguang {
             applicationId "com.sheep.jiuyan.samllsheep.test"
-            manifestPlaceholders = [DUANDUAN_GRAPH     : "sheeptestjiguang",
-                                    DUANDUAN_DATASHARE : "sheeptestjiguang",
-                                    jpush_appkey       : "4fea09bdbf9661a9689ee306",
-                                    umeng_app_key       : "5ab0a1da8f4a9d742900035f"
+            manifestPlaceholders = [DUANDUAN_GRAPH    : "sheeptestjiguang",
+                                    DUANDUAN_DATASHARE: "sheeptestjiguang",
+                                    jpush_appkey      : "4fea09bdbf9661a9689ee306",
+                                    umeng_app_key     : "5ab0a1da8f4a9d742900035f"
             ]
             buildConfigField "String", "DUANDUAN_DATASHARE", '"sheeptestjiguang"'
             buildConfigField "String", "DUANDUAN_GRAPH", '"sheeptestjiguang"'
@@ -94,10 +95,10 @@ android {
         }
         sheep {
             applicationId "com.sheep.jiuyan.samllsheep"
-            manifestPlaceholders = [DUANDUAN_GRAPH     : "sheep",
-                                    DUANDUAN_DATASHARE : "sheep",
-                                    jpush_appkey       : "28b74d520261c6f78e3e0921",
-                                    umeng_app_key       : "5ab0a1da8f4a9d742900035f"
+            manifestPlaceholders = [DUANDUAN_GRAPH    : "sheep",
+                                    DUANDUAN_DATASHARE: "sheep",
+                                    jpush_appkey      : "28b74d520261c6f78e3e0921",
+                                    umeng_app_key     : "5ab0a1da8f4a9d742900035f"
             ]
             buildConfigField "String", "DUANDUAN_DATASHARE", '"sheep"'
             buildConfigField "String", "DUANDUAN_GRAPH", '"sheep"'
@@ -262,6 +263,7 @@ dependencies {
 //    compile(name: 'compresshelper-release', ext: 'aar')
     compile files('libs/compresshelper-release.jar')
 }
+
 static def releaseTime() {
     return new Date().format("MMddHHmm", TimeZone.getDefault())
 }
@@ -270,7 +272,7 @@ android.applicationVariants.all {
     variant ->
         variant.outputs.each {
             output ->
-                if(buildType.name == "release") {
+                if (buildType.name == "release") {
                     output.outputFile = new File(output.outputFile.parent, productFlavors[0].name + "_" + buildType.name + "_v" + android.defaultConfig.versionName + "_" + android.defaultConfig.versionCode + "-${releaseTime()}.apk")
                 }
 

+ 2 - 0
app/src/main/AndroidManifest.xml

@@ -575,6 +575,8 @@
             android:screenOrientation="portrait"/>
         <activity android:name="com.sheep.gamegroup.view.activity.ActSetting"
             android:screenOrientation="portrait"/>
+        <activity android:name="com.sheep.gamegroup.view.activity.ActivityMessages"
+            android:screenOrientation="portrait"/>
 
         <!--start幂动科技-->
 

+ 7 - 2
app/src/main/java/com/kfzs/duanduan/fragment/FgtPersonalCenter.java

@@ -2,6 +2,7 @@ package com.kfzs.duanduan.fragment;
 
 import android.app.ActionBar;
 import android.app.Activity;
+import android.content.Intent;
 import android.graphics.Color;
 import android.graphics.drawable.BitmapDrawable;
 import android.os.Bundle;
@@ -35,6 +36,7 @@ import com.sheep.gamegroup.util.LogUtil;
 import com.sheep.gamegroup.util.SysAppUtil;
 import com.sheep.gamegroup.util.TestUtil;
 import com.sheep.gamegroup.util.ViewUtil;
+import com.sheep.gamegroup.view.activity.ActivityMessages;
 import com.sheep.gamegroup.view.activity.PersonalCenterAct;
 import com.sheep.gamegroup.view.dialog.DialogShare;
 import com.sheep.jiuyan.samllsheep.R;
@@ -227,7 +229,7 @@ public class FgtPersonalCenter extends BaseCompatFragment {
      * @param mActivity 当前Activity
      */
     public void showRedPackageAfterInvitation(final Activity mActivity, View viewAnchor, BaseMessage baseMessage) {
-        if(viewAnchor == null){
+        if (viewAnchor == null) {
             return;
         }
         View view = LayoutInflater.from(mActivity).inflate(R.layout.dialog_redpackage_after_invitation, null, false);
@@ -308,10 +310,13 @@ public class FgtPersonalCenter extends BaseCompatFragment {
             R.id.account_task_layout, R.id.proxy_service_layout, R.id.feedbook_layout,
             R.id.recommend_friend_layout, R.id.faq_layout, R.id.reservation_layout, R.id.version_layout,
             R.id.change_layout, R.id.order_layout, R.id.proxy_game_account_layout,
-            R.id.iv_redpackage
+            R.id.iv_redpackage, R.id.ibtn_baseactivity_message
     })
     public void onViewClicked(View view) {
         switch (view.getId()) {
+            case R.id.ibtn_baseactivity_message:
+              //  startActivity(new Intent(activity, ActivityMessages.class));
+                break;
             case R.id.iv_redpackage://邀请成功后有可领红包
                 ViewUtil.changeRedPackage(getActivity(), getView(), FgtPersonalCenter.this);
                 break;

+ 9 - 0
app/src/main/java/com/sheep/gamegroup/db/DBUtils.java

@@ -0,0 +1,9 @@
+package com.sheep.gamegroup.db;
+
+/**
+ * created on:2018/8/27 on 15:26
+ * created by: YSL
+ * 描述:
+ */
+public class DBUtils {
+}

+ 124 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/ActivityMessages.java

@@ -0,0 +1,124 @@
+package com.sheep.gamegroup.view.activity;
+
+import android.annotation.SuppressLint;
+import android.content.Context;
+import android.graphics.Color;
+import android.os.Bundle;
+import android.support.design.widget.TabLayout;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentPagerAdapter;
+import android.support.v4.view.ViewPager;
+import android.support.v7.app.AppCompatActivity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.sheep.gamegroup.view.fragment.FragmentMessageCenter;
+import com.sheep.jiuyan.samllsheep.R;
+
+
+/**
+ * created on:2018/8/28 on 11:44
+ * created by: YSL
+ * 描述:
+ */
+public class ActivityMessages extends AppCompatActivity {
+    public static final String[] mTabTitle = new String[]{"消息中心", "回复互动"};
+    public static final int[] mTabResDef = new int[]{R.drawable.shape_red_point_circle};
+    private TabLayout tabLayout=null;
+    private ViewPager viewPager=null;
+
+
+    @SuppressLint("WrongViewCast")
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_messages);
+        viewPager = findViewById(R.id.message_view_pager_grd);
+        tabLayout = findViewById(R.id.tab_layout);
+        tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
+            @Override
+            public void onTabSelected(TabLayout.Tab tab) {
+                for (int i = 0; i < tabLayout.getTabCount(); i++) {
+                    View tabView = tabLayout.getTabAt(i).getCustomView();
+                    if (tabView == null) {
+                        tabView = getCustomView(i);
+                        tabLayout.getTabAt(i).setCustomView(tabView);
+                    }
+                    TextView tabTitle1 = tabView.findViewById(R.id.tv_message_left);
+                    TextView tabTitle2 = tabView.findViewById(R.id.tv_message_right);
+                    if (i == tab.getPosition()) {//选中
+                        tabTitle1.setTextSize(18);
+                        tabTitle2.setTextSize(10);
+                    } else {
+                        tabTitle1.setTextSize(10);
+                        tabTitle2.setTextSize(18);
+                    }
+                }
+            }
+
+            @Override
+            public void onTabUnselected(TabLayout.Tab tab) {
+
+            }
+
+            @Override
+            public void onTabReselected(TabLayout.Tab tab) {
+
+            }
+        });
+        viewPager.setAdapter(new MyAdapter(getSupportFragmentManager(), this));
+        tabLayout.setupWithViewPager(viewPager);
+    }
+
+    private View getCustomView(int position) {
+        View view = LayoutInflater.from(this).inflate(R.layout.layout_fragment_mseeages, null, false);
+        ImageView tabIcon1 = view.findViewById(R.id.iv_message_left);
+        ImageView tabIcon2 = view.findViewById(R.id.iv_message_right);
+        TextView tabTitle1 = view.findViewById(R.id.tv_message_left);
+        TextView tabTitle2 = view.findViewById(R.id.tv_message_right);
+        if (position == 0) {
+            tabTitle1.setTextSize(18);
+            tabTitle2.setTextSize(10);
+        } else if (position == 1) {
+            tabTitle1.setTextSize(10);
+            tabTitle2.setTextSize(18);
+        }
+        return view;
+    }
+}
+
+
+class MyAdapter extends FragmentPagerAdapter {
+    private Fragment fragmentLeft, fragmentRight;
+    private Context context;
+
+    public MyAdapter(FragmentManager fm, Context context) {
+        super(fm);
+        this.context = context;
+    }
+
+    @Override
+    public Fragment getItem(int position) {
+        if (position == 0) {
+            if (fragmentLeft != null) {
+                return new FragmentMessageCenter(context);
+            } else {
+                return fragmentLeft;
+            }
+        } else {
+            if (fragmentRight != null) {
+                return new FragmentMessageCenter(context);
+            } else {
+                return fragmentRight;
+            }
+        }
+    }
+
+    @Override
+    public int getCount() {
+        return 2;
+    }
+}

+ 39 - 0
app/src/main/java/com/sheep/gamegroup/view/fragment/FragmentMessageCenter.java

@@ -0,0 +1,39 @@
+package com.sheep.gamegroup.view.fragment;
+
+import android.annotation.SuppressLint;
+import android.content.Context;
+import android.os.Bundle;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import com.sheep.jiuyan.samllsheep.R;
+
+/**
+ * created on:2018/8/28 on 12:32
+ * created by: YSL
+ * 描述:
+ */
+@SuppressLint("ValidFragment")
+public class FragmentMessageCenter extends Fragment{
+    private Context mContext;
+
+    public FragmentMessageCenter(Context mContext) {
+        this.mContext = mContext;
+    }
+
+    @Nullable
+    @Override
+    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+        View view=LayoutInflater.from(mContext).inflate(R.layout.layout_fragment_mseeages,null);
+        return view;
+    }
+
+    @Override
+    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
+        super.onViewCreated(view, savedInstanceState);
+    }
+}

+ 20 - 4
app/src/main/java/com/sheep/jiuyan/samllsheep/BaseApplication.java

@@ -20,6 +20,8 @@ import cn.jpush.android.api.JPushInterface;
  */
 
 public abstract class BaseApplication extends KFZSApp {
+    private final String DB_NAME = "xiaomianyang.realm";
+
     @Override
     public void onCreate() {
         super.onCreate();
@@ -37,8 +39,20 @@ public abstract class BaseApplication extends KFZSApp {
         JPushInterface.init(this);
 
         initBdLocationOpstion();
+       // initRealm();
+    }
+
+    /**
+     * 构建Realm
+     */
+  /*  private void initRealm() {
+        RealmConfiguration config = new RealmConfiguration.Builder()
+                .name(DB_NAME) //数据库名
+                .schemaVersion(0) //版本号,初次创建设为0,后面表结构变化时,版本号向上叠加
+                .build();
     }
-    private void initBdLocationOpstion(){
+*/
+    private void initBdLocationOpstion() {
         mLocationClient = new LocationClient(getApplicationContext());
         //声明LocationClient类
         mLocationClient.registerLocationListener(myListener);
@@ -78,7 +92,7 @@ public abstract class BaseApplication extends KFZSApp {
         option.SetIgnoreCacheException(true);
 //可选,设置是否收集Crash信息,默认收集,即参数为false
 
-        option.setWifiCacheTimeOut(5*60*1000);
+        option.setWifiCacheTimeOut(5 * 60 * 1000);
 //可选,7.2版本新增能力
 //如果设置了该接口,首次启动定位时,会先判断当前WiFi是否超出有效期,若超出有效期,会先重新扫描WiFi,然后定位
 
@@ -99,15 +113,16 @@ public abstract class BaseApplication extends KFZSApp {
 
     public LocationClient mLocationClient = null;
     private SheepLocationListener myListener = new SheepLocationListener();
+
     //BDAbstractLocationListener为7.2版本新增的Abstract类型的监听接口
     //原有BDLocationListener接口暂时同步保留。具体介绍请参考后文中的说明
     public class SheepLocationListener extends BDAbstractLocationListener {
         @Override
-        public void onReceiveLocation(BDLocation location){
+        public void onReceiveLocation(BDLocation location) {
             //此处的BDLocation为定位结果信息类,通过它的各种get方法可获取定位相关的全部结果
             //以下只列举部分获取地址相关的结果信息
             //更多结果信息获取说明,请参照类参考中BDLocation类中的说明
-            if(location == null)
+            if (location == null)
                 return;
             curLocation = location;
             //获取经纬度
@@ -130,6 +145,7 @@ public abstract class BaseApplication extends KFZSApp {
 //            String street = location.getStreet();    //获取街道信息
         }
     }
+
     private BDLocation curLocation;
 
     public BDLocation getCurLocation() {

+ 9 - 0
app/src/main/res/drawable/shape_red_point_circle.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+    <size
+        android:width="20dp"
+        android:height="20dp" />
+    <solid android:color="@color/red" />
+    <corners android:radius="20dp" />
+</shape>

+ 55 - 0
app/src/main/res/layout/activity_messages.xml

@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/white_F9F9F9"
+    android:orientation="vertical">
+
+    <RelativeLayout
+        android:id="@+id/layout_title"
+        android:layout_width="match_parent"
+        android:layout_height="?attr/actionBarSize">
+
+        <ImageView
+            android:id="@+id/iv_back"
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:layout_alignParentStart="true"
+            android:layout_centerVertical="true"
+            android:gravity="center_vertical"
+            android:minWidth="?attr/actionBarSize"
+            android:scaleType="centerInside"
+            android:src="@drawable/narrow_back_black" />
+
+        <ImageView
+            android:id="@+id/iv_right"
+            android:layout_width="60dp"
+            android:layout_height="match_parent"
+            android:layout_alignParentEnd="true"
+            android:layout_centerVertical="true"
+            android:gravity="center_vertical"
+            android:minWidth="?attr/actionBarSize"
+            android:scaleType="centerInside"
+            android:src="@drawable/narrow_back_black"
+            android:visibility="invisible" />
+
+        <android.support.design.widget.TabLayout
+            android:id="@+id/tab_layout"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:layout_toLeftOf="@id/iv_right"
+            android:layout_toRightOf="@+id/iv_back" />
+
+
+    </RelativeLayout>
+
+    <View
+        android:layout_width="match_parent"
+        android:layout_height="2px"
+        android:background="@color/gray_5" />
+
+    <android.support.v4.view.ViewPager
+        android:id="@+id/message_view_pager_grd"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent" />
+</LinearLayout>

+ 14 - 2
app/src/main/res/layout/fgt_personacenter_item_top.xml

@@ -37,18 +37,30 @@
                 android:textSize="18sp"
                 android:visibility="gone" />
 
-            <!--右边图片按钮-->
+            <!--右边消息图标按钮-->
             <ImageButton
-                android:id="@+id/ibtn_baseactivity_right"
+                android:id="@+id/ibtn_baseactivity_message"
                 android:layout_width="?attr/actionBarSize"
                 android:layout_height="wrap_content"
                 android:layout_alignParentBottom="true"
                 android:layout_alignParentRight="true"
                 android:background="@color/translate"
                 android:gravity="center"
+                android:src="@mipmap/add_black_img" />
+            <!--右边设置图标按钮-->
+            <ImageButton
+                android:id="@+id/ibtn_baseactivity_right"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_alignParentBottom="true"
+               android:layout_toLeftOf="@id/ibtn_baseactivity_message"
+                android:background="@color/translate"
+                android:gravity="center"
                 android:src="@mipmap/setting" />
 
 
+
+
             <include
                 layout="@layout/title_bottom_line"
                 android:layout_width="match_parent"

+ 3 - 8
app/src/main/res/layout/fgt_personalcenter_item_center_one.xml

@@ -63,18 +63,16 @@
 
     </LinearLayout>
 
-    <View style="@style/style_item_line_new"
-        android:visibility="gone"/>
 
     <View
         android:id="@+id/proxy_service_layout_line"
-        style="@style/style_item_line"
+        style="@style/style_item_line_new"
         android:visibility="gone" />
 
     <LinearLayout
         android:id="@+id/proxy_service_layout"
         style="@style/style_item_container"
-        android:visibility="gone">
+        android:visibility="visible">
 
         <ImageView
             style="@style/style_item_img"
@@ -88,10 +86,7 @@
 
     </LinearLayout>
 
-    <View
-        android:id="@+id/proxy_game_account_layout_line"
-        style="@style/style_item_line"
-        android:visibility="gone"/>
+    <View style="@style/style_item_line_new" />
 
     <LinearLayout
         android:id="@+id/proxy_game_account_layout"

+ 48 - 0
app/src/main/res/layout/layout_fragment_mseeages.xml

@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="60dp"
+    android:orientation="horizontal">
+
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="1"
+        android:orientation="horizontal">
+
+        <TextView
+            android:id="@+id/tv_message_left"
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:gravity="center_vertical"
+            android:text="消息中心" />
+
+        <ImageView
+            android:id="@+id/iv_message_left"
+            android:layout_width="10dp"
+            android:layout_height="10dp"
+            android:layout_marginTop="20dp"
+            android:background="@drawable/shape_litter_red_circle" />
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="1"
+        android:orientation="horizontal">
+
+        <TextView
+            android:id="@+id/tv_message_right"
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:gravity="center_vertical"
+            android:text="消息互动" />
+
+        <ImageView
+            android:id="@+id/iv_message_right"
+            android:layout_width="10dp"
+            android:layout_height="10dp"
+            android:layout_marginTop="20dp"
+            android:background="@drawable/shape_litter_red_circle" />
+    </LinearLayout>
+</LinearLayout>

BIN
app/src/main/res/mipmap-xhdpi/giftest.gif


+ 30 - 24
build.gradle

@@ -15,6 +15,8 @@ buildscript {
         classpath 'org.greenrobot:greendao-gradle-plugin:3.1.0'
         //aria使用本地library时添加的
         classpath 'com.novoda:bintray-release:0.5.0'
+        //Realm数据库
+       // classpath "io.realm:realm-gradle-plugin:3.7.0"
 //        classpath 'com.didi.virtualapk:gradle:0.9.1'
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files
@@ -22,13 +24,17 @@ buildscript {
     }
 }
 
+
 def isReleaseBuild() {
     return version.contains("SNAPSHOT") == false
 }
+
 allprojects {
     repositories {
-        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
-        maven { url 'https://raw.githubusercontent.com/MDL-Sinlov/MDL-Android-Repo/master/mvn-repo/' }
+        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
+        maven {
+            url 'https://raw.githubusercontent.com/MDL-Sinlov/MDL-Android-Repo/master/mvn-repo/'
+        }
         maven { url "https://github.com/KuaiFaMaster/kfsdk/raw/master" }
         jcenter()
         maven { url "https://jitpack.io" }
@@ -41,56 +47,56 @@ task clean(type: Delete) {
 }
 
 
-ext{
+ext {
 
     android = [
-            compileSdkVersion:27,
-            minSdkVersion:15,
-            targetSdkVersion:27,
-            buildToolsVersion:'27.0.2',
+            compileSdkVersion: 27,
+            minSdkVersion    : 15,
+            targetSdkVersion : 27,
+            buildToolsVersion: '27.0.2',
             /**
              * app-module
              */
-            versionCode_app:1,
-            versionName_app:"1.0",
+            versionCode_app  : 1,
+            versionName_app  : "1.0",
 
     ]
 
     dependencies = [
-            support_appcompat_v7:'com.android.support:appcompat-v7:27.0.2',
-            support_constraint_layout:'com.android.support.constraint:constraint-layout:1.0.2',
-            recyclerview:'com.android.support:recyclerview-v7:27.0.2',
+            support_appcompat_v7       : 'com.android.support:appcompat-v7:27.0.2',
+            support_constraint_layout  : 'com.android.support.constraint:constraint-layout:1.0.2',
+            recyclerview               : 'com.android.support:recyclerview-v7:27.0.2',
             /**
              * butterknife注解
              */
-            butterknife:'com.jakewharton:butterknife:8.6.0',
-            butterknife_compiler:'com.jakewharton:butterknife-compiler:8.6.0',
+            butterknife                : 'com.jakewharton:butterknife:8.6.0',
+            butterknife_compiler       : 'com.jakewharton:butterknife-compiler:8.6.0',
             /**
              * rxjava
              */
-            rxbinding:'com.jakewharton.rxbinding:rxbinding:1.0.0',
-            rxjava:'io.reactivex:rxjava:1.2.4',
+            rxbinding                  : 'com.jakewharton.rxbinding:rxbinding:1.0.0',
+            rxjava                     : 'io.reactivex:rxjava:1.2.4',
             /**
              * rxandroid
              */
-            rxandroid: 'io.reactivex:rxandroid:1.2.1',
+            rxandroid                  : 'io.reactivex:rxandroid:1.2.1',
             /**
              * retrofit
              */
-            retrofit2: 'com.squareup.retrofit2:retrofit:2.4.0',
-            retrofit2_converter_gson: 'com.squareup.retrofit2:converter-gson:2.4.0',
+            retrofit2                  : 'com.squareup.retrofit2:retrofit:2.4.0',
+            retrofit2_converter_gson   : 'com.squareup.retrofit2:converter-gson:2.4.0',
             okhttp3_logging_interceptor: 'com.squareup.okhttp3:logging-interceptor:3.10.0',
-            retrofit2_adapter_rxjava: 'com.squareup.retrofit2:adapter-rxjava:2.1.0',
+            retrofit2_adapter_rxjava   : 'com.squareup.retrofit2:adapter-rxjava:2.1.0',
             /**
              * GSON
              */
-            gson:'com.google.code.gson:gson:2.8.2',
+            gson                       : 'com.google.code.gson:gson:2.8.2',
             /**
              * Dagger
              */
-            javax_annotation:'org.glassfish:javax.annotation:10.0-b28',
-            dagger:'com.google.dagger:dagger:2.12',
-            dagger_compiler:'com.google.dagger:dagger-compiler:2.12'
+            javax_annotation           : 'org.glassfish:javax.annotation:10.0-b28',
+            dagger                     : 'com.google.dagger:dagger:2.12',
+            dagger_compiler            : 'com.google.dagger:dagger-compiler:2.12'
     ]