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

Merge remote-tracking branch 'origin/2.8' into 2.8

zengjiebin лет назад: 7
Родитель
Сommit
230afbb19c

+ 6 - 0
app/src/main/java/com/kfzs/duanduan/fragment/FgtSmallSheep.java

@@ -1017,6 +1017,9 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
             case 14://幂动科技
                 Jump2View.getInstance().goMiDong(activity, null);
                 break;
+            case 15://小米游戏列表
+                Jump2View.getInstance().goXiaomiGameList(activity, null);
+                break;
             default:
                 G.showToast(R.string.coming_soon);
                 break;
@@ -1071,6 +1074,9 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
             case 14://幂动科技
                 Jump2View.getInstance().goMiDong(activity, null);
                 break;
+            case 15://小米游戏列表
+                Jump2View.getInstance().goXiaomiGameList(activity, null);
+                break;
         }
     }
 

+ 24 - 0
app/src/main/java/com/kfzs/duanduan/react/ReactUtil.java

@@ -17,6 +17,30 @@ public class ReactUtil {
     /**
      * 是否进入rn调试模式
      */
+    public static final boolean isHasConnectConfig() {
+        File sdDir = null;
+        boolean sdCardExist = Environment.getExternalStorageState()
+                .equals(android.os.Environment.MEDIA_MOUNTED); //判断sd卡是否存在
+        if (sdCardExist) {
+            sdDir = Environment.getExternalStorageDirectory();//获取跟目录
+        }
+        return sdDir != null && new File(sdDir, "smallSheep.config").exists();
+    }
+    /**
+     * 是否进入rn调试模式
+     */
+    public static final String getConectConfig() {
+        File sdDir = null;
+        boolean sdCardExist = Environment.getExternalStorageState()
+                .equals(android.os.Environment.MEDIA_MOUNTED); //判断sd卡是否存在
+        if (sdCardExist) {
+            sdDir = Environment.getExternalStorageDirectory();//获取跟目录
+        }
+        return FileUtil.readFile(new File(sdDir, "smallSheep.config").getAbsolutePath());
+    }
+    /**
+     * 是否进入rn调试模式
+     */
     public static final boolean isSmallDebug() {
         File sdDir = null;
         boolean sdCardExist = Environment.getExternalStorageState()

+ 9 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/FindApp.java

@@ -49,6 +49,15 @@ public class FindApp implements IDownload {
     private int download;//1:可以下载
 
     private int record;//1:可记录 其他:不可记录
+    private int receive_account;//integer($int64)0:未领取账号 1:已领取账号
+
+    public int getReceive_account() {
+        return receive_account;
+    }
+
+    public void setReceive_account(int receive_account) {
+        this.receive_account = receive_account;
+    }
 
     public void setUpdated_at(int updated_at){
         this.updated_at = updated_at;

+ 18 - 5
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -37,6 +37,7 @@ import com.sheep.gamegroup.alipay.PayResult;
 import com.sheep.gamegroup.model.api.BaseMessageConverter;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.DialogConfig;
+import com.sheep.gamegroup.model.entity.FindApp;
 import com.sheep.gamegroup.model.entity.GameAccountEntity;
 import com.sheep.gamegroup.model.entity.HomeListEntity;
 import com.sheep.gamegroup.model.entity.RequestParameEty;
@@ -450,6 +451,9 @@ public class CommonUtil {
             case 14://幂动科技
                 Jump2View.getInstance().goMiDong((Activity) context, null);
                 break;
+            case 15://小米游戏列表
+                Jump2View.getInstance().goXiaomiGameList((Activity) context, null);
+                break;
             default:
                 G.showToast(R.string.coming_soon);
                 break;
@@ -1490,7 +1494,7 @@ public class CommonUtil {
     /**
      * 小米游戏账号领取
      */
-    public void xiaomiRevieceAcctoun(TextView find_information_game_task_top, final XiaomiGameEntity items, final Activity activity){
+    public void xiaomiRevieceAcctoun(TextView find_information_game_task_top, final Object items, final Activity activity){
         XIAOMI_GAME_RECEIVE.onEvent();
         find_information_game_task_top.setText("取福利号");
         find_information_game_task_top.setOnClickListener(new View.OnClickListener() {
@@ -1498,7 +1502,13 @@ public class CommonUtil {
             public void onClick(View v) {
 
                 JSONObject jsonObject = new JSONObject();
-                jsonObject.put("id", items.getId());
+                if(items instanceof XiaomiGameEntity){
+
+                    jsonObject.put("id", ((XiaomiGameEntity)items).getId());
+                }else if(items instanceof FindApp){
+                    jsonObject.put("id", ((FindApp)items).getId());
+                }
+
                 ViewUtil.newInstance().showProgress((Activity) activity);
                 SheepApp.getInstance()
                         .getNetComponent()
@@ -1519,6 +1529,8 @@ public class CommonUtil {
                                 G.showToast(baseMessage.getMsg());
                                 ViewUtil.newInstance().hideProgress(activity);
                                 String text = String.format(activity.getResources().getString(R.string.get_xiaomi_game_success_dialog),"小米账号","等带服务器开发");
+                                final JSONObject jsonObject1 = JSONObject.parseObject(JSONObject.toJSONString(baseMessage.getData()));
+
                                 ViewUtil.showMsgDialog(activity,
                                         text,
                                         "恭喜你获得福利号",
@@ -1534,17 +1546,18 @@ public class CommonUtil {
                                                     intent.setData(uri);
                                                     activity.sendBroadcast(intent); // 发送广播通知相册
                                                 } else {
-                                                    ViewUtil.sysSaveImage((View) v.getParent().getParent(), "小绵羊-小米", "小绵羊-小米账号");
+                                                    if(jsonObject1 != null)
+                                                        ViewUtil.sysSaveImage((View) v.getParent().getParent(), jsonObject1.getString("account")+"", jsonObject1.getString("password")+"");
                                                 }
                                                 G.showToast("已保存");
-                                                EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.REFRESH_MING_DONG));
+                                                EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.REFRESH_XIAOMI_GAME_LIST));
                                             }
                                         },
                                         new View.OnClickListener() {
                                             @Override
                                             public void onClick(View v) {
 
-                                                EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.REFRESH_MING_DONG));
+                                                EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.REFRESH_XIAOMI_GAME_LIST));
                                             }
                                         });
 

+ 11 - 0
app/src/main/java/com/sheep/gamegroup/util/ConnectAddress.java

@@ -1,6 +1,7 @@
 package com.sheep.gamegroup.util;
 
 
+import com.kfzs.duanduan.react.ReactUtil;
 import com.kfzs.duanduan.react.SharedPreferences;
 import com.sheep.jiuyan.samllsheep.BuildConfig;
 import com.sheep.jiuyan.samllsheep.SheepApp;
@@ -113,6 +114,16 @@ public enum ConnectAddress {
     }
 
     public ConnectAddress getDefultConnectAddress() {
+        if(TestUtil.isTest()){
+            if(ReactUtil.isHasConnectConfig()) {
+                String flavor = ReactUtil.getConectConfig();
+                try {
+                    return ConnectAddress.valueOf(flavor);
+                } catch (IllegalArgumentException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
         String flavor = TestUtil.isSheep() ? "sheep" : SharedPreferences.getInstance().getString("flavor", BuildConfig.FLAVOR);
         try {
             return ConnectAddress.valueOf(flavor);

+ 33 - 0
app/src/main/java/com/sheep/gamegroup/util/DeviceIDUtil.java

@@ -33,6 +33,7 @@ import java.util.UUID;
  * realicing@sina.com
  */
 public class DeviceIDUtil {
+    private static DeviceIDUtil deviceIDUtil;
 
     /*
      *
@@ -56,6 +57,11 @@ public class DeviceIDUtil {
     private static final String LOACL_FILENAME_KEY = "loacl_filename_key";
 
 
+    public static DeviceIDUtil newInstance(){
+        if (deviceIDUtil == null)
+            deviceIDUtil = new DeviceIDUtil();
+        return deviceIDUtil;
+    }
 
 
     //获取设备唯一id
@@ -399,5 +405,32 @@ public class DeviceIDUtil {
 
     }
 
+    /**
+     * 数字转换成万 千 百 十
+     */
+    public String numberCnvert(int number){
+        int wanWei = number / 10000;
+        int qianWei = number % 10000 /1000;
+        int baiWei = number % 1000 /100;
+        int shiWei = number % 100 /10;
+        int geWei = number % 10 ;
+
+        StringBuffer stringBuffer = new StringBuffer();
+        if(wanWei > 0){
+            stringBuffer.append(wanWei+"万");
+        }
+        if(qianWei > 0){
+            stringBuffer.append(qianWei+"千");
+        }
+        if(baiWei > 0){
+            stringBuffer.append(baiWei+"百");
+        }
+        if(shiWei > 0){
+            stringBuffer.append(shiWei+"十");
+        }
+        stringBuffer.append(geWei);
+
+        return stringBuffer.toString();
+    }
 
 }

+ 3 - 2
app/src/main/java/com/sheep/gamegroup/util/TestUtil.java

@@ -17,6 +17,7 @@ import android.widget.TextView;
 import com.alibaba.fastjson.JSONObject;
 import com.bumptech.glide.Glide;
 import com.kfzs.duanduan.ActMain;
+import com.kfzs.duanduan.react.ReactUtil;
 import com.kfzs.duanduan.view.DialogStorageLow;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.CreditCard;
@@ -166,7 +167,7 @@ public class TestUtil {
     }
 
     public static void testChange(final Activity activity, TextView test_change) {
-        if (isTest()) {
+        if (isTest() && !ReactUtil.isHasConnectConfig()) {
             test_change.setVisibility(View.VISIBLE);
             test_change.setText(SheepApp.getInstance().getConnectAddress().getName());
             test_change.setOnClickListener(new View.OnClickListener() {
@@ -188,7 +189,7 @@ public class TestUtil {
         }
     }
     public static void testChangeUser(final Activity activity, TextView test_change) {
-        if (isTest()) {
+        if (isTest() && !ReactUtil.isHasConnectConfig()) {
 
             test_change.setVisibility(View.VISIBLE);
             test_change.setText("切换账号");

+ 3 - 3
app/src/main/java/com/sheep/gamegroup/util/UMConfigUtils.java

@@ -151,9 +151,9 @@ public class UMConfigUtils {
         ORDER_MANAGER_CANCEL("订单管理 -> 取消支付"),//5118
         ORDER_MANAGER_PAY("订单管理 -> 立即支付"),//5119
         MI_DONG_VIEW("幂动科技"),//5120
-        SETTING("进入设置界面"),
-        XIAOMI_GAME_LIST("小米游戏列表"),
-        XIAOMI_GAME_RECEIVE("小米游戏账号领取"),
+        SETTING("进入设置界面"),//5121
+        XIAOMI_GAME_LIST("小米游戏列表"),//5122
+        XIAOMI_GAME_RECEIVE("小米游戏账号领取"),//5123
         ;
         private String tag;
 

+ 16 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/ActFindGame.java

@@ -21,6 +21,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.arialyy.annotations.Download;
 import com.arialyy.aria.core.Aria;
 import com.arialyy.aria.core.download.DownloadTask;
+import com.kfzs.duanduan.event.BigEvent;
 import com.kfzs.duanduan.services.DownloadTaskService;
 import com.kfzs.duanduan.utils.StatusBarUtils;
 import com.kfzs.duanduan.utils.dlg.HelperUtils;
@@ -62,6 +63,7 @@ import static android.content.Intent.ACTION_PACKAGE_ADDED;
 import static android.content.Intent.ACTION_PACKAGE_REMOVED;
 import static com.sheep.gamegroup.util.UMConfigUtils.Event.FIND_SCORE;
 import static com.sheep.gamegroup.util.UMConfigUtils.Event.FIND_SHARE;
+import static com.sheep.gamegroup.view.adapter.TryMakeMoneyAdp.PUBLIC_TAG_PREFIX_TEXTVIEW_LIST;
 
 /**
  * Created by realicing on 2018/5/10.
@@ -501,6 +503,11 @@ public class ActFindGame extends BaseActivity {
 
     //更新按钮状态与添加点击事件
     private void updateView(Activity activity, FindApp findApp, TextView textView) {
+        if(findApp.getReceive_account() == 0){//未领取账号
+
+            CommonUtil.getInstance()
+                    .xiaomiRevieceAcctoun(find_game_down_tv, findApp, activity);
+        }else
         if (findApp.isCanDonload()) {//可下载
             downLoadTextViewMap.put(findApp.getDownload_link(), textView);
             downLoadTextViewMap.put(findApp.getPackage_name(), textView);
@@ -622,6 +629,15 @@ public class ActFindGame extends BaseActivity {
         }
     }
 
+    @Subscribe
+    public void onEventMainThread(BigEvent event) {
+        switch (event.getEventTypes()){
+            case REFRESH_XIAOMI_GAME_LIST:
+                initData();
+                break;
+        }
+    }
+
     @Override
     protected void onDestroy() {
         super.onDestroy();

+ 10 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/ActXiaomiGame.java

@@ -35,6 +35,7 @@ import com.sheep.gamegroup.model.entity.FindTag;
 import com.sheep.gamegroup.model.entity.TaskReleaseEty;
 import com.sheep.gamegroup.model.util.SheepSubscriber;
 import com.sheep.gamegroup.util.CommonUtil;
+import com.sheep.gamegroup.util.DeviceIDUtil;
 import com.sheep.gamegroup.util.GlideImageLoader;
 import com.sheep.gamegroup.util.Jump2View;
 import com.sheep.gamegroup.util.ListUtil;
@@ -154,8 +155,8 @@ public class ActXiaomiGame extends BaseActivity {
 
                 GlideImageLoader.setGameImage((ImageView) rootConvertView.findViewById(R.id.item_icon_iv), item.getIcon());
                 item_name_tv.setText(item.getName()+"");
-                item_num_tv.setText("角色扮演");
-                item_date_tv.setText("2万人在玩");
+                item_num_tv.setText(item.getType()+"");
+                item_date_tv.setText(DeviceIDUtil.newInstance().numberCnvert(item.getDownload_count_increment())+"人在玩");
                 detail_task_tv_center.setTag(PUBLIC_TAG_PREFIX_TEXTVIEW_LIST + item.getDownload_url());
 
                 if(item.getReceive_account() == 0){//未领取账号
@@ -166,6 +167,13 @@ public class ActXiaomiGame extends BaseActivity {
                     item.getDownloadHelper().updateDownloadTaskView((Activity) activity, item, detail_task_tv_center);
                     detail_task_tv_center.setTag(PUBLIC_TAG_PREFIX_TEXTVIEW_LIST + item.getDownload_url());
                 }
+                rootConvertView.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+
+                        Jump2View.getInstance().goFindGame(activity, item.getId());
+                    }
+                });
             }
         });
         isRefresh = false;

+ 3 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/SplashAct.java

@@ -368,6 +368,9 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
                 case 8:
                     Jump2View.getInstance().goSignCardAct(activity, null);
                     break;
+                case 15://小米游戏列表
+                    Jump2View.getInstance().goXiaomiGameList((Activity) activity, null);
+                    break;
             }
         }
     }

+ 30 - 9
app/src/main/java/com/sheep/gamegroup/view/activity/XiaomiGameEntity.java

@@ -36,7 +36,7 @@ public class XiaomiGameEntity implements Serializable,IDownload {
     private String package_id;//stringGameID
     private String package_name;//string应用包名称
 
-    private float package_sizes;//number($float)包大小(M)
+    private String package_size;//number($float)包大小(M)
 
     private int package_type;//integer($int64)出包类型:1:快发出包 2:腾讯出包 3:小米出包 4:其它
 
@@ -59,6 +59,30 @@ public class XiaomiGameEntity implements Serializable,IDownload {
     private long updated_at;//integer($int64)
     private long versions;//string版本号
 
+    private int download_count_increment;//下载数量的增量
+
+    private String type;//类型
+
+    public void setPackage_sizes(String package_sizes) {
+        this.package_size = package_sizes;
+    }
+
+    public int getDownload_count_increment() {
+        return download_count_increment;
+    }
+
+    public void setDownload_count_increment(int download_count_increment) {
+        this.download_count_increment = download_count_increment;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
     public int getId() {
         return Id;
     }
@@ -139,6 +163,11 @@ public class XiaomiGameEntity implements Serializable,IDownload {
         return icon;
     }
 
+    @Override
+    public String getPackage_size() {
+        return package_size;
+    }
+
     public void setIcon(String icon) {
         this.icon = icon;
     }
@@ -191,19 +220,11 @@ public class XiaomiGameEntity implements Serializable,IDownload {
         this.package_name = package_name;
     }
 
-    public String getPackage_size() {
-        return "";
-    }
-
     @Override
     public int getAcceptedTaskId() {
         return 0;
     }
 
-    public void setPackage_size(float package_size) {
-        this.package_sizes = package_size;
-    }
-
     public int getPackage_type() {
         return package_type;
     }