Explorar el Código

QQ 登录 微信登录 搞定

xiongxiaohe hace 8 años
padre
commit
865fed588d

+ 74 - 0
app/build.gradle

@@ -53,6 +53,80 @@ android {
         preDexLibraries  false
         javaMaxHeapSize "4g"
     }
+
+
+    dexOptions {
+        preDexLibraries = false
+        javaMaxHeapSize "4g"
+    }
+    packagingOptions {
+
+        exclude 'META-INF/services/com.fasterxml.jackson.core.JsonFactory'
+    }
+    buildTypes {
+        release {
+            minifyEnabled false
+            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+            signingConfig signingConfigs.config
+        }
+        debug {
+            signingConfig signingConfigs.config
+        }
+    }
+    productFlavors.all { flavor ->
+        flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: "${flavor.name}",
+                                       DUANDUAN_GRAPH     : "${flavor.name}",
+                                       DUANDUAN_DATASHARE : "${flavor.name}",
+        ]
+    }
+    productFlavors {
+        bandaimitest {
+            applicationId "com.sheep.jiuyan.samllsheep"
+            manifestPlaceholders = [UMENG_CHANNEL_VALUE   : "bandaimitest",
+                                    DUANDUAN_GRAPH        : "bandaimitest",
+                                    DUANDUAN_DATASHARE    : "bandaimitest",
+                                    UMENG_APPKEY          : "58edcfeb310c93091c000be2",
+                                    JPUSH_PKGNAME : applicationId,
+                                    JPUSH_APPKEY : "b8b5adf7d70d0c904d46d04c",
+                                    JPUSH_CHANNEL : "developer-default"]
+            buildConfigField "String", "DUANDUAN_DATASHARE", '"bandaimitest"'
+            buildConfigField "String", "DUANDUAN_GRAPH", '"bandaimitest"'
+            buildConfigField "boolean", "KF_DEBUG", 'true'
+//            buildConfigField "String", "API_DOMAIN", '"10.8.210.229:8081"'
+//            buildConfigField "String", "RN_DOMAIN", '"10.8.210.229:8070"'
+            buildConfigField "String", "API_DOMAIN", '"test.bdmapp.kfzs.com"'
+//            buildConfigField "String", "API_DOMAIN", '"10.8.210.229:8081"'
+            buildConfigField "String", "JFSC_DOMAIN", '"http://10.8.210.190:8080/"'//积分商城
+            buildConfigField "String", "CAPTCHA_DOMAIN", '"captcha.kuaifazs.com"'
+            buildConfigField "String", "umeng_appkey", '"58dc9509aed17959a3001bff"'
+            signingConfig signingConfigs.config
+        }
+        bandaimi {
+            applicationId "com.sheep.jiuyan.samllsheep"
+//            applicationId "com.kfzs.duanduan.bandaimi"
+            manifestPlaceholders = [UMENG_CHANNEL_VALUE   : "bandaimi",
+                                    DUANDUAN_GRAPH        : "bandaimi",
+                                    DUANDUAN_DATASHARE    : "bandaimi",
+                                    UMENG_APPKEY          : "58edcfeb310c93091c000be2",
+                                    JPUSH_PKGNAME : applicationId,
+                                    JPUSH_APPKEY : "b8b5adf7d70d0c904d46d04c",
+                                    JPUSH_CHANNEL : "developer-default"]
+            buildConfigField "String", "DUANDUAN_DATASHARE", '"bandaimi"'
+            buildConfigField "String", "DUANDUAN_GRAPH", '"bandaimi"'
+            buildConfigField "boolean", "KF_DEBUG", 'false'
+            buildConfigField "String", "API_DOMAIN", '"app.bandai.yunduanzs.cn"'
+            buildConfigField "String", "JFSC_DOMAIN", '"http://jf.bandaimi.com/"'//积分商城
+//            buildConfigField "String", "API_DOMAIN", '"app.bdmoem.kfzs.com"'
+//            buildConfigField "String", "JFSC_DOMAIN", '"http://jf.bdmoem.kfzs.com/"'//积分商城
+            buildConfigField "String", "CAPTCHA_DOMAIN", '"captcha.kuaifazs.com"'
+            buildConfigField "String", "umeng_appkey", '"58dc9509aed17959a3001bff"'
+            signingConfig signingConfigs.config
+        }
+    }
+
+
+
+
 }
 
 repositories {

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

@@ -22,6 +22,7 @@
 
 
     <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
 
     <!--必须的权限配置-->
     <uses-permission android:name="android.permission.READ_PHONE_STATE" />

+ 15 - 0
app/src/main/java/com/sheep/gamegroup/di/components/AskGetMoneyComponet.java

@@ -0,0 +1,15 @@
+package com.sheep.gamegroup.di.components;
+
+import com.sheep.gamegroup.di.modules.AskGetMoneyModule;
+import com.sheep.gamegroup.di.modules.LoginModule;
+import com.sheep.gamegroup.di.scopes.UserScope;
+
+import dagger.Component;
+
+/**
+ * Created by Administrator on 2018/3/23.
+ */
+@UserScope
+@Component(modules = AskGetMoneyModule.class, dependencies = NetComponent.class)
+public interface AskGetMoneyComponet {
+}

+ 23 - 0
app/src/main/java/com/sheep/gamegroup/di/modules/AskGetMoneyModule.java

@@ -0,0 +1,23 @@
+package com.sheep.gamegroup.di.modules;
+
+import com.sheep.gamegroup.presenter.AskGetMoneyContract;
+import com.sheep.gamegroup.presenter.LoginContract;
+
+import dagger.Module;
+import dagger.Provides;
+
+/**
+ * Created by Administrator on 2018/3/10.
+ */
+@Module
+public class AskGetMoneyModule {
+    private AskGetMoneyContract.View view;
+
+    public AskGetMoneyModule(AskGetMoneyContract.View view) {
+        this.view = view;
+    }
+    @Provides
+    public AskGetMoneyContract.View provideView(){
+        return view;
+    }
+}

+ 2 - 2
app/src/main/java/com/sheep/gamegroup/model/api/ApiService.java

@@ -113,7 +113,7 @@ public interface ApiService {
      * 获取正在运行的任务
      * @param jsonObject
      */
-    @GET(V1+"/app/auth/login_by_we_chat")
+    @POST(V1+"/app/auth/login_by_we_chat")
     Observable<BaseMessage> LoginByWX(@Body com.alibaba.fastjson.JSONObject jsonObject);
 
 
@@ -122,7 +122,7 @@ public interface ApiService {
      * 获取正在运行的任务
      * @param jsonObject
      */
-    @GET(V1+"/app/auth/login_by_qq")
+    @POST(V1+"/app/auth/login_by_qq")
     Observable<BaseMessage> LoginByQQ(@Body com.alibaba.fastjson.JSONObject jsonObject);
 
 

+ 0 - 1
app/src/main/java/com/sheep/gamegroup/presenter/AskGetMoneyPresenter.java

@@ -39,7 +39,6 @@ public class AskGetMoneyPresenter implements AskGetMoneyContract.Presenter {
                     @Override
                     public void onCompleted() {
                         Log.e("onCompleted--------","onCompleted");
-
                     }
 
                     @Override

+ 37 - 3
app/src/main/java/com/sheep/gamegroup/presenter/LoginPresenter.java

@@ -1,10 +1,21 @@
 package com.sheep.gamegroup.presenter;
 
+import android.util.Log;
 import android.widget.Toast;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.sheep.gamegroup.SheepApp;
+import com.sheep.gamegroup.exception.ExceptionEngine;
 import com.sheep.gamegroup.model.api.ApiService;
 import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.LoginEntity;
+import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.gamegroup.util.FastJsonUtils;
+import com.sheep.gamegroup.util.MyDbManager;
+import com.sheep.gamegroup.util.SpUtils;
+
+import org.xutils.ex.DbException;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -50,7 +61,21 @@ public class LoginPresenter implements LoginContract.Presenter {
 
                         @Override
                         public void onNext(BaseMessage baseMessage) {
-                            view.NetSuccess(1,baseMessage.getMsg());
+
+                            if(baseMessage!=null){
+
+
+                                LoginEntity loginEty =FastJsonUtils.toBean( JSONObject.toJSONString(baseMessage.getData()),LoginEntity.class);
+                                SpUtils.login(SheepApp.mContext, loginEty.getToken());
+                                try {
+                                    MyDbManager.getInstance().saveOrUpdateUser(loginEty.getUser());
+                                } catch (DbException e) {
+                                    e.printStackTrace();
+                                }
+                            }
+
+                            view.NetSuccess(1,"登录成功");
+
 
                         }
                     });
@@ -65,12 +90,21 @@ public class LoginPresenter implements LoginContract.Presenter {
 
                         @Override
                         public void onError(Throwable throwable) {
-                            view.NetError(-1,throwable.getMessage().toString());
+                            view.NetError(-1, ExceptionEngine.handleException(throwable).getMessage());
                         }
 
                         @Override
                         public void onNext(BaseMessage baseMessage) {
-                            view.NetSuccess(1,baseMessage.getMsg());
+                            if(baseMessage!=null){
+                                LoginEntity loginEty =FastJsonUtils.toBean( JSONObject.toJSONString(baseMessage.getData()),LoginEntity.class);
+                                SpUtils.login(SheepApp.mContext, loginEty.getToken());
+                                try {
+                                    MyDbManager.getInstance().saveOrUpdateUser(loginEty.getUser());
+                                } catch (DbException e) {
+                                    e.printStackTrace();
+                                }
+                            }
+                            view.NetSuccess(1,"登录成功");
 
                         }
                     });

+ 13 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/AskGetMoneyAct.java

@@ -5,7 +5,15 @@ import android.view.View;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
 
+import com.sheep.gamegroup.SheepApp;
 import com.sheep.gamegroup.absBase.BaseActivity;
+import com.sheep.gamegroup.absBase.BaseUMActivity;
+import com.sheep.gamegroup.di.components.DaggerAskGetMoneyComponet;
+import com.sheep.gamegroup.di.components.DaggerLoginComponent;
+import com.sheep.gamegroup.di.components.DaggerPhoneComponent;
+import com.sheep.gamegroup.di.modules.AskGetMoneyModule;
+import com.sheep.gamegroup.di.modules.LoginModule;
+import com.sheep.gamegroup.di.modules.PhoneModule;
 import com.sheep.gamegroup.presenter.AskGetMoneyContract;
 import com.sheep.gamegroup.presenter.AskGetMoneyPresenter;
 import com.sheep.jiuyan.samllsheep.R;
@@ -23,7 +31,7 @@ import butterknife.OnClick;
  * Created by Administrator on 2018/3/19.
  */
 
-public class AskGetMoneyAct extends BaseActivity implements UMShareListener ,AskGetMoneyContract.View {
+public class AskGetMoneyAct extends BaseUMActivity implements UMShareListener ,AskGetMoneyContract.View {
 
     @BindView(R.id.tv_size)
     TextView tvSize;
@@ -55,6 +63,10 @@ public class AskGetMoneyAct extends BaseActivity implements UMShareListener ,Ask
 
     @Override
     public void initView() {
+        DaggerAskGetMoneyComponet.builder()
+                .netComponent(SheepApp.get(this).getNetComponent())
+                .askGetMoneyModule(new AskGetMoneyModule(this))
+                .build();
 
     }
 

+ 8 - 11
app/src/main/java/com/sheep/gamegroup/view/activity/LoginAct.java

@@ -114,7 +114,7 @@ public class LoginAct extends BaseUMActivity implements LoginContract.View {
             @Override
             public void onCancel(SHARE_MEDIA platform, int action) {
 
-
+                showToast("微信授权失败");
             }
         });
 
@@ -154,24 +154,21 @@ public class LoginAct extends BaseUMActivity implements LoginContract.View {
     @Override
     public void NetSuccess(int code, String msg) {
         showToast(msg);
+        hideProgress();
+        Jump2View.getInstance().goHomePageView(this, null);
+        finish();
+
     }
 
     @Override
     public void NetError(int code, String errorMsg) {
         showToast(errorMsg);
-
+        hideProgress();
 
     }
 
 
 
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        // TODO: add setContentView(...) invocation
-        ButterKnife.bind(this);
-    }
-
     @OnClick({R.id.tel_login_tv, R.id.iv_wx, R.id.iv_qq})
     public void onViewClicked(View view) {
         switch (view.getId()) {
@@ -179,8 +176,8 @@ public class LoginAct extends BaseUMActivity implements LoginContract.View {
                 goTelLogin();
                 break;
             case R.id.iv_wx:
-                Jump2View.getInstance().goHomePageView(this,null);
-//                goWeixin();
+//                Jump2View.getInstance().goHomePageView(this,null);
+                goWeixin();
                 break;
             case R.id.iv_qq:
                 loginQQ();

+ 3 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/PhoneAct.java

@@ -23,6 +23,7 @@ import com.sheep.gamegroup.presenter.PersonalCenterPresenter;
 import com.sheep.gamegroup.presenter.PhoneContract;
 import com.sheep.gamegroup.presenter.PhonePresenter;
 import com.sheep.gamegroup.util.ActivityManager;
+import com.sheep.gamegroup.util.FastJsonUtils;
 import com.sheep.gamegroup.util.Jump2View;
 import com.sheep.gamegroup.util.MyDbManager;
 import com.sheep.gamegroup.util.SelfCountDownTimer;
@@ -203,7 +204,8 @@ public class PhoneAct extends BaseActivity implements PhoneContract.View {
         BaseMessage baseMessage = (BaseMessage) o;
 //        JSONObject a = JSON.parseObject(o.toString());
         Log.e("------data",baseMessage.getData()+"");
-        LoginEntity loginEty = JSON.parseObject(baseMessage.getData().toString(), LoginEntity.class);
+
+        LoginEntity loginEty = FastJsonUtils.toBean( JSONObject.toJSONString(baseMessage.getData()),LoginEntity.class);
         SpUtils.login(activity, loginEty.getToken());
         try {
             MyDbManager.getInstance().saveOrUpdateUser(loginEty.getUser());