Browse Source

修复bug

Pq 3 years ago
parent
commit
2bac5b5b26

+ 3 - 0
BaseLibrary/src/main/java/com/cooleshow/base/utils/helper/UpdateAppHelper.java

@@ -89,6 +89,9 @@ public class UpdateAppHelper {
     }
 
     private void handleResult(Activity activity, UpdateAppBean data) {
+        if (data == null) {
+            return;
+        }
         if (!TextUtils.isEmpty(AppUtils.getAppVersionName())
                 && !TextUtils.isEmpty(data.getVersion())
                 && !TextUtils.isEmpty(data.getDownloadUrl()) && ifCanUpdate(data.getVersion())) {

BIN
BaseLibrary/src/main/res/drawable-xhdpi/icon_close_white.png


BIN
BaseLibrary/src/main/res/drawable-xxhdpi/icon_close_white.png


+ 4 - 2
student/src/main/AndroidManifest.xml

@@ -202,7 +202,7 @@
             android:exported="false"
             android:launchMode="singleTask"
             android:screenOrientation="portrait"
-            android:windowSoftInputMode="adjustPan">
+            android:windowSoftInputMode="adjustResize">
             <intent-filter>
                 <action android:name="com.cooleshow.student.ui.live.LiveRoomActivity" />
                 <category android:name="android.intent.category.DEFAULT" />
@@ -307,7 +307,9 @@
             </intent-filter>
         </receiver>
 
-
+        <service
+            android:name="com.cooleshow.student.ui.live.floatPop.FloatingWindowService"
+            android:exported="false" />
     </application>
 
 </manifest>

+ 24 - 20
student/src/main/java/com/cooleshow/student/presenter/live/LiveRoomPresenter.java

@@ -175,30 +175,34 @@ public class LiveRoomPresenter extends BasePresenter<LiveRoomContract.view> impl
         if (currentConnectionStatus == RongIMClient.ConnectionStatusListener.ConnectionStatus.CONNECTED) {
             Log.i("pq", "LiveRoomActivity init getRoomInfo");
             getRoomInfo(roomId);
-        } else {
-            String imtoken = UserHelper.getUserIMToken();
-            Log.i("pq", "im未连接,token:" + imtoken);
-            if (!TextUtils.isEmpty(imtoken)) {
-                return;
-            }
-            IMCenter.getInstance().connect(imtoken, new RongIMClient.ConnectCallback() {
-                @Override
-                public void onSuccess(String t) {
-                    Log.i("pq", "连接成功");
-                }
-
-                @Override
-                public void onError(RongIMClient.ConnectionErrorCode e) {
-                    Log.i("pq", "connect error" + e);
-                }
+        }else {
+            connectIM();
+        }
 
-                @Override
-                public void onDatabaseOpened(RongIMClient.DatabaseOpenStatus code) {
+    }
 
-                }
-            });
+    public void connectIM() {
+        String imtoken = UserHelper.getUserIMToken();
+        Log.i("pq", "im未连接,申请连接token:" + imtoken);
+        if (TextUtils.isEmpty(imtoken)) {
+            return;
         }
+        IMCenter.getInstance().connect(imtoken, new RongIMClient.ConnectCallback() {
+            @Override
+            public void onSuccess(String t) {
+                Log.i("pq", "连接成功");
+            }
 
+            @Override
+            public void onError(RongIMClient.ConnectionErrorCode e) {
+                Log.i("pq", "connect error" + e);
+            }
+
+            @Override
+            public void onDatabaseOpened(RongIMClient.DatabaseOpenStatus code) {
+
+            }
+        });
     }
 
     public void setAddLikeCount(int addLikeCount) {

+ 34 - 9
student/src/main/java/com/cooleshow/student/ui/live/LiveRoomActivity.java

@@ -183,13 +183,14 @@ public class LiveRoomActivity extends BaseMVPActivity<ActivityLiveroomLayoutBind
     private ServiceConnection serviceConnection;
     private ObjectAnimator hideHeaderInfoAnim;
     private ObjectAnimator showHeaderInfoAnim;
+    private boolean isOnResume = true;
     private Handler mHandler = new Handler(Looper.myLooper()) {
         @Override
         public void handleMessage(@NonNull android.os.Message msg) {
             if (msg.what == SEND_APP_BACKGROUND_MSG) {
                 //APP切换后台
                 //开启悬浮窗
-                if (AppUtils.isApplicationInBackground(LiveRoomActivity.this)) {
+                if (!isOnResume && AppUtils.isApplicationInBackground(LiveRoomActivity.this)) {
                     startFloatWindowService();
                 }
                 return;
@@ -197,6 +198,10 @@ public class LiveRoomActivity extends BaseMVPActivity<ActivityLiveroomLayoutBind
             if (msg.what == SEND_JUMP_OTHER_PAGE_MSG) {
                 //跳转其他页面时候
                 //开启悬浮窗
+                if (isOnResume) {
+                    //如果页面onResume了,就不开启service
+                    return;
+                }
                 startFloatWindowService();
                 return;
             }
@@ -375,6 +380,9 @@ public class LiveRoomActivity extends BaseMVPActivity<ActivityLiveroomLayoutBind
         } else {
             //如果IM未连接,等待connectStatusListener回调
             isNeedRefresh = true;
+            if (presenter != null) {
+                presenter.connectIM();
+            }
         }
     }
 
@@ -473,6 +481,7 @@ public class LiveRoomActivity extends BaseMVPActivity<ActivityLiveroomLayoutBind
                 || id == R.id.tv_video_course || id == R.id.tv_music_sheet) {
             //约课 直播课 视频课 曲谱
             startTeacherHomePage(id);
+            sendShowFloatWindowAction(SEND_JUMP_OTHER_PAGE_MSG);
             return;
         }
     }
@@ -546,8 +555,31 @@ public class LiveRoomActivity extends BaseMVPActivity<ActivityLiveroomLayoutBind
     @Override
     protected void onResume() {
         super.onResume();
+        Log.i("pq", "onResume");
+        checkImConnectStatus();
+        this.isOnResume = true;
+        unbindService();
+        //取消全部静音
+        muteAll(false);
+    }
+
+
+    /**
+     * 检查IM连接状态
+     */
+    private void checkImConnectStatus() {
+        RongIMClient.ConnectionStatusListener.ConnectionStatus currentConnectionStatus = RongIMClient.getInstance().getCurrentConnectionStatus();
+        if (currentConnectionStatus == RongIMClient.ConnectionStatusListener.ConnectionStatus.CONNECTED) {
+            isNeedRefresh = false;
+        } else {
+            isNeedRefresh = true;
+            if (presenter != null) {
+                presenter.connectIM();
+            }
+        }
     }
 
+
     private void showPageCloseOnMicTipDialog() {
         if (mLiveRoomClosePageOnMicTipDialog == null) {
             mLiveRoomClosePageOnMicTipDialog = new LiveRoomClosePageOnMicTipDialog(this);
@@ -1730,14 +1762,6 @@ public class LiveRoomActivity extends BaseMVPActivity<ActivityLiveroomLayoutBind
     }
 
 
-    @Override
-    protected void onRestart() {
-        super.onRestart();
-        unbindService();
-        //取消全部静音
-        muteAll(false);
-    }
-
     /**
      * 销毁悬浮窗service
      */
@@ -1757,6 +1781,7 @@ public class LiveRoomActivity extends BaseMVPActivity<ActivityLiveroomLayoutBind
     @Override
     protected void onPause() {
         super.onPause();
+        isOnResume = false;
         sendShowFloatWindowAction(SEND_APP_BACKGROUND_MSG);
     }
 

+ 1 - 1
student/src/main/res/layout/activity_liveroom_layout.xml

@@ -105,7 +105,7 @@
             android:layout_height="wrap_content"
             android:layout_marginEnd="14dp"
             android:padding="5dp"
-            android:src="@drawable/icon_close_gray"
+            android:src="@drawable/icon_close_white"
             app:layout_constraintBottom_toBottomOf="@+id/bg_avatar"
             app:layout_constraintRight_toRightOf="parent"
             app:layout_constraintTop_toTopOf="@+id/bg_avatar" />

+ 1 - 1
teacher/src/main/AndroidManifest.xml

@@ -323,7 +323,7 @@
             android:exported="false"
             android:launchMode="singleTask"
             android:screenOrientation="portrait"
-            android:windowSoftInputMode="adjustNothing"></activity> <!-- 分享开始 -->
+            android:windowSoftInputMode="adjustResize"></activity> <!-- 分享开始 -->
         <activity
             android:name=".wxapi.WXEntryActivity"
             android:configChanges="keyboardHidden|orientation|screenSize"

+ 4 - 4
teacher/src/main/java/com/cooleshow/teacher/adapter/WithdrawalRecordAdapter.java

@@ -38,18 +38,18 @@ public class WithdrawalRecordAdapter extends BaseQuickAdapter<WithdrawalRecordBe
         tv_date.setText(item.createTime);
         tv_price.setText("¥" + item.amount);
         // pending、交易处理中 succeeded、交易成功 failed、交易失败 ,可用值:pending,succeeded,failed,close
-        if (!TextUtils.isEmpty(item.authStatus)) {
+        if (!TextUtils.isEmpty(item.withdrawStatus)) {
             tv_state.setVisibility(View.VISIBLE);
-            switch (item.authStatus) {
+            switch (item.withdrawStatus) {
                 case "DOING":
                     tv_state.setText("审核中");
                     tv_state.setTextColor(getContext().getResources().getColor(com.cooleshow.base.R.color.color_666666));
                     break;
-                case "PASS":
+                case "SUCCESS":
                     tv_state.setText("结算成功");
                     tv_state.setTextColor(getContext().getResources().getColor(com.cooleshow.base.R.color.color_2dc7aa));
                     break;
-                case "UNPASS":
+                case "FAILED":
                     tv_state.setText("结算失败");
                     tv_state.setTextColor(getContext().getResources().getColor(com.cooleshow.base.R.color.color_ff5c5f));
                     break;

+ 1 - 1
teacher/src/main/java/com/cooleshow/teacher/bean/WithdrawalRecordBean.java

@@ -54,7 +54,7 @@ public class WithdrawalRecordBean {
         public String openType;
         public String phone;
         public double plantformFee;
-        public String authStatus;
+        public String withdrawStatus ;
         public String transNo;
         public String transferTime;
         public String updateTime;