瀏覽代碼

使用ActivityManager与UsageStatsManager来获取应用使用详情;统一对话框样式

zengjiebin 7 年之前
父節點
當前提交
357a7f7a39
共有 23 個文件被更改,包括 322 次插入304 次删除
  1. 0 3
      app/build.gradle
  2. 31 0
      app/src/main/java/com/sheep/gamegroup/model/entity/DialogConfig.java
  3. 3 0
      app/src/main/java/com/sheep/gamegroup/model/util/AutoTaskListUtil.java
  4. 79 38
      app/src/main/java/com/sheep/gamegroup/usage/AppUsageManager.java
  5. 6 4
      app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java
  6. 1 1
      app/src/main/java/com/sheep/gamegroup/util/MyDbManager.java
  7. 12 2
      app/src/main/java/com/sheep/gamegroup/util/TestUtil.java
  8. 53 5
      app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java
  9. 10 25
      app/src/main/java/com/sheep/gamegroup/view/activity/AskGetMoneyAct.java
  10. 5 3
      app/src/main/java/com/sheep/gamegroup/view/activity/DialogActivity.java
  11. 17 17
      app/src/main/java/com/sheep/gamegroup/view/activity/RealNameAuthenAct.java
  12. 2 2
      app/src/main/java/com/sheep/gamegroup/view/activity/TaskDetailAct.java
  13. 0 39
      app/src/main/java/com/sheep/gamegroup/view/dialog/DialogRealNameAuther.java
  14. 29 20
      app/src/main/java/com/sheep/jiuyan/samllsheep/service/FloatService.java
  15. 1 1
      app/src/main/res/layout/diag_account_abnormal.xml
  16. 33 20
      app/src/main/res/layout/dialog_notice_layout.xml
  17. 0 43
      app/src/main/res/layout/dialog_real_name_auther.xml
  18. 35 21
      app/src/main/res/layout/download_item_dialog.xml
  19. 0 55
      app/src/main/res/layout/x_ask_reward_dialog.xml
  20. 4 4
      app/src/main/res/layout/x_msg_dialog.xml
  21. 1 1
      app/src/main/res/layout/x_real_name_auther_layout.xml
  22. 二進制
      app/src/main/res/mipmap-xhdpi/try_dialog_x.webp
  23. 二進制
      app/src/main/res/mipmap-xxhdpi/try_dialog_x.webp

+ 0 - 3
app/build.gradle

@@ -249,9 +249,6 @@ dependencies {
     //极光
     compile files('libs/jcore-android-1.2.0.jar')
     compile files('libs/jpush-android-3.1.2.jar')
-    //获取其它应用运行情况
-
-    compile 'com.jaredrummler:android-processes:1.1.1'
 
 }
 static def releaseTime() {

+ 31 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/DialogConfig.java

@@ -4,24 +4,30 @@ import android.view.View;
 
 import com.sheep.jiuyan.samllsheep.R;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Created by realicing on 2018/6/6.
  * realicing@sina.com
  */
 public class DialogConfig {
     private String msg;
+    private int msgIndent;//缩进字符数
     private String title;
     private String btnLeftText;
     private View.OnClickListener btnLeftOnClickListener;
     private String btnRightText;
     private View.OnClickListener btnRightOnClickListener;
     private String msgMore;
+    private int msgMoreColor;//颜色资源
     private String tip;
     private boolean cancelable = true;//默认可以取消对话框,并显示close图标
     private boolean isFinish;
     private boolean btnLeftNotDissDialog;
     private int msgGravity;
 
+    private Map<String, String> colorMsgMap = new HashMap<>();
     public boolean isFinish() {
         return isFinish;
     }
@@ -39,6 +45,23 @@ public class DialogConfig {
         this.msg = msg;
         return this;
     }
+    public DialogConfig setMsgColor(String colorMsg, String color) {
+        colorMsgMap.put(colorMsg, color);
+        return this;
+    }
+
+    public Map<String, String> getColorMsgMap() {
+        return colorMsgMap;
+    }
+
+    public DialogConfig setMsgIndent(int msgIndent) {
+        this.msgIndent = msgIndent;
+        return this;
+    }
+
+    public int getMsgIndent() {
+        return msgIndent;
+    }
 
     public String getTitle() {
         return title;
@@ -93,6 +116,14 @@ public class DialogConfig {
         this.msgMore = msgMore;
         return this;
     }
+    public DialogConfig setMsgMoreColor(int msgMoreColor) {
+        this.msgMoreColor = msgMoreColor;
+        return this;
+    }
+
+    public int getMsgMoreColor() {
+        return msgMoreColor;
+    }
 
     public String getTip() {
         return tip;

+ 3 - 0
app/src/main/java/com/sheep/gamegroup/model/util/AutoTaskListUtil.java

@@ -164,6 +164,9 @@ public class AutoTaskListUtil {
 
 
     private long receiveTaskTime;//使用UsageStatsManager来计算应用使用时长时的开始计算时间
+    /**
+     * 重置比对时间  5.1及以上使用
+     */
     public void resetReceiveTaskTime(){//点击领取应用自动审核时,重置这个时间;提交领取奖励时也要重置这个时间
         receiveTaskTime = System.currentTimeMillis();
     }

+ 79 - 38
app/src/main/java/com/sheep/gamegroup/usage/AppUsageManager.java

@@ -17,8 +17,7 @@ import android.support.v7.app.AlertDialog;
 import android.text.TextUtils;
 import android.view.View;
 
-import com.jaredrummler.android.processes.AndroidProcesses;
-import com.jaredrummler.android.processes.models.AndroidAppProcess;
+import com.kfzs.duanduan.utils.ApkUtils;
 import com.sheep.gamegroup.model.entity.AppRecord;
 import com.sheep.gamegroup.model.entity.AppUsage;
 import com.sheep.gamegroup.model.entity.DialogConfig;
@@ -27,6 +26,7 @@ import com.sheep.gamegroup.util.ActivityManager;
 import com.sheep.gamegroup.util.ListUtil;
 import com.sheep.gamegroup.util.LogUtil;
 import com.sheep.gamegroup.util.MyDbManager;
+import com.sheep.gamegroup.util.SysAppUtil;
 import com.sheep.gamegroup.util.ViewUtil;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.G;
@@ -54,24 +54,38 @@ public class AppUsageManager {
 
     //记录前台app运行时长
     public void recordCurrentAppUsage() {
-        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {//android 7.0以上不支持
+//        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {//android 7.0以上不支持
+//            return;
+//        }
+//        List<AndroidAppProcess> processes = AndroidProcesses.getRunningForegroundApps(SheepApp.getInstance());
+//        AndroidAppProcess androidAppProcess = ListUtil.getLast(processes);
+//        if (androidAppProcess != null) {
+//            String packageName = androidAppProcess.name;
+//            String appName = null;
+//            try {
+//                PackageInfo packageInfo = androidAppProcess.getPackageInfo(SheepApp.getInstance(), 0);
+//                appName = packageInfo.applicationInfo.loadLabel(SheepApp.getInstance().getPackageManager()).toString();
+//
+//                LogUtil.println("getAppTime", appName, packageName);
+//            } catch (PackageManager.NameNotFoundException e) {
+//                e.printStackTrace();
+//            }
+
+        if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {//android 5.0以上不支持
             return;
         }
-        List<AndroidAppProcess> processes = AndroidProcesses.getRunningForegroundApps(SheepApp.getInstance());
-        AndroidAppProcess androidAppProcess = ListUtil.getLast(processes);
-        if (androidAppProcess != null) {
-            String packageName = androidAppProcess.name;
+        android.app.ActivityManager.RunningAppProcessInfo process = getAppProcessInfoInForeground();
+        if (process != null) {
+//                LogUtil.println("getRunningAppProcesses", process.processName, process.importance == android.app.ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND);
+            String packageName = process.processName;//没有packageName字段,可能会出问题
             String appName = null;
-            try {
-                PackageInfo packageInfo = androidAppProcess.getPackageInfo(SheepApp.getInstance(), 0);
+            PackageInfo packageInfo = ApkUtils.getPackageInfo(SheepApp.getInstance().getPackageName());
+            if (packageInfo != null)
                 appName = packageInfo.applicationInfo.loadLabel(SheepApp.getInstance().getPackageManager()).toString();
 
-                LogUtil.println("getAppTime", appName, packageName);
-            } catch (PackageManager.NameNotFoundException e) {
-                e.printStackTrace();
-            }
+            LogUtil.println("getAppTime", appName, packageName);
 
-            if(AutoTaskListUtil.getInstance().isLastAppRecord(packageName)){//仍然是之前的app
+            if (AutoTaskListUtil.getInstance().isLastAppRecord(packageName)) {//仍然是之前的app
                 return;
             }
 
@@ -95,6 +109,19 @@ public class AppUsageManager {
         }
     }
 
+    private android.app.ActivityManager.RunningAppProcessInfo getAppProcessInfoInForeground() {
+        android.app.ActivityManager manager = (android.app.ActivityManager) SheepApp.getInstance().getSystemService(Context.ACTIVITY_SERVICE);
+        List<android.app.ActivityManager.RunningAppProcessInfo> processList = manager == null ? null : manager.getRunningAppProcesses();
+        if(!ListUtil.isEmpty(processList)){
+            for (android.app.ActivityManager.RunningAppProcessInfo item : processList) {
+                if(item != null && item.importance == android.app.ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND){
+                    return item;
+                }
+            }
+        }
+        return null;
+    }
+
     /**
      * 需要开启查看应用使用情况的权限
      *
@@ -117,30 +144,34 @@ public class AppUsageManager {
                     appUsage.setLastTimeStamp(queryUsageStat.getLastTimeStamp());
                     appUsageList.add(appUsage);
                 }
-                MyDbManager.getInstance().saveOrUpdate(appUsageList);
-            }
+                MyDbManager.getInstance().saveOrUpdate(appUsageList);//保存或者更新AppUsage,以便之后用来显示时间
+             }
             return isEmpty;
         } else{
             return false;
         }
     }
 
+    /**
+     * 尝试打开权限对话框 5.1及以上使用
+     * @param isSaveData 是否保存AppUsage数据,因为AppUsage通过系统获取的数据转化而来,而且,不切换应用时不会改变,而要实时显示时间就必须缓冲数据
+     */
     public void tryOpenLookAppUsageStatsPermisson(boolean isSaveData) {
-            if (!needOpenLookAppUsageStatsPermisson(isSaveData)) {//不需要开启
-                return;
-            }
-            if(AutoTaskListUtil.getInstance().isShowing()){//对话框仍在显示,就不显示 打开权限功能的对话框
-                return;
-            }
-            LogUtil.println("tryOpenLookAppUsageStatsPermisson", "start");
-            AutoTaskListUtil.getInstance().clearAlertDialog();
-            if(!AutoTaskListUtil.getInstance().isEmpty()){
-                LogUtil.println("tryOpenLookAppUsageStatsPermisson", "notEmpty");
-                showAccessibilityDialog();
-            } else {
-                LogUtil.println("tryOpenLookAppUsageStatsPermisson","else");
-            }
-            LogUtil.println("tryOpenLookAppUsageStatsPermisson","end");
+        if (!needOpenLookAppUsageStatsPermisson(isSaveData)) {//不需要开启
+            return;
+        }
+        if(AutoTaskListUtil.getInstance().isShowing()){//对话框仍在显示,就不显示 打开权限功能的对话框
+            return;
+        }
+        LogUtil.println("tryOpenLookAppUsageStatsPermisson", "start");
+        AutoTaskListUtil.getInstance().clearAlertDialog();
+        if(!AutoTaskListUtil.getInstance().isEmpty()){
+            LogUtil.println("tryOpenLookAppUsageStatsPermisson", "notEmpty");
+            showAccessibilityDialog();
+        } else {
+            LogUtil.println("tryOpenLookAppUsageStatsPermisson","else");
+        }
+        LogUtil.println("tryOpenLookAppUsageStatsPermisson","end");
     }
     public void showAccessibilityDialog() {
         AlertDialog tipToOpernAccessibilityDialog = ViewUtil.showMsgDialog(SheepApp.getInstance(), new DialogConfig().setTitle("温馨提示!")
@@ -203,7 +234,8 @@ public class AppUsageManager {
                         if (totalTimeMap.containsKey(packageName) && totalTimeMap.get(packageName) == totalTime) {
                             totalTime += time - timeMap.get(packageName);
                         } else {
-                            totalTimeMap.put(packageName, totalTime);
+                            totalTimeMap.put(packageName, totalTime);//TODO 这里应该还要保存数据到数据库
+                            MyDbManager.getInstance().saveOrUpdate(appUsage);
                             timeMap.put(packageName, time);
                         }
                         return Math.max(0, totalTime - saveTotalTime);
@@ -218,13 +250,23 @@ public class AppUsageManager {
             }
         }
         if(packageName == null) {//为空时需要获取前台的packageName
-            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {//android 7.0以上不支持
+//            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {//android 7.0以上不支持
+//                return 0;
+//            }
+            //compile 'com.jaredrummler:android-processes:1.1.1'
+//            List<AndroidAppProcess> processes = AndroidProcesses.getRunningForegroundApps(SheepApp.getInstance());
+//            AndroidAppProcess androidAppProcess = ListUtil.getLast(processes);
+//            if (androidAppProcess != null) {
+//                packageName = androidAppProcess.name;
+//                appUsage.setPackageName(packageName);
+//            }
+
+            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {//android 5.0以上不支持
                 return 0;
             }
-            List<AndroidAppProcess> processes = AndroidProcesses.getRunningForegroundApps(SheepApp.getInstance());
-            AndroidAppProcess androidAppProcess = ListUtil.getLast(processes);
-            if (androidAppProcess != null) {
-                packageName = androidAppProcess.name;
+            android.app.ActivityManager.RunningAppProcessInfo process = getAppProcessInfoInForeground();
+            if(process != null ) {
+                packageName = process.processName;//没有packageName字段,可能会出问题
                 appUsage.setPackageName(packageName);
             }
             if(TextUtils.isEmpty(packageName)){//没有获取到当前正在运行的应用
@@ -235,7 +277,6 @@ public class AppUsageManager {
 
         if(AutoTaskListUtil.getInstance().isLastAppRecord(packageName)){
             runTime +=  System.currentTimeMillis() - AutoTaskListUtil.getInstance().getLastTime();
-            AutoTaskListUtil.getInstance().setLastTime(System.currentTimeMillis());
         }
         return runTime;
     }

+ 6 - 4
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -28,6 +28,7 @@ import com.kfzs.duanduan.fragment.FgtSmallSheep;
 import com.kfzs.duanduan.utils.dlg.SkipUtils;
 import com.sheep.gamegroup.absBase.BaseActivity;
 import com.sheep.gamegroup.alipay.PayResult;
+import com.sheep.gamegroup.model.entity.AppUsage;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.Ext;
 import com.sheep.gamegroup.model.entity.HomeListEntity;
@@ -491,11 +492,12 @@ public class CommonUtil {
      * 添加应用自动审核任务
      */
     public void setTAskEnty(TaskEty tAskEnty){
-        if(AutoTaskListUtil.getInstance().addTask(tAskEnty)){
-            AutoTaskListUtil.getInstance().resetReceiveTaskTime();
-            AppUsageManager.getInstance().tryOpenLookAppUsageStatsPermisson(true);
-        } else {
+        if(AutoTaskListUtil.getInstance().addTask(tAskEnty)){//添加任务时
+            AutoTaskListUtil.getInstance().resetReceiveTaskTime();//重置比对时间  5.1及以上使用
+            AppUsageManager.getInstance().tryOpenLookAppUsageStatsPermisson(true);//尝试打开权限对话框 5.1及以上使用
+        } else {//每次取消任务都重置记录
             AutoTaskListUtil.getInstance().initTaskList();
+            MyDbManager.getInstance().removeAppRecord();//删除记录表 5.0及以下使用
         }
     }
 

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

@@ -141,7 +141,7 @@ public class MyDbManager {
      *删除表
      * @param o
      */
-    private void deleteTable(Class<?> o){
+    public void deleteTable(Class<?> o){
         try {
             db.dropTable(o);
         }catch (Exception e){

File diff suppressed because it is too large
+ 12 - 2
app/src/main/java/com/sheep/gamegroup/util/TestUtil.java


+ 53 - 5
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -44,6 +44,8 @@ import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.util.Locale;
+import java.util.Map;
 
 import rx.functions.Action1;
 
@@ -245,10 +247,10 @@ public class ViewUtil {
         } else {
             webView.setVisibility(View.GONE);
             String[] items = content.split("\n");
-            StringBuilder stringBuilder = new StringBuilder("\t\t\t\t");
+            StringBuilder stringBuilder = new StringBuilder(INDENT);
             for (int i = 0; i < items.length; i++) {
                 if (i != 0)
-                    stringBuilder.append("\n\t\t\t\t");
+                    stringBuilder.append("\n").append(INDENT);
                 stringBuilder.append(items[i]);
             }
             textView.setText(stringBuilder.toString());
@@ -314,7 +316,31 @@ public class ViewUtil {
                 dialog_msg.setVisibility(View.GONE);
             } else {
                 dialog_msg.setVisibility(View.VISIBLE);
-                dialog_msg.setText(msg);
+                if (dialogConfig.getMsgIndent() > 0) {
+                    msg = addIndent(msg, dialogConfig.getMsgIndent());
+                }
+                Map<String, String> colorMsgMap = dialogConfig.getColorMsgMap();
+                if(colorMsgMap.isEmpty()) {
+                    dialog_msg.setText(msg);
+                } else {
+                    int index = 0;
+                    for (Map.Entry<String, String> entry : colorMsgMap.entrySet()) {
+                        String key = entry.getKey();
+                        String value = entry.getValue();//例如红色 #FF0000
+                        if(!TextUtils.isEmpty(key) && !TextUtils.isEmpty(value) && msg.contains(key) && value.length() == 7){
+                            int length = msg.length();
+                            if(index < length){
+                                int position = msg.indexOf(key, index);
+                                String start = msg.substring(0, position);
+                                String middle = String.format(Locale.CHINA, "<font color='%s'>%s</font>", value, key);
+                                String end = msg.substring(position + key.length());
+                                index = (start+middle).length();
+                                msg = start + middle + end;
+                            }
+                        }
+                    }
+                    dialog_msg.setText(Html.fromHtml(msg));
+                }
                 int msgGravity = dialogConfig.getMsgGravity();
                 if (msgGravity != Gravity.NO_GRAVITY)
                     dialog_msg.setGravity(msgGravity);
@@ -333,6 +359,8 @@ public class ViewUtil {
             } else {
                 dialog_msg_more.setVisibility(View.VISIBLE);
                 dialog_msg_more.setText(msgMore);
+                if(dialogConfig.getMsgMoreColor() > 0)
+                    dialog_msg_more.setTextColor(mContext.getResources().getColor(dialogConfig.getMsgMoreColor()));
             }
         }
 
@@ -573,13 +601,33 @@ public class ViewUtil {
         }
     }
 
-    public static void setText(TextView textView, String string) {
+    public static void setText(TextView textView, String msg) {
+        if(textView != null){
+            textView.setText(TextUtils.isEmpty(msg) ? "" : msg);
+        }
+
+    }
+    public static final String INDENT = "\u3000";//用特殊字符显示空白的缩进字符
+    public static void setText(TextView textView, String msg, int indent) {
         if(textView != null){
-            textView.setText(TextUtils.isEmpty(string) ? "" : string);
+            textView.setText(addIndent(msg, indent));
         }
 
     }
 
+    public static String addIndent(String msg, int indent) {
+        if(indent > 0){
+            StringBuilder stringBuilder = new StringBuilder();
+            for (int i = 0; i < indent; i++) {
+                stringBuilder.append(INDENT);
+            }
+            if(!TextUtils.isEmpty(msg))
+                stringBuilder.append(msg);
+            return stringBuilder.toString();
+        }
+        return msg;
+    }
+
     /**
      * show ProgressDialog
      */

+ 10 - 25
app/src/main/java/com/sheep/gamegroup/view/activity/AskGetMoneyAct.java

@@ -13,6 +13,7 @@ import com.kfzs.duanduan.fragment.PagerAdapter;
 import com.sheep.gamegroup.absBase.BaseUMActivity;
 import com.sheep.gamegroup.di.components.DaggerAskGetMoneyComponent;
 import com.sheep.gamegroup.di.modules.AskGetMoneyModule;
+import com.sheep.gamegroup.model.entity.DialogConfig;
 import com.sheep.gamegroup.model.entity.FriendAndAwardEntity;
 import com.sheep.gamegroup.presenter.AskGetMoneyContract;
 import com.sheep.gamegroup.presenter.AskGetMoneyPresenter;
@@ -121,31 +122,15 @@ public class AskGetMoneyAct extends BaseUMActivity implements UMShareListener, A
 
 
     private void shareToLink() {
-        AlertDialog.Builder builder = new AlertDialog.Builder(this);
-        View view = View.inflate(this, R.layout.x_ask_reward_dialog, null);
-        builder.setView(view);
-        final AlertDialog dialog = builder.create();
-//        dialog.getWindow().setDimAmount(0.1f);
-//        dialog.getWindow().setBackgroundDrawable(new ColorDrawable(0));
-        TextView tv_link=view.findViewById(R.id.tv_link);
-        tv_link.setText(mEntity.getShare_link());
-        TextView withdrawal=view.findViewById(R.id.withdrawal);
-        ImageView iv=view.findViewById(R.id.iv_close);
-        dialog.show();
-        iv.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                dialog.dismiss();
-            }
-        });
-        withdrawal.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                StringUtils.CopyText(AskGetMoneyAct.this,mEntity.getShare_link());
-                G.showToast("复制链接成功");
-                dialog.dismiss();
-            }
-        });
+        ViewUtil.showMsgDialog(this, new DialogConfig().setTitle("分享链接").setMsg(mEntity.getShare_link())
+            .setMsgMore("通过连接加入小绵羊即可成为你的好友").setMsgMoreColor(R.color.txt_black_9e9c9c)
+            .setBtnLeftText("复制链接").setBtnLeftOnClickListener(new View.OnClickListener() {
+                        @Override
+                        public void onClick(View view) {
+                            StringUtils.CopyText(AskGetMoneyAct.this,mEntity.getShare_link());
+                            G.showToast("复制链接成功");
+                        }
+                    }));
     }
 
 

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

@@ -86,6 +86,8 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
     WebView webview;
     @BindView(R.id.start_task_tv)
     TextView start_task_tv;
+    @BindView(R.id.dialog_title)
+    TextView dialog_title;
     @BindView(R.id.listview)
     MyListview listview;
     private TaskEty taskEty;
@@ -130,6 +132,7 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                 .into(dialogItemIconIv);
         dialogItemNameTv.setText(taskEty.getName());
         dialogItemSizeTv.setText( taskEty.getPackage_size() + "M");
+        dialog_title.setText(taskEty.getTask_name());
 
         preference.getTaskState(taskEty.getRelease_task_id());
 
@@ -159,7 +162,6 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                 return true;
             }
         });
-
         stateAdapter = new TaskStateAdapter(activity, stateList);
         listview.setAdapter(stateAdapter);
         stateAdapter.notifyDataSetChanged();
@@ -167,14 +169,14 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
 
     }
 
-    @OnClick({R.id.doalog_item_get_rewards_tv, R.id.dialog_item_x, R.id.start_task_tv})
+    @OnClick({R.id.doalog_item_get_rewards_tv, R.id.dialog_close, R.id.start_task_tv})
     public void onViewClicked(View view) {
         switch (view.getId()) {
             case R.id.doalog_item_get_rewards_tv:
                 Jump2View.getInstance().tryGoWithdrawal(activity, null);
                 finish();
                 break;
-            case R.id.dialog_item_x:
+            case R.id.dialog_close:
                 finish();
                 break;
             case R.id.start_task_tv:

+ 17 - 17
app/src/main/java/com/sheep/gamegroup/view/activity/RealNameAuthenAct.java

@@ -2,12 +2,11 @@ package com.sheep.gamegroup.view.activity;
 
 import android.content.Intent;
 import android.text.TextUtils;
+import android.view.Gravity;
 import android.view.View;
 import android.widget.EditText;
 import android.widget.TextView;
 
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
 import com.sheep.gamegroup.absBase.BaseActivity;
 import com.sheep.gamegroup.di.components.DaggerRealNameAutherComponent;
 import com.sheep.gamegroup.di.modules.RealNameAutherModule;
@@ -24,9 +23,7 @@ import com.sheep.gamegroup.util.StringUtils;
 import com.sheep.gamegroup.util.TestUtil;
 import com.sheep.gamegroup.util.UMConfigUtils;
 import com.sheep.gamegroup.util.ViewUtil;
-import com.sheep.gamegroup.view.dialog.DialogRealNameAuther;
 import com.sheep.jiuyan.samllsheep.R;
-
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
@@ -131,7 +128,9 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
                         tvSubmit.setVisibility(View.GONE);
                     } else {
                         tvSubmit.setVisibility(View.VISIBLE);
-                        DialogRealNameAuther.showDialog(RealNameAuthenAct.this);
+                        ViewUtil.showMsgDialog(RealNameAuthenAct.this, new DialogConfig().setTitle("温馨提示")
+                                .setMsg("根据国家相关法律规定,为保障线上交易活动的安全,参与互联网大额提现等资金活动时需要进行实名认证。\n完成实名认证后,再次提现将不需要进行验证。")
+                                .setMsgGravity(Gravity.START).setMsgIndent(2).setBtnLeftText("确定"));
                     }
 
                 }
@@ -159,11 +158,11 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
 
         }
         EventBus.getDefault().post(change);
-        updateUserInfo(new Action1<UserEntity>(){
+        updateUserInfo(new Action1<UserEntity>() {
 
             @Override
             public void call(UserEntity userEntity) {
-                if(userEntity != null)
+                if (userEntity != null)
                     if (whereFrom == 1) {
                         Jump2View.getInstance().goWithdrawal(RealNameAuthenAct.this);
                     }
@@ -183,7 +182,7 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
                     @Override
                     public void onError(BaseMessage baseMessage) {
                         G.showToast(baseMessage.getMsg() + "");
-                        if(action1 != null)
+                        if (action1 != null)
                             action1.call(null);
 
                     }
@@ -191,7 +190,7 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
                     @Override
                     public void onNext(BaseMessage baseMessage) {
                         UserEntity userEntity = baseMessage.getData(UserEntity.class);
-                        if(userEntity != null) {
+                        if (userEntity != null) {
                             mEntity = userEntity;
                             try {
                                 MyDbManager.getInstance().saveOrUpdateUser(userEntity);
@@ -199,7 +198,7 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
                                 e.printStackTrace();
                             }
                         }
-                        if(action1 != null)
+                        if (action1 != null)
                             action1.call(mEntity);
                     }
                 });
@@ -229,14 +228,14 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
     }
 
     public void trySubmit() {
-        if(mEntity == null){
+        if (mEntity == null) {
             try {
                 mEntity = MyDbManager.getInstance().dbFindUser();
             } catch (DbException e) {
                 e.printStackTrace();
             }
         }
-        if(mEntity == null){
+        if (mEntity == null) {
             G.showToast(R.string.unknown_error);
             return;
         }
@@ -250,7 +249,7 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
         String bankCard;
         String bankCardMobile;
         if (TextUtils.isEmpty((realName = etName.getText().toString()))) {
-            if(TestUtil.isTestRecharge()){
+            if (TestUtil.isTestRecharge()) {
                 NetSuccess(0, "测试成功", "");
                 return;
             }
@@ -287,14 +286,15 @@ public class RealNameAuthenAct extends BaseActivity implements RealNameAutherCon
         }
         map.put("bank_card_mobile", bankCardMobile);
 
-        ViewUtil.showMsgDialog(this, new DialogConfig().setTitle("重要提示").setMsgMore(String.format(Locale.CHINA,"你已执行%d次实名认证操作",mEntity.getCertification_count()))
-                .setMsg("实名认证首次免费。请务必确认您所提交的认证信息真实有效。若因信息填写错误造成认证失败。再次申请认证时需扣除您0.5元绵羊币作为认证费用,请务必谨慎填写认证信息。")
+        ViewUtil.showMsgDialog(this, new DialogConfig().setTitle("重要提示").setMsgMore(String.format(Locale.CHINA, "你已执行%d次实名认证操作", mEntity.getCertification_count()))
+                .setMsg("实名认证首次免费。请务必确认您所提交的认证信息真实有效。若因信息填写错误造成认证失败。再次申请认证时需扣除您0.5绵羊币/次作为认证费用,请务必谨慎填写认证信息。")
+                .setMsgColor("0.5绵羊币/次", "#FF0000").setMsgIndent(2).setMsgGravity(Gravity.START)
                 .setBtnLeftText("返回修改").setBtnRightText("确认提交")
                 .setBtnRightOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View view) {
-                        if(mEntity != null)
-                            mEntity.setCertification_count(mEntity.getCertification_count()+1);
+                        if (mEntity != null)
+                            mEntity.setCertification_count(mEntity.getCertification_count() + 1);
                         presenter.getTask(map);
                         UMConfigUtils.onEvent(UMConfigUtils.Event.USER_AUTHENTICATION);
                     }

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

@@ -623,8 +623,8 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
                 return;
             }
 
-            MyDbManager.getInstance().removeAppRecord();
-            AutoTaskListUtil.getInstance().resetReceiveTaskTime();
+            MyDbManager.getInstance().removeAppRecord();//删除记录表 5.0及以下使用
+            AutoTaskListUtil.getInstance().resetReceiveTaskTime();//重置比对时间  5.1及以上使用
             
             LogUtil.println("MonitorAppService runTime = "+runTime);
             object.put("task_time", runTime/1000);

+ 0 - 39
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogRealNameAuther.java

@@ -1,39 +0,0 @@
-package com.sheep.gamegroup.view.dialog;
-
-import android.app.Activity;
-import android.support.v7.app.AlertDialog;
-import android.view.View;
-
-import com.kfzs.duanduan.utils.dlg.ViewFindUtils;
-import com.sheep.jiuyan.samllsheep.R;
-
-public class DialogRealNameAuther {
-
-
-    public static AlertDialog showDialog(final Activity activity) {
-        View view = View.inflate(activity, R.layout.dialog_real_name_auther, null);
-        final AlertDialog mAlertDialog = new AlertDialog.Builder(activity, R.style.MyDialogActivityTheme)
-                .setView(view)
-                .create();
-        ViewFindUtils.find(view, R.id.dialog_sure)
-                .setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        mAlertDialog.dismiss();
-                    }
-                });
-        ViewFindUtils.find(view, R.id.dialog_close)
-                .setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        mAlertDialog.dismiss();
-                    }
-                });
-        try {
-            mAlertDialog.show();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        return mAlertDialog;
-    }
-}

+ 29 - 20
app/src/main/java/com/sheep/jiuyan/samllsheep/service/FloatService.java

@@ -1,5 +1,6 @@
 package com.sheep.jiuyan.samllsheep.service;
 
+import android.app.ActivityManager;
 import android.app.Service;
 import android.content.Context;
 import android.content.DialogInterface;
@@ -29,6 +30,7 @@ import com.sheep.gamegroup.model.entity.DialogConfig;
 import com.sheep.gamegroup.model.util.AutoTaskListUtil;
 import com.sheep.gamegroup.usage.AppUsageManager;
 import com.sheep.gamegroup.util.Jump2View;
+import com.sheep.gamegroup.util.ListUtil;
 import com.sheep.gamegroup.util.LogUtil;
 import com.sheep.gamegroup.util.TestUtil;
 import com.sheep.gamegroup.util.TimeUtil;
@@ -40,6 +42,7 @@ import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.SpUtils;
 
 import java.util.HashMap;
+import java.util.List;
 import java.util.Locale;
 import java.util.concurrent.TimeUnit;
 
@@ -65,13 +68,14 @@ public class FloatService extends Service {
 
     private void startTimer() {
         if (subscription == null)
-            subscription = Observable.interval(10_000L, TimeUnit.MILLISECONDS)
+            subscription = Observable.interval(1_000L, TimeUnit.MILLISECONDS)
                     .subscribeOn(Schedulers.io())
                     .observeOn(AndroidSchedulers.mainThread())
                     .subscribe(new Action1<Long>() {
                         @Override
                         public void call(Long count) {
                             LogUtil.println("FloatService", "count", "=", count);
+
                             if (!TextUtils.isEmpty(SpUtils.getOpenId(SheepApp.getInstance())) &&!AutoTaskListUtil.getInstance().isEmpty()) {//登录情况下并且有应用自动审核任务才会记录
                                 if(count % 60 == 0){
                                     AppUsageManager.getInstance().tryOpenLookAppUsageStatsPermisson(false);
@@ -85,7 +89,8 @@ public class FloatService extends Service {
                                 message.obj = count;
                                 handler.sendMessage(message);
                             } else {
-                                handler.sendEmptyMessage(2);
+                                removeMessages();
+                                mHandler.sendEmptyMessage(OPERATION_HIDE);
                             }
 
                         }
@@ -118,9 +123,6 @@ public class FloatService extends Service {
                     case 1:
                         onHandleMessage1();
                         break;
-                    case 2:
-                        onHandleMessage2();
-                        break;
                 }
             } catch (Exception e) {
                 e.printStackTrace();
@@ -132,18 +134,18 @@ public class FloatService extends Service {
             //更新悬浮窗
             long totalTimeInForeground = AppUsageManager.getInstance().getTotalTimeInForeground(appUsage);
             if(!AutoTaskListUtil.getInstance().hasTask(appUsage.getPackageName())){
-                onHandleMessage2();
+                FloatService.this.removeMessages();
+                mHandler.sendEmptyMessage(OPERATION_HIDE);
                 return;
             }
+            if(!isAdded){
+                wm.addView(floatView, params);
+                isAdded = true;
+            }
             btn_floatView.setText(String.format(Locale.CHINA,"约运行%s",TimeUtil.getHours(totalTimeInForeground)));
-            floatView.setAlpha(1.0f);
             wm.updateViewLayout(floatView, params);
         }
 
-        private void onHandleMessage2() {
-            floatView.setAlpha(0.0f);
-            wm.updateViewLayout(floatView, params);
-        }
     };
     @Override
     public void onDestroy() {
@@ -175,11 +177,19 @@ public class FloatService extends Service {
     public int onStartCommand(Intent intent, int flags, int startId) {
 //        int operation = intent.getIntExtra(OPERATION, OPERATION_SHOW);
         if(intent != null) {
-            int operation = intent.getBooleanExtra("isShow", true) ? OPERATION_SHOW : OPERATION_HIDE;
-            mHandler.sendEmptyMessage(operation);
+            if(intent.getBooleanExtra("isShow", true)){
+                mHandler.sendEmptyMessageDelayed(OPERATION_SHOW, 1000L);
+            } else {
+                removeMessages();
+                mHandler.sendEmptyMessage(OPERATION_HIDE);
+            }
         }
         return super.onStartCommand(intent, flags, startId);
     }
+    private void removeMessages(){
+        mHandler.removeMessages(OPERATION_HIDE);
+        mHandler.removeMessages(OPERATION_SHOW);
+    }
 
     private Handler mHandler = new TwHandler(this);
 
@@ -196,9 +206,9 @@ public class FloatService extends Service {
                 case OPERATION_SHOW:
                     if (!service.isAdded) {
                         try {
-                            service.floatView.setAlpha(1.0f);
-                            wm.updateViewLayout(service.floatView, params);
-//                            wm.addView(service.floatView, params);
+//                            service.floatView.setAlpha(1.0f);
+//                            wm.updateViewLayout(service.floatView, params);
+                            wm.addView(service.floatView, params);
                         } catch (Exception e) {
                             e.printStackTrace();
                         }
@@ -209,9 +219,9 @@ public class FloatService extends Service {
                 case HANDLE_CHECK_ACTIVITY:
                     if (service.isAdded) {
                         try {
-                            service.floatView.setAlpha(0.0f);
-                            wm.updateViewLayout(service.floatView, params);
-//                            wm.removeViewImmediate(service.floatView);
+//                            service.floatView.setAlpha(0.0f);
+//                            wm.updateViewLayout(service.floatView, params);
+                            wm.removeViewImmediate(service.floatView);
                         } catch (Exception e) {
                             e.printStackTrace();
                         }
@@ -306,7 +316,6 @@ public class FloatService extends Service {
         params.height = WindowManager.LayoutParams.WRAP_CONTENT;
         params.gravity = Gravity.START | Gravity.BOTTOM;
 
-        floatView.setAlpha(0.0f);
         wm.addView(floatView, params);
         isAdded = true;
     }

+ 1 - 1
app/src/main/res/layout/diag_account_abnormal.xml

@@ -76,6 +76,6 @@
                 android:layout_height="22dp"
                 android:padding="2dp"
                 android:layout_alignParentEnd="true"
-                android:src="@mipmap/try_dialog_x"/>
+                android:src="@mipmap/close"/>
         </RelativeLayout>
 </FrameLayout>

+ 33 - 20
app/src/main/res/layout/dialog_notice_layout.xml

@@ -7,18 +7,20 @@
     <RelativeLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:orientation="horizontal"
         android:layout_gravity="center"
-        android:padding="@dimen/content_padding_small"
-        android:background="@drawable/x_shap_shadow_bg_rectgangle_white">
+        android:layout_margin="@dimen/dp_10">
 
         <LinearLayout
+            android:id="@+id/dialog_center_ll"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:orientation="vertical"
-            android:layout_margin="@dimen/content_padding_10"
-            android:padding="@dimen/content_padding_20"
-            android:gravity="center">
+            android:paddingTop="64dp"
+            android:background="@drawable/shape_white_solid_rectangle"
+            android:gravity="center"
+            android:paddingBottom="@dimen/dp_10"
+            android:paddingStart="@dimen/dp_10"
+            android:paddingEnd="@dimen/dp_10"
+            android:orientation="vertical">
 
             <TextView
                 android:id="@+id/title_tv"
@@ -104,38 +106,49 @@
                 android:layout_marginTop="@dimen/content_padding_10"
                 android:orientation="horizontal">
                 <TextView
-                    android:id="@+id/dialog_action"
+                    android:id="@+id/dialog_sure"
                     android:layout_width="0dp"
                     android:layout_weight="5"
                     android:layout_height="40dp"
                     android:gravity="center"
-                    android:text="取消"
-                    android:textColor="@color/white"
-                    android:background="@drawable/sp_bg_gradient_rectangle_blue"
+                    android:text="确定"
+                    android:textColor="@color/btn_color_main"
+                    android:background="@drawable/selector_button_full_main"
                     android:textSize="@dimen/text_size_15" />
                 <View
                     android:layout_width="0dp"
                     android:layout_height="wrap_content"
                     android:layout_weight="1"/>
                 <TextView
-                    android:id="@+id/dialog_sure"
+                    android:id="@+id/dialog_action"
                     android:layout_width="0dp"
                     android:layout_weight="5"
                     android:layout_height="40dp"
-                    android:background="@drawable/sp_bg_gradient_rectangle_yellow2"
+                    android:background="@drawable/selector_button_stroke_main"
                     android:gravity="center"
-                    android:text="确定"
-                    android:textColor="@color/white"
+                    android:text="取消"
+                    android:textColor="@color/btn_color_main_stroke"
                     android:textSize="@dimen/text_size_15" />
             </LinearLayout>
-
         </LinearLayout>
+        <TextView
+            android:id="@+id/dialog_title"
+            android:layout_width="match_parent"
+            android:layout_height="54dp"
+            android:text="提示"
+            android:textSize="20sp"
+            android:gravity="center"
+            android:textColor="@android:color/white"
+            android:padding="@dimen/dp_10"
+            android:background="@drawable/shape_main_solid_rectangle_top" />
 
         <ImageView
             android:id="@+id/dialog_close"
-            android:layout_width="30dp"
-            android:layout_height="30dp"
-            android:layout_alignParentEnd="true"
-            android:src="@mipmap/try_dialog_x"/>/>
+            android:layout_width="40dp"
+            android:layout_height="40dp"
+            android:layout_below="@+id/dialog_center_ll"
+            android:layout_centerHorizontal="true"
+            android:layout_marginTop="@dimen/content_padding_30"
+            android:src="@mipmap/close" />
     </RelativeLayout>
 </merge>

+ 0 - 43
app/src/main/res/layout/dialog_real_name_auther.xml

@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <RelativeLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="horizontal">
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:orientation="vertical"
-            android:padding="@dimen/content_padding_10"
-            android:gravity="center"
-            android:background="@drawable/x_shap_shadow_bg_rectgangle_white">
-
-            <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_margin="@dimen/content_padding_30"
-                android:lineSpacingExtra="@dimen/content_padding_8"
-                android:text="根据国家相关法律规定,为保障线上交易活动得安全,参与互联网大额提现等资金活动时需要进行实名认证。完成实名认证后,提现将不需要再进行验证。"
-                android:textColor="#404040"
-                android:textSize="@dimen/text_size_12" />
-
-                <TextView
-                    android:id="@+id/dialog_sure"
-                    android:text="确定"
-                    style="@style/style_button"
-                    android:layout_width="200dp"/>
-
-        </LinearLayout>
-
-        <ImageView
-            android:id="@+id/dialog_close"
-            android:layout_width="30dp"
-            android:layout_height="30dp"
-            android:layout_alignParentEnd="true"
-            android:src="@mipmap/try_dialog_x"/>
-    </RelativeLayout>
-</FrameLayout>

+ 35 - 21
app/src/main/res/layout/download_item_dialog.xml

@@ -1,27 +1,29 @@
 <?xml version="1.0" encoding="utf-8"?>
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<merge xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
-    <ScrollView
+    <RelativeLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:layout_centerInParent="true"
-        android:layout_margin="@dimen/content_padding_30"
-        android:scrollbars="none">
+        android:layout_gravity="center"
+        android:layout_margin="@dimen/dp_10">
 
-        <RelativeLayout
+        <ScrollView
+            android:id="@+id/dialog_center_ll"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:minWidth="300dp"
-            android:minHeight="196dp"
-            android:orientation="horizontal">
+            android:paddingTop="64dp"
+            android:background="@drawable/shape_white_solid_rectangle"
+            android:gravity="center"
+            android:paddingBottom="@dimen/dp_10"
+            android:paddingStart="@dimen/dp_10"
+            android:paddingEnd="@dimen/dp_10"
+            android:scrollbars="none">
 
             <RelativeLayout
                 android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:padding="@dimen/content_padding_20"
-                android:background="@drawable/x_shap_shadow_bg_rectgangle_white">
+                android:layout_height="match_parent">
 
                 <ImageView
                     android:id="@+id/dialog_item_icon_iv"
@@ -115,13 +117,25 @@
                     android:visibility="gone"/>
 
             </RelativeLayout>
+        </ScrollView>
+        <TextView
+            android:id="@+id/dialog_title"
+            android:layout_width="match_parent"
+            android:layout_height="54dp"
+            android:text="提示"
+            android:textSize="20sp"
+            android:gravity="center"
+            android:textColor="@android:color/white"
+            android:padding="@dimen/dp_10"
+            android:background="@drawable/shape_main_solid_rectangle_top" />
 
-            <ImageView
-                android:id="@+id/dialog_item_x"
-                android:layout_width="30dp"
-                android:layout_height="30dp"
-                android:layout_alignParentEnd="true"
-                android:src="@mipmap/try_dialog_x"/>
-        </RelativeLayout>
-    </ScrollView>
-</RelativeLayout>
+        <ImageView
+            android:id="@+id/dialog_close"
+            android:layout_width="40dp"
+            android:layout_height="40dp"
+            android:layout_below="@+id/dialog_center_ll"
+            android:layout_centerHorizontal="true"
+            android:layout_marginTop="@dimen/content_padding_30"
+            android:src="@mipmap/close" />
+    </RelativeLayout>
+</merge>

+ 0 - 55
app/src/main/res/layout/x_ask_reward_dialog.xml

@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="vertical">
-
-    <ImageView
-        android:id="@+id/iv_close"
-        android:layout_width="30dp"
-        android:layout_height="30dp"
-        android:src="@mipmap/try_dialog_x"
-        android:layout_gravity="right"
-        />
-
-    <LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:orientation="vertical"
-        android:layout_marginLeft="20dp"
-        android:layout_marginRight="20dp"
-        android:layout_marginBottom="20dp"
-        android:layout_marginTop="2dp"
-        >
-        <TextView
-            android:id="@+id/tv_link"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginLeft="20dp"
-            android:layout_marginRight="20dp"
-            android:textSize="@dimen/text_size_15"
-            android:textColor="@color/txt_black_9e9c9c"
-            android:layout_gravity="left"
-            android:lines="2"
-            />
-        <TextView
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:text="通过连接加入小绵羊即可成为你的好友"
-            android:textSize="@dimen/text_size_15"
-            android:textColor="@color/txt_black_9e9c9c"
-            android:layout_gravity="center"
-            android:layout_marginTop="20dp"
-            />
-
-        <TextView
-            android:id="@+id/withdrawal"
-            style="@style/style_button"
-            android:text="复制链接"
-            android:layout_marginTop="20dp"
-            android:layout_marginBottom="20dp"
-            android:layout_marginLeft="100dp"
-            android:layout_marginRight="100dp"/>
-
-    </LinearLayout>
-</LinearLayout>

+ 4 - 4
app/src/main/res/layout/x_msg_dialog.xml

@@ -9,8 +9,8 @@
         android:layout_height="wrap_content"
         android:layout_marginLeft="10dp"
         android:layout_marginRight="10dp"
-        android:layout_marginTop="@dimen/content_padding_20"
-        android:layout_marginBottom="@dimen/content_padding_20"
+        android:layout_marginTop="@dimen/dp_10"
+        android:layout_marginBottom="@dimen/dp_10"
         android:lineSpacingExtra="4dp"
         android:text="内容"
         android:gravity="center"
@@ -22,8 +22,8 @@
         android:layout_height="wrap_content"
         android:layout_marginLeft="10dp"
         android:layout_marginRight="10dp"
-        android:layout_marginTop="@dimen/content_padding_20"
-        android:layout_marginBottom="@dimen/content_padding_20"
+        android:layout_marginTop="@dimen/dp_10"
+        android:layout_marginBottom="@dimen/dp_10"
         android:lineSpacingExtra="4dp"
         android:text="内容"
         android:gravity="center_horizontal"

+ 1 - 1
app/src/main/res/layout/x_real_name_auther_layout.xml

@@ -26,7 +26,7 @@
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_marginStart="5dp"
-            android:text="请完善个人信息,第一次实名认证免费,出现错误再次提交需扣除0.5元绵羊币!"
+            android:text="请完善个人信息,第一次实名认证免费,再次提交需扣除0.5绵羊币/次!"
             android:textColor="#918F8F"
             android:textSize="14sp" />
     </LinearLayout>

二進制
app/src/main/res/mipmap-xhdpi/try_dialog_x.webp


二進制
app/src/main/res/mipmap-xxhdpi/try_dialog_x.webp