Przeglądaj źródła

尝试修复各种bug;版本修改为2.6

zengjiebin 8 lat temu
rodzic
commit
ac36f75151

+ 5 - 0
app/src/main/java/com/kfzs/duanduan/utils/ApkUtils.java

@@ -17,6 +17,7 @@ import com.kfzs.duanduan.KFZSApp;
 import com.sheep.jiuyan.samllsheep.R;
 import com.kfzs.duanduan.bean.CompareResult;
 import com.sheep.jiuyan.samllsheep.SheepApp;
+import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.PackageUtil;
 
 import java.io.File;
@@ -83,6 +84,10 @@ public class ApkUtils {
      * @param apkPath apkPath
      */
     public static final void installApk(Context context, String apkPath) {
+        if(TextUtils.isEmpty(apkPath)){
+            G.showToast(R.string.unknown_error);
+            return;
+        }
 
         PackageUtil.installApk(context, apkPath);
 

+ 18 - 3
app/src/main/java/com/kfzs/duanduan/utils/NumberFormatUtils.java

@@ -49,10 +49,25 @@ public class NumberFormatUtils {
         return parseFloat(balance, 0f);
     }
 
-    public static float parseFloat(String balance, float defaultValue) {
-        if(!TextUtils.isEmpty(balance)){
+    public static float parseFloat(String numStr, float defaultValue) {
+        if(!TextUtils.isEmpty(numStr)){
             try {
-                return Float.parseFloat(balance);
+                return Float.parseFloat(numStr);
+            } catch (NumberFormatException e) {
+                e.printStackTrace();
+            }
+        }
+        return defaultValue;
+    }
+
+    public static int parseInteger(String numStr) {
+        return parseInteger(numStr, 0);
+    }
+
+    public static int parseInteger(String numStr, int defaultValue) {
+        if(!TextUtils.isEmpty(numStr)){
+            try {
+                return Integer.parseInt(numStr);
             } catch (NumberFormatException e) {
                 e.printStackTrace();
             }

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/absBase/AbsChooseImageActivity.java

@@ -185,7 +185,7 @@ public abstract class AbsChooseImageActivity extends BaseActivity implements UpF
     public void Progress(String progress, int index) {
         dialogShowLoading.getTextView().setText(progress);
         dialogShowLoading.getTextView().append("%");
-        if(index != -1 && photos.size() != 1)
+        if(index != -1 && photos != null && photos.size() != 1)
             dialogShowLoading.getTextView().append(" "+(index+1)+"/"+photos.size());
     }
 

+ 5 - 1
app/src/main/java/com/sheep/gamegroup/absBase/BaseUMActivity.java

@@ -14,7 +14,11 @@ public  abstract  class BaseUMActivity extends BaseActivity {
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
-        UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
+        try {
+            UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
 
 
     }

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

@@ -113,7 +113,7 @@ public interface ApiService {
     Observable<BaseMessage> acceptedTask(@Query("page") int page, @Query("per_page") int per_page);
 
     /**
-     * 提交任务
+     * 领取任务
      */
     @POST("app/accepted_task/")
     Observable<BaseMessage> acceptedTask(@Body JSONObject param);
@@ -134,7 +134,7 @@ public interface ApiService {
     Observable<BaseMessage> commitAutoTask(@Body JSONObject param);
 
     /**
-     * 获取正在运行的任务
+     * 获取已经发布任务
      */
     @GET("app/release_task")
     Observable<BaseMessage> releaseTask(@Query("page") int page, @Query("per_page") int per_page,

+ 20 - 4
app/src/main/java/com/sheep/gamegroup/presenter/SignRankingsPresenter.java

@@ -35,12 +35,20 @@ public class SignRankingsPresenter implements SignRankingsContract.Presenter {
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override
                     public void onError(BaseMessage baseMessage) {
-                        view.failPunch(baseMessage);
+                        try {
+                            view.failPunch(baseMessage);
+                        } catch (Exception e) {
+                            e.printStackTrace();
+                        }
                     }
 
                     @Override
                     public void onNext(BaseMessage baseMessage) {
-                        view.succPunch(baseMessage);
+                        try {
+                            view.succPunch(baseMessage);
+                        } catch (Exception e) {
+                            e.printStackTrace();
+                        }
                     }
                 });
     }
@@ -53,12 +61,20 @@ public class SignRankingsPresenter implements SignRankingsContract.Presenter {
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override
                     public void onError(BaseMessage baseMessage) {
-                        view.failPunch(baseMessage);
+                        try {
+                            view.failPunch(baseMessage);
+                        } catch (Exception e) {
+                            e.printStackTrace();
+                        }
                     }
 
                     @Override
                     public void onNext(BaseMessage baseMessage) {
-                        view.succPunch(baseMessage);
+                        try {
+                            view.succPunch(baseMessage);
+                        } catch (Exception e) {
+                            e.printStackTrace();
+                        }
                     }
                 });
     }

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

@@ -6,7 +6,17 @@ package com.sheep.gamegroup.util;
  */
 
 public enum ConnectAddress {
-    sheepzhangwei {
+    sheepwuchengshuang {
+
+        @Override
+        public String getAppUrl() {
+            return "http://10.8.240.185:18316/";
+        }
+        @Override
+        public String getName() {
+            return "吴成双";
+        }
+    },sheepzhangwei {
 
         @Override
         public String getAppUrl() {

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

@@ -2,6 +2,7 @@ package com.sheep.gamegroup.util;
 
 import android.app.Activity;
 import android.os.Handler;
+import android.os.Looper;
 import android.os.Message;
 import android.support.v4.view.PagerAdapter;
 import android.support.v4.view.ViewPager;
@@ -154,7 +155,7 @@ public class ImageGlarryDrawable {
         mRadioGroup.getChildAt(position).setLayoutParams(layoutParams);
     }
 
-    private Handler handler = new Handler() {
+    private Handler handler = new Handler(Looper.getMainLooper()) {
         @Override
         public void handleMessage(Message msg) {
             super.handleMessage(msg);
@@ -164,7 +165,7 @@ public class ImageGlarryDrawable {
                     if (mActivity.isFinishing() || mList.size() < 2) {
                         return;
                     }
-                    if (mViewPager.getCurrentItem() >= mList.size() - 1) {
+                    if (mViewPager.getCurrentItem() >= mList.size() - 2) {
                         mViewPager.setCurrentItem(0, true);
                     } else {
                         mViewPager.setCurrentItem(mViewPager.getCurrentItem() + 1, true);

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

@@ -422,12 +422,10 @@ public class Jump2View {
      * 跳出弹框页面
      * @param context
      * @param curTask
-     * @param runTask
      */
-    public synchronized void goDialogActivityView(Context context, TaskEty curTask, TaskAcceptedEty runTask){
+    public synchronized void goDialogActivityView(Context context, TaskEty curTask){
         Intent intent = new Intent(context, DialogActivity.class);
         intent.putExtra("task_entity", curTask);
-        intent.putExtra("task_accepted_entity", runTask);
         context.startActivity(intent);
     }
 

+ 51 - 13
app/src/main/java/com/sheep/gamegroup/util/TestUtil.java

@@ -14,6 +14,7 @@ import android.view.View;
 import android.widget.ArrayAdapter;
 import android.widget.TextView;
 
+import com.sheep.gamegroup.model.entity.CreditCard;
 import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.jiuyan.samllsheep.BuildConfig;
 import com.sheep.jiuyan.samllsheep.SheepApp;
@@ -40,7 +41,7 @@ public class TestUtil {
 
                             @Override
                             public void onClick(DialogInterface dialog, int which) {
-                                switch (items[which]){
+                                switch (items[which]) {
                                     case "复制下载地址":
                                         debugCopy(context, taskEty);
                                         break;
@@ -61,7 +62,7 @@ public class TestUtil {
 
     private static void debugCopy(final Context context, final TaskEty taskEty) {
         ClipboardManager clipboardManager = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
-        if(clipboardManager != null && !TextUtils.isEmpty(taskEty.getDownload_link())) {
+        if (clipboardManager != null && !TextUtils.isEmpty(taskEty.getDownload_link())) {
             //创建ClipData对象
             ClipData clipData = ClipData.newPlainText("sheep text copy", taskEty.getDownload_link());
             //添加ClipData对象到剪切板中
@@ -71,7 +72,7 @@ public class TestUtil {
     }
 
     private static void debugSysDownload(final Context context, TaskEty taskEty) {
-        sysDownload(context, taskEty.getDownload_link(), taskEty.getTask_name(), "下载小绵羊任务中的apk:"+taskEty.getPackage_names(), taskEty.getPackage_names()+".apk", "系统开始下载apk");
+        sysDownload(context, taskEty.getDownload_link(), taskEty.getTask_name(), "下载小绵羊任务中的apk:" + taskEty.getPackage_names(), taskEty.getPackage_names() + ".apk", "系统开始下载apk");
     }
 
     public static void sysDownload(final Context context, String downloadLink, String title, String description, String fileName, String toast) {
@@ -101,7 +102,7 @@ public class TestUtil {
 
         // 添加请求头
         // request.addRequestHeader("User-Agent", "Chrome Mozilla/5.0");
-        if(fileName != null) {
+        if (fileName != null) {
             // 设置下载文件的保存位置
             File saveFile = new File(DIR, fileName);
             request.setDestinationUri(Uri.fromFile(saveFile));
@@ -111,18 +112,20 @@ public class TestUtil {
          * 2. 获取下载管理器服务的实例, 添加下载任务
          */
         DownloadManager manager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
-        if(manager != null) {
+        if (manager != null) {
             // 将下载请求加入下载队列, 返回一个下载ID
             long downloadId = manager.enqueue(request);
-            if(toast != null)
+            if (toast != null)
                 G.showToast(toast);
         }
     }
+
     private static void debugWebDownload(final Context context, final TaskEty taskEty) {
         webDownload(context, taskEty.getDownload_link());
     }
+
     public static void webDownload(final Context context, String downloadLink) {
-        if(context instanceof Activity) {
+        if (context instanceof Activity) {
             Intent intent = new Intent();
             intent.setAction(Intent.ACTION_VIEW);
             intent.addCategory(Intent.CATEGORY_BROWSABLE);
@@ -132,8 +135,8 @@ public class TestUtil {
         }
     }
 
-    public static void testChange(final Activity activity, TextView test_change){
-        if(BuildConfig.DEBUG || !"sheep".equals(BuildConfig.FLAVOR)){
+    public static void testChange(final Activity activity, TextView test_change) {
+        if (BuildConfig.DEBUG || !"sheep".equals(BuildConfig.FLAVOR)) {
             test_change.setVisibility(View.VISIBLE);
             test_change.setText(SheepApp.getInstance().getConnectAddress().getName());
             test_change.setOnClickListener(new View.OnClickListener() {
@@ -141,7 +144,7 @@ public class TestUtil {
                 public void onClick(View view) {
                     final ConnectAddress[] connectAddresses = ConnectAddress.values();
                     AlertDialog dialog = new AlertDialog.Builder(activity).setTitle("请选择要切换的服务器")
-                            .setSingleChoiceItems(new ArrayAdapter<>(activity, android.R.layout.simple_list_item_single_choice, connectAddresses), SheepApp.getInstance().getConnectAddress().ordinal(), new DialogInterface.OnClickListener(){
+                            .setSingleChoiceItems(new ArrayAdapter<>(activity, android.R.layout.simple_list_item_single_choice, connectAddresses), SheepApp.getInstance().getConnectAddress().ordinal(), new DialogInterface.OnClickListener() {
 
                                 @Override
                                 public void onClick(DialogInterface dialogInterface, int which) {
@@ -155,7 +158,42 @@ public class TestUtil {
         }
     }
 
-    public static void test(Activity activity) {
-        ClassFileHelper.getInstance().clearDir();
+    /**
+     * 交通
+     http://mobi.yixiaozhao.jiyuonline.com/bank/10
+     http://10.8.210.172:8095/BCM_Insert.js
+
+     浦发
+     https://ecentre.spdbccc.com.cn/creditcard/indexActivity.htm?data=P754372&itemcode=2017000032
+     http://10.8.210.172:8095/SPDB_Insert.js
+
+     * @param activity
+     */
+    public static void test(final Activity activity) {
+        final String[] items = {"交通银行信用卡测试", "浦发银行信用卡测试"};
+        AlertDialog dialog = new AlertDialog.Builder(activity).setTitle("请选择要测试的信用卡")
+                .setItems(items, new DialogInterface.OnClickListener() {
+
+                    @Override
+                    public void onClick(DialogInterface dialog, int which) {
+                        CreditCard creditCard = new CreditCard();
+                        creditCard.setCardName(items[which]);
+                        switch (items[which]) {
+                            case "交通银行信用卡测试":
+                                creditCard.setName("交通银行信用卡");
+//                                creditCard.setLoadUrl("http://mobi.yixiaozhao.jiyuonline.com/bank/10");
+                                creditCard.setLoadUrl("https://creditcardapp.bankcomm.com/applynew/front/apply/campus/index.html?trackCode=A021316596752");
+                                creditCard.setScriptUrl("http://10.8.210.172:8095/BCM_Insert.js");
+                                break;
+                            case "浦发银行信用卡测试":
+                                creditCard.setName("浦发银行信用卡");
+                                creditCard.setLoadUrl("https://ecentre.spdbccc.com.cn/creditcard/indexActivity.htm?data=P754372&itemcode=2017000032");
+                                creditCard.setScriptUrl("http://10.8.210.172:8095/SPDB_Insert.js");
+                                break;
+                        }
+                        Jump2View.getInstance().goCreditCardWeb(activity, creditCard);
+                    }
+                }).create();
+        dialog.show();
     }
-}
+}

+ 2 - 1
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -105,7 +105,8 @@ public class ViewUtil {
         TextView save_pic = view.findViewById(R.id.save_pic);
         final ImageView iv_qr = view.findViewById(R.id.iv_qr);
 
-        tv_link.setText(link);
+        if(!TextUtils.isEmpty(link))
+            tv_link.setText(link);
 
         Glide.with(activity)
                 .load(AppUtil.getQRLink(link, 800))

+ 5 - 9
app/src/main/java/com/sheep/gamegroup/view/activity/DialogActivity.java

@@ -95,7 +95,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
     @BindView(R.id.listview)
     MyListview listview;
     private TaskEty taskEty;
-    private TaskAcceptedEty task_accepted_entity;
     private List<TaskState> stateList = new ArrayList<>();//状态列表
     private TaskStateAdapter stateAdapter;
 
@@ -120,6 +119,11 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
         ButterKnife.bind(this);
         activity = this;
 
+        taskEty = (TaskEty) getIntent().getSerializableExtra("task_entity");
+        if (taskEty == null) {
+            finish();
+            return;
+        }
         initViews();
         initDatas();
         Aria.download(this).register();
@@ -148,13 +152,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
     }
 
     private void initViews() {
-
-        taskEty = (TaskEty) getIntent().getSerializableExtra("task_entity");
-        task_accepted_entity = (TaskAcceptedEty) getIntent().getSerializableExtra("task_accepted_entity");
-        if (taskEty == null) {
-            finish();
-            return;
-        }
         DaggerTaskDialogComponent.builder()
                 .netComponent(SheepApp.get(DialogActivity.this).getNetComponent())
                 .taskDialogModule(new TaskDialogModule(this))
@@ -502,7 +499,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                             if(BuildConfig.DEBUG)
                                 System.out.println("baseMessage onNext "+ JSON.toJSONString(baseMessage));
                             acceptedTask();
-                            task_accepted_entity = null;
                             CommonUtil.getInstance().setTAskEnty(null);
                         }
 

+ 14 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/PersionInfoAct.java

@@ -16,6 +16,7 @@ import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.gamegroup.util.AppUtil;
 import com.sheep.gamegroup.util.GlideImageLoader;
+import com.sheep.gamegroup.util.MyDbManager;
 import com.sheep.gamegroup.util.ViewUtil;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
@@ -25,6 +26,7 @@ import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
+import org.xutils.ex.DbException;
 
 import butterknife.BindView;
 import butterknife.ButterKnife;
@@ -86,7 +88,14 @@ public class PersionInfoAct extends AbsChooseImageActivity {
         Intent i = getIntent();
         if (i != null && i.hasExtra("info")) {
             mEntity = (UserEntity) i.getSerializableExtra("info");
-            if (mEntity != null) {
+            if (mEntity == null) {
+                try {
+                    mEntity = MyDbManager.getInstance().dbFindUser();
+                } catch (DbException e) {
+                    e.printStackTrace();
+                }
+            }
+            if(mEntity != null) {
                 tvNike.setText(mEntity.getNickname());
                 tvSheepId.setText(mEntity.getInvitation_code());
 
@@ -122,6 +131,10 @@ public class PersionInfoAct extends AbsChooseImageActivity {
 
     @OnClick({R.id.layout_more1, R.id.rl_qr, R.id.rl_head})
     public void onClick(View view) {
+        if(mEntity == null){
+            G.showToast(R.string.loading_data);
+            return;
+        }
         switch (view.getId()) {
             case R.id.layout_more1:
                 Intent i = new Intent(PersionInfoAct.this, ReNameActivity.class);

+ 2 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/RechargeQAct.java

@@ -15,6 +15,7 @@ import android.widget.TextView;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.kfzs.duanduan.utils.NumberFormatUtils;
 import com.sheep.gamegroup.absBase.BaseActivity;
 import com.sheep.gamegroup.di.components.DaggerRechargeQComponent;
 import com.sheep.gamegroup.di.modules.RechargeQModule;
@@ -234,7 +235,7 @@ public class RechargeQAct extends BaseActivity implements RechargeQContract.View
 
          showProgress();
          JSONObject jsonObject = new JSONObject();
-         jsonObject.put("amount",Integer.valueOf(text_QBNumber));
+         jsonObject.put("amount", NumberFormatUtils.parseInteger(text_QBNumber));
          jsonObject.put("qq",text_qq);
          presenter.goRechargeQ(jsonObject);
                 break;

+ 7 - 1
app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java

@@ -31,6 +31,7 @@ import com.sheep.gamegroup.util.TestUtil;
 import com.sheep.gamegroup.util.TimeUtil;
 import com.sheep.gamegroup.util.UMConfigUtils;
 import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.utils.G;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -233,14 +234,19 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
                     @Override
                     public void onClick(View v) {
                         if(!ListUtil.hasIndex(etyList, i)){
+                            G.showToast(R.string.loading_data);
                             return;
                         }
                         TaskEty taskEty = etyList.get(i).getTask();
+                        if(taskEty == null){
+                            G.showToast(R.string.loading_data);
+                            return;
+                        }
                         taskEty.setRunTask(0);
                         taskEty.setRelease_task_id(etyList.get(i).getId());
                         taskEty.setName(etyList.get(i).getName());
                         taskEty.setAcceptedTaskId(etyList.get(i).getAccepted_task_id());
-                        Jump2View.getInstance().goDialogActivityView(context, taskEty, taskAcceptedEty);
+                        Jump2View.getInstance().goDialogActivityView(context, taskEty);
                     }
                 });
                 Glide.with(context)

+ 1 - 1
app/src/main/java/com/sheep/jiuyan/samllsheep/service/MonitorAppService.java

@@ -43,7 +43,7 @@ public class MonitorAppService extends AccessibilityService {
                 appRecord.setType_id(eventType);
                 appRecord.setClassName(className.toString());
                 appRecord.setPackageName(packageName.toString());
-                if(!textList.isEmpty())
+                if(ListUtil.getIndex(textList, 0) != null)
                     appRecord.setTag(textList.get(0).toString());
 
                 AppRecord lastAppRecord = SheepApp.getInstance().getLastAppRecord();

+ 2 - 2
gradle.properties

@@ -17,8 +17,8 @@
 # org.gradle.parallel=true
 #android.injected.build.model.only.versioned = 3
 
-VERSION_NAME=2.5.0
-VERSION_CODE=2005000
+VERSION_NAME=2.6.0
+VERSION_CODE=2006000
 ANDROID_COMPILE_SDK_VERSION=27
 ANDROID_BUILD_TOOLS_VERSION=27.0.2
 ANDROID_MIN_SDK_VERSION=18