hanjing лет назад: 6
Родитель
Сommit
cf4ed606f3

+ 1 - 1
app/build.gradle

@@ -26,7 +26,7 @@ android {
         }
     }
     greendao {
-        schemaVersion 16
+        schemaVersion 17
         targetGenDir 'src/main/java'
     }
     signingConfigs {

+ 2 - 2
app/src/main/java/com/sheep/gamegroup/greendao/download/DaoMaster.java

@@ -14,10 +14,10 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType;
 
 // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.
 /**
- * Master of DAO (schema version 16): knows all DAOs.
+ * Master of DAO (schema version 17): knows all DAOs.
  */
 public class DaoMaster extends AbstractDaoMaster {
-    public static final int SCHEMA_VERSION = 16;
+    public static final int SCHEMA_VERSION = 17;
 
     /** Creates underlying database table using DAOs. */
     public static void createAllTables(Database db, boolean ifNotExists) {

+ 16 - 2
app/src/main/java/com/sheep/gamegroup/greendao/download/SdkLoginUser.java

@@ -27,6 +27,17 @@ public class SdkLoginUser {
     private String avatar;
     @Property(nameInDb = "service_name")
     private String serviceName;
+    @Property(nameInDb = "last_login_time")
+    private String lastLoginTime;
+
+    public String getLastLoginTime() {
+        return lastLoginTime;
+    }
+
+    public void setLastLoginTime(String lastLoginTime) {
+        this.lastLoginTime = lastLoginTime;
+    }
+
     public String getServiceName() {
         return this.serviceName;
     }
@@ -63,16 +74,19 @@ public class SdkLoginUser {
     public void setId(Long id) {
         this.id = id;
     }
-    @Generated(hash = 1057909451)
+    @Generated(hash = 228164197)
     public SdkLoginUser(Long id, String token, String nickname,
-            String invitation_code, String avatar, String serviceName) {
+            String invitation_code, String avatar, String serviceName,
+            String lastLoginTime) {
         this.id = id;
         this.token = token;
         this.nickname = nickname;
         this.invitation_code = invitation_code;
         this.avatar = avatar;
         this.serviceName = serviceName;
+        this.lastLoginTime = lastLoginTime;
     }
+
     @Generated(hash = 1869962748)
     public SdkLoginUser() {
     }

+ 16 - 2
app/src/main/java/com/sheep/gamegroup/greendao/download/SdkLoginUserDao.java

@@ -28,6 +28,7 @@ public class SdkLoginUserDao extends AbstractDao<SdkLoginUser, Long> {
         public final static Property Invitation_code = new Property(3, String.class, "invitation_code", false, "invitation_code");
         public final static Property Avatar = new Property(4, String.class, "avatar", false, "avatar");
         public final static Property ServiceName = new Property(5, String.class, "serviceName", false, "service_name");
+        public final static Property LastLoginTime = new Property(6, String.class, "lastLoginTime", false, "last_login_time");
     }
 
 
@@ -48,7 +49,8 @@ public class SdkLoginUserDao extends AbstractDao<SdkLoginUser, Long> {
                 "\"nickname\" TEXT," + // 2: nickname
                 "\"invitation_code\" TEXT," + // 3: invitation_code
                 "\"avatar\" TEXT," + // 4: avatar
-                "\"service_name\" TEXT);"); // 5: serviceName
+                "\"service_name\" TEXT," + // 5: serviceName
+                "\"last_login_time\" TEXT);"); // 6: lastLoginTime
     }
 
     /** Drops the underlying database table. */
@@ -90,6 +92,11 @@ public class SdkLoginUserDao extends AbstractDao<SdkLoginUser, Long> {
         if (serviceName != null) {
             stmt.bindString(6, serviceName);
         }
+ 
+        String lastLoginTime = entity.getLastLoginTime();
+        if (lastLoginTime != null) {
+            stmt.bindString(7, lastLoginTime);
+        }
     }
 
     @Override
@@ -125,6 +132,11 @@ public class SdkLoginUserDao extends AbstractDao<SdkLoginUser, Long> {
         if (serviceName != null) {
             stmt.bindString(6, serviceName);
         }
+ 
+        String lastLoginTime = entity.getLastLoginTime();
+        if (lastLoginTime != null) {
+            stmt.bindString(7, lastLoginTime);
+        }
     }
 
     @Override
@@ -140,7 +152,8 @@ public class SdkLoginUserDao extends AbstractDao<SdkLoginUser, Long> {
             cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // nickname
             cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // invitation_code
             cursor.isNull(offset + 4) ? null : cursor.getString(offset + 4), // avatar
-            cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5) // serviceName
+            cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // serviceName
+            cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6) // lastLoginTime
         );
         return entity;
     }
@@ -153,6 +166,7 @@ public class SdkLoginUserDao extends AbstractDao<SdkLoginUser, Long> {
         entity.setInvitation_code(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3));
         entity.setAvatar(cursor.isNull(offset + 4) ? null : cursor.getString(offset + 4));
         entity.setServiceName(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5));
+        entity.setLastLoginTime(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6));
      }
     
     @Override

+ 1 - 0
app/src/main/java/com/sheep/gamegroup/util/CertificationUtil.java

@@ -128,6 +128,7 @@ public class CertificationUtil {
         SdkLoginUser newSdkLoginUser = new SdkLoginUser();
         newSdkLoginUser.setAvatar(userEntity.getAvatar());
         newSdkLoginUser.setToken(token);
+        newSdkLoginUser.setLastLoginTime(userEntity.getLast_login_time());
         newSdkLoginUser.setInvitation_code(userEntity.getInvitation_code());
         newSdkLoginUser.setNickname(userEntity.getNickname());
         newSdkLoginUser.setServiceName(SheepApp.getInstance().getConnectAddress().name());

+ 15 - 5
app/src/main/java/com/sheep/gamegroup/view/activity/GameCertificationActivity.java

@@ -74,6 +74,7 @@ public class GameCertificationActivity extends BaseActivity {
     private TextProgressBar textProgressBar;
     private boolean isChangeAccount;
     private String gameToken;
+    private String currentToken;
 
     @Override
     protected int getLayoutId() {
@@ -82,6 +83,7 @@ public class GameCertificationActivity extends BaseActivity {
 
     @Override
     public void initView() {
+        currentToken = SpUtils.getToken(this);
         activity = this;
         textProgressBar = new TextProgressBar(activity);
         textProgressBar.setVisibility(View.VISIBLE);
@@ -214,8 +216,8 @@ public class GameCertificationActivity extends BaseActivity {
     }
 
     private void commitChange() {
-        UserEntity user = DataUtil.getInstance().getUserEntity();
-        long expiredTime = (Long.parseLong(user.getLast_login_time()) + (15 * 24 * 60 * 60)) * 1000;
+        if (userEntity == null) return;
+        long expiredTime = (Long.parseLong(userEntity.getLast_login_time()) + (15 * 24 * 60 * 60)) * 1000;
         if (expiredTime < System.currentTimeMillis()) {
             Toast.makeText(this, "Token已过期,需要重新登录", Toast.LENGTH_SHORT).show();
             Jump2View.getInstance().goLoginViewWithoutFinish(activity, SheepApp.getInstance().getGameCode());
@@ -228,7 +230,7 @@ public class GameCertificationActivity extends BaseActivity {
             @Override
             public void run() {
                 if (!isChangeAccount)
-                    CertificationUtil.newInstance().authCertificationCode(activity, SpUtils.getToken(SheepApp.getInstance()));
+                    CertificationUtil.newInstance().authCertificationCode(activity, currentToken);
             }
         }, 3000);
     }
@@ -238,10 +240,18 @@ public class GameCertificationActivity extends BaseActivity {
      * 请求授权
      */
     private void hasToken() {
-        String token = SpUtils.getToken(SheepApp.getInstance());
-        if (TextUtils.isEmpty(token)) {
+        if (TextUtils.isEmpty(SpUtils.getToken(SheepApp.getInstance()))) {
             if (userList.isEmpty()) {
                 Jump2View.getInstance().goLoginViewWithoutFinish(activity, SheepApp.getInstance().getGameCode());
+            } else {
+                SdkLoginUser user = userList.get(0);
+                currentToken = user.getToken();
+                userEntity = new UserEntity();
+                userEntity.setNickname(user.getNickname());
+                userEntity.setInvitation_code(user.getInvitation_code());
+                userEntity.setAvatar(user.getAvatar());
+                userEntity.setLast_login_time("" + (TextUtils.isEmpty(user.getLastLoginTime()) ? System.currentTimeMillis() : user.getLastLoginTime()));
+                initWidget();
             }
         } else {
             showProgress();