瀏覽代碼

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

zengjiebin 7 年之前
父節點
當前提交
726ddc856c

+ 27 - 8
app/src/main/java/com/kfzs/duanduan/fragment/FgtSmallSheep.java

@@ -216,6 +216,7 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
         }
     };
 
+    @RequiresApi(api = Build.VERSION_CODES.M)
     @Override
     protected void initView(Bundle savedInstanceState) {
         setContentView(R.layout.homepage_act_layout);
@@ -441,6 +442,7 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
                     isShowMd = !isShowMd;
                 }
             }
+            addNewTask();
             SheepApp.getInstance().setShowQB(isShowQB);
             SheepApp.getInstance().setShowMidong(isShowMd);
             adpHomeListGrideview.notifyDataSetChanged();
@@ -748,11 +750,12 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
                 boolean isShowQB = false;
                 boolean isShowMd = false;
                 for (int i = 0; i < homeListEntitys.size(); i++) {
-                    if (i < 4) {
-                        homeListEntitysGridview.add(homeListEntitys.get(i));
-                    } else {
-                        homeListEntitysListview.add(homeListEntitys.get(i));
-                    }
+//                    if (i < 4) {
+//                        homeListEntitysGridview.add(homeListEntitys.get(i));
+//                    } else {
+//                        homeListEntitysListview.add(homeListEntitys.get(i));
+//                    }
+                    homeListEntitysGridview.add(homeListEntitys.get(i));
                     if (homeListEntitys.get(i).getJump().equals("6")) {//6Q币充值
                         isShowQB = !isShowQB;
                     }
@@ -760,6 +763,7 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
                         isShowMd = !isShowMd;
                     }
                 }
+                addNewTask();
                 SheepApp.getInstance().setShowQB(isShowQB);
                 SheepApp.getInstance().setShowMidong(isShowMd);
                 adpHomeListGrideview.notifyDataSetChanged();
@@ -807,9 +811,7 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
         }
         if(DataUtil.getInstance().isTaskListChange(getClass()))//数据变化才刷新
             refreshTaskList();
-        if(onResumeCount == 0)//第一次才调用
-//            Jump2View.getInstance().tryShowNewbieTask(activity, userEntity, newbie_task);
-        onResumeCount++;
+
         viewRobDuty.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -1121,4 +1123,21 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
         }
 
     }
+
+    /**
+     * 新手任务
+     */
+    private void addNewTask(){
+//        if(onResumeCount == 0 && CommonUtil.getInstance().addNewTask(activity,userEntity) && homeListEntitysGridview != null)//第一次才调用
+        {
+            HomeListEntity homeListEntity = new HomeListEntity();
+            homeListEntity.setTitle("新手任务");
+            homeListEntity.setDesc("新手任务");
+            homeListEntity.setJump("-1");
+            homeListEntity.setIcon(R.mipmap.homepage_xinshourw+"");
+            homeListEntitysGridview.set(0, homeListEntity);
+
+        }
+        onResumeCount++;
+    }
 }

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

@@ -806,7 +806,7 @@ public interface ApiService {
      * 获取用户未做金额
      * can_receive_awar
      */
-    @GET("app/user/can_receive_awar")
+    @GET("app/user/can_receive_award")
     Observable<BaseMessage> getCanREceiveAwar();
     /**
      * 任务审核

+ 4 - 2
app/src/main/java/com/sheep/gamegroup/model/entity/HomeListEntity.java

@@ -1,5 +1,7 @@
 package com.sheep.gamegroup.model.entity;
 
+import android.text.TextUtils;
+
 /**
  * 首页list
  * Created by ljy on 2018/5/10.
@@ -10,7 +12,7 @@ public class HomeListEntity {
     private String Desc;//	string描述
     private String Icon;//	string图标地址
     private int Id;//	integer ($int64)
-    private String Jump;//	string跳转(h5填跳转地址,原生:1试玩赚钱,2邀请赚钱,3躺着赚钱,4办卡赚钱)
+    private String Jump;//	string跳转(h5填跳转地址,原生:1试玩赚钱,2邀请赚钱,3躺着赚钱,4办卡赚钱)-1新手任务
     private String Order;//	integer ($int64)排序,默认99,越小越靠前
     private String Title;//	string标题
     private int Type;//	integer ($int64)类型(0不跳转,1h5,2原生)
@@ -45,7 +47,7 @@ public class HomeListEntity {
     }
 
     public String getIcon() {
-        return Icon;
+        return TextUtils.isEmpty(Icon)?"0":Icon;
     }
 
     public void setIcon(String icon) {

+ 85 - 0
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -15,6 +15,7 @@ import android.support.v7.app.AlertDialog;
 import android.text.Html;
 import android.text.TextUtils;
 import android.util.Log;
+import android.util.TypedValue;
 import android.view.View;
 import android.view.ViewTreeObserver;
 import android.widget.ImageView;
@@ -39,6 +40,8 @@ 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.NewbieTask;
+import com.sheep.gamegroup.model.entity.NewbieTaskRecord;
 import com.sheep.gamegroup.model.entity.TaskChild;
 import com.sheep.gamegroup.model.entity.TaskDescEntity;
 import com.sheep.gamegroup.model.entity.TaskEty;
@@ -50,6 +53,9 @@ import com.sheep.gamegroup.model.util.AutoTaskListUtil;
 import com.sheep.gamegroup.model.util.SheepSubscriber;
 import com.sheep.gamegroup.usage.AppUsageManager;
 import com.sheep.gamegroup.view.activity.GameTaskOrderListAct;
+import com.sheep.gamegroup.view.dialog.DialogNewbieTask1;
+import com.sheep.gamegroup.view.dialog.DialogNewbieTaskList;
+import com.sheep.gamegroup.view.dialog.DialogNewbieTaskRegistSuccess;
 import com.sheep.gamegroup.view.dialog.DialogShare;
 import com.sheep.jiuyan.samllsheep.BuildConfig;
 import com.sheep.jiuyan.samllsheep.R;
@@ -68,15 +74,18 @@ import com.zhy.http.okhttp.callback.FileCallBack;
 
 import org.afinal.simplecache.ApiKey;
 import org.greenrobot.eventbus.EventBus;
+import org.xutils.ex.DbException;
 
 import java.io.File;
 import java.lang.reflect.Field;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.security.MessageDigest;
+import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.HashMap;
 import java.util.Iterator;
+import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 import java.util.Set;
@@ -87,6 +96,7 @@ import rx.functions.Action1;
 import rx.schedulers.Schedulers;
 
 import static com.sheep.gamegroup.util.UMConfigUtils.Event.LINK_SHARE;
+import static com.sheep.gamegroup.util.UMConfigUtils.Event.NEWBIE_TASK;
 import static com.sheep.gamegroup.util.UMConfigUtils.Event.QR_COPY;
 import static com.sheep.gamegroup.util.UMConfigUtils.Event.XIAOMI_GAME_RECEIVE;
 import static com.sheep.gamegroup.view.adapter.TryMakeMoneyAdp.PUBLIC_TAG_PREFIX_TEXTVIEW_LIST;
@@ -407,6 +417,11 @@ public class CommonUtil {
     public void goNative(Context context, HomeListEntity entity, String from) {
 
         switch (Integer.valueOf(entity.getJump())) {
+            case -1://试玩赚钱
+
+                DialogNewbieTaskList.tryShowDialog((Activity) context);
+                NEWBIE_TASK.onEvent();
+                break;
             case 1://试玩赚钱
 
                 Jump2View.getInstance().goTryplayView(context, null);
@@ -1827,4 +1842,74 @@ public class CommonUtil {
                     }
                 });
     }
+
+    /**
+     * 是否添加新手任务
+     */
+    public boolean addNewTask(final Activity activity, final UserEntity userEntity) {
+        if (userEntity == null) {
+            return false;
+        }
+        if (userEntity.getIs_new() == 2) { //1新用户 2老用户
+            return false;
+        } else {
+            NewbieTaskRecord newbie_task_record = null;
+            try {
+                newbie_task_record = MyDbManager.getInstance().dbFindNewbieTaskRecord(userEntity.getInvitation_code());
+            } catch (DbException e) {
+                e.printStackTrace();
+            }
+            boolean dontShowNewbieTaskDialog = newbie_task_record == null || newbie_task_record.isDontShowNewbieTaskDialog();//默认可以显示对话框
+            if (!userEntity.isNewRegistUser() || dontShowNewbieTaskDialog) {
+                final NewbieTaskRecord finalNewbie_task_record = newbie_task_record;
+                SheepApp.getInstance().getNetComponent().getApiService().getNewbieTask()
+                        .subscribeOn(Schedulers.io())
+                        .observeOn(AndroidSchedulers.mainThread())
+                        .subscribe(new SheepSubscriber<BaseMessage>(activity) {
+                            @Override
+                            public void onNext(BaseMessage baseMessage) {
+                                List<NewbieTask> newbieTaskList = baseMessage.getDatas(NewbieTask.class);
+                                if (newbieTaskList != null && !newbieTaskList.isEmpty() && newbieTaskList.size() > 1 && !newbieTaskList.get(1).getFinished()) {//了解小绵羊任务未完成时
+                                    DialogNewbieTaskRegistSuccess.showDialog(activity, finalNewbie_task_record, newbieTaskList.get(0));
+                                } else if (newbieTaskList != null && !newbieTaskList.isEmpty()) {
+                                    finalNewbie_task_record.setDontShowNewbieTaskDialog(true);
+                                    MyDbManager.getInstance().saveOrUpdate(finalNewbie_task_record);//设置为不再显示新手对话框
+                                    List<NewbieTask> taskList = new ArrayList<>();
+                                    NewbieTask task = null;
+                                    for (NewbieTask newbieTask : newbieTaskList) {
+                                        if (newbieTask.getFinished()) {//已经完成
+                                            task = newbieTask;
+                                        } else {
+                                            taskList.add(newbieTask);
+                                        }
+                                    }
+                                    DialogNewbieTask1.showDialog(activity, taskList, task);
+                                } else {
+                                    if (BuildConfig.DEBUG)
+                                        G.showToast("测试:服务器数据错误,新手任务数据为空");
+                                }
+                            }
+
+                            @Override
+                            public void onError(BaseMessage baseMessage) {
+                            }
+                        });
+            }
+            return true;
+        }
+    }
+
+    /**
+     * 设置游戏标识文本,如:现金,福利
+     * @param textView
+     * @param taskReleaseEty
+     */
+    public void setTaskTagText(TextView textView, TaskReleaseEty taskReleaseEty) {
+        textView.setVisibility(View.VISIBLE);
+        ViewUtil.setColorMapText(textView, String.format(Locale.CHINA, "%s", taskReleaseEty.getCashOrWelfare()), taskReleaseEty.getCashOrWelfare(), "#FD2D54");
+        textView.setBackgroundResource(R.drawable.shape_red_stroke_rectangle_no_lb);
+        textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 9);
+        int padding = textView.getContext().getResources().getDimensionPixelSize(R.dimen.content_padding_2);
+        textView.setPadding(4*padding, padding, 4*padding, padding);
+    }
 }

+ 6 - 9
app/src/main/java/com/sheep/gamegroup/view/adapter/AdpHomeListGrideview.java

@@ -1,6 +1,7 @@
 package com.sheep.gamegroup.view.adapter;
 
 import android.content.Context;
+import android.graphics.drawable.Drawable;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -56,21 +57,17 @@ public class AdpHomeListGrideview extends BaseAdapter {
             holder = (ViewHolder) tag;
         }else {
             holder = new ViewHolder();
-            convertView = LayoutInflater.from(context).inflate(R.layout.adp_homelist_gridview, null);
-            holder.hot_tv = convertView.findViewById(R.id.hot_tv);
+            convertView = LayoutInflater.from(context).inflate(R.layout.adp_homelist_gridview_new, null);
+            holder.gridview_item_tag_tv = convertView.findViewById(R.id.gridview_item_tag_tv);
             holder.gridview_item_name_tv = convertView.findViewById(R.id.gridview_item_name_tv);
-            holder.gridview_item_detail_tv = convertView.findViewById(R.id.gridview_item_detail_tv);
             holder.gridview_item_icon_iv = convertView.findViewById(R.id.gridview_item_icon_iv);
             convertView.setTag(holder);
         }
         final HomeListEntity entity = getItem(position);
-        ViewUtil.setText(holder.hot_tv, entity.getTip());
-        holder.hot_tv.setVisibility(entity.hasTip()?View.VISIBLE: View.GONE);
-        holder.hot_tv.setTextColor(entity.getTipColor());
+        ViewUtil.setText(holder.gridview_item_tag_tv, entity.getTip());
         ViewUtil.setText(holder.gridview_item_name_tv, entity.getTitle());
-        ViewUtil.setText(holder.gridview_item_detail_tv, entity.getDesc());
         Glide.with(context)
-                .load(entity.getIcon())
+                .load(entity.getId() == 0 ? Integer.valueOf(entity.getIcon()) : entity.getIcon())
                 .apply(new RequestOptions().dontAnimate())
                 .into(holder.gridview_item_icon_iv);
         convertView.setOnClickListener(new View.OnClickListener() {
@@ -85,7 +82,7 @@ public class AdpHomeListGrideview extends BaseAdapter {
     }
 
     class ViewHolder{
-        TextView gridview_item_name_tv, gridview_item_detail_tv, hot_tv;
+        TextView gridview_item_name_tv, gridview_item_tag_tv;
         ImageView gridview_item_icon_iv;
     }
 }

+ 44 - 0
app/src/main/res/layout/adp_homelist_gridview_new.xml

@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="horizontal"
+    android:paddingBottom="@dimen/content_padding_10"
+    android:paddingEnd="@dimen/content_padding_10"
+    android:paddingStart="@dimen/content_padding_10"
+    android:paddingTop="@dimen/content_padding_10">
+
+    <LinearLayout
+        android:id="@+id/linearlayout"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:orientation="vertical"
+        android:gravity="center"
+        android:layout_marginTop="@dimen/content_padding_4">
+
+        <ImageView
+            android:id="@+id/gridview_item_icon_iv"
+            android:layout_width="38dp"
+            android:layout_height="38dp"
+            android:adjustViewBounds="true"
+            android:src="@mipmap/home_try_play_circle_bg"/>
+
+        <TextView
+            android:id="@+id/gridview_item_name_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="试玩赚钱"
+            android:textSize="10sp"
+            android:textColor="@color/black_6_3"
+            android:layout_marginTop="@dimen/content_padding_small"/>
+    </LinearLayout>
+
+    <TextView
+        android:id="@+id/gridview_item_tag_tv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="试玩赚钱"
+        android:textSize="8sp"
+        android:textColor="@color/black_6_3"
+        android:layout_toRightOf="@+id/linearlayout"/>
+</RelativeLayout>

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

@@ -15,7 +15,7 @@
         android:layout_height="wrap_content"
         android:gravity="center_horizontal"
         android:scrollbars="none"
-        android:numColumns="2"
+        android:numColumns="4"
         android:listSelector="@color/transparent"
         android:verticalSpacing="@dimen/content_padding_8"
         android:horizontalSpacing="@dimen/content_padding_8"

二進制
app/src/main/res/mipmap-xhdpi/homepage_xinshourw.png


二進制
app/src/main/res/mipmap-xxhdpi/homepage_xinshourw.png