EarnHehuaActivity.java 9.52 KB
package com.lotus.town;

import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import com.ad.lib.RewardManager;
import com.lotus.town.dialog.Dialog;
import com.lotus.town.event.BaseEvent;
import com.lotus.town.event.SharedWXEvent;
import com.lotus.town.utils.SharedPrefConfig;
import com.lotus.town.utils.UIUtils;
import com.lotus.town.wxapi.WxManager;
import com.sdk.Sdk;
import com.sdk.log.LogConstants;

import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

public class EarnHehuaActivity extends BaseActivity implements View.OnClickListener {
    private static final String TAG = "EarnHehuaActivity";
    private Button mWatchReward;
    private Button mInviteFriend;
    private Button mUpgradeLevel;
    private TextView mHehuaCount;
    private View mBack;
    private TextView mQwLevel;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_earn_hehua);
        Sdk.logger().logEvent(this, LogConstants.LOG_EARN_HEHUA_DISPLAY);
        mWatchReward = findViewById(R.id.watch_reward);
        mInviteFriend = findViewById(R.id.invite_friend);
        mBack = findViewById(R.id.back);
        mWatchReward.setOnClickListener(this);
        mInviteFriend.setOnClickListener(this);
        mBack.setOnClickListener(this);
        mHehuaCount = findViewById(R.id.hehua_count);
        mUpgradeLevel = findViewById(R.id.upgrade_level);
        mUpgradeLevel.setOnClickListener(this);
        mQwLevel = findViewById(R.id.qw_level);
        mHehuaCount.setText(scManager.getInstance(this).getLotus()+"朵");
        EventBus.getDefault().register(this);
        mQwLevel.setText(scManager.getInstance(this).getQingwaCurrentLevel()+"级");
    }

    @Subscribe(threadMode = ThreadMode.MAIN)
    public void updateUI(BaseEvent event){
        mHehuaCount.setText(scManager.getInstance(this).getLotus()+"朵");
        if (event instanceof SharedWXEvent) {
            Log.d(TAG, "updateUI() called with: SharedWXEvent = [" + event + "]");
            Sdk.logger().logEvent(this, LogConstants.LOG_EARN_HEHUA_SHARED_SUCCESS);

            showAwardHehuaDialog(3);
        }
    }


    @Override
    public void onClick(View view) {
        if(view == mWatchReward){
            int canView = SharedPrefConfig.getInstance(this).canViewVideo();

            Log.v("XPC","canViewVideo   canView="+canView);

            if(canView == 0) {
                Sdk.logger().logEvent(this, LogConstants.LOG_EARN_HEHUA_CLICK_WATCH_VIDEO);

                RewardManager.reward(EarnHehuaActivity.this, new RewardManager.RewardListener() {
                    @Override
                    public void onRewardVerify() {
//                        UIUtils.showToast("获得3朵荷花,赶快玩游戏吧");
                        runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                Sdk.logger().logEvent(EarnHehuaActivity.this, LogConstants.LOG_EARN_HEHUA_WATCH_SUCCESS);
                                showAwardHehuaDialog(3);
                            }
                        });

                        scManager.getInstance(EarnHehuaActivity.this).addLotus(3);
                        SharedPrefConfig.getInstance(EarnHehuaActivity.this).viewVideo();
                    }

                    @Override
                    public void onVideoError() {
                        UIUtils.showToast("视频还没准备好,请稍后重试");
                        Sdk.logger().logEvent(EarnHehuaActivity.this, LogConstants.LOG_EARN_HEHUA_WATCH_NO_VIDEO);
                    }
                });
            } else if(canView == 2){
                Dialog dialog = getDialog();
                dialog.dismiss(this);
                dialog.showCenter(this,
                        "每次赚荷花需要间隔5分钟,请稍后再来",
                        new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                dismissDialog();
                            }
                        },
                        "知道啦",
                        new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                dismissDialog();
                            }
                        });
            } else {
                Dialog dialog = getDialog();
                dialog.dismiss(this);
                dialog.showCenter(this,
                        "每天最多只能看3个视频,明天再来吧",
                        new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                dismissDialog();
                            }
                        },
                        "知道啦",
                        new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                dismissDialog();
                            }
                        });
                Sdk.logger().logEvent(this, LogConstants.LOG_EARN_HEHUA_CLICK_WATCH_VIDEO_TIME_OUT);
            }
        } else if(view == mInviteFriend){
            if(SharedPrefConfig.getInstance(this).canShared()) {
                Sdk.logger().logEvent(this, LogConstants.LOG_EARN_HEHUA_CLICK_SHARED);
                boolean ret = WxManager.shareFriend(this, "荷花小镇", "亲,帮我投一票,投给荷花小镇", "https://mp.weixin.qq.com/s/7SJ0SVWCDqHTlOIGra4Dlw");
                if (!ret) {
                    showNoWechatDialog();
                }
            } else {
                Dialog dialog = getDialog();
                dialog.dismiss(this);
                dialog.showCenter(this,
                        "每天只能分享1次,明日再来吧",
                        new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                dismissDialog();
                            }
                        },
                        "知道啦",
                        new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                dismissDialog();
                            }
                        });

                Sdk.logger().logEvent(this, LogConstants.LOG_EARN_HEHUA_CLICK_SHARED_TIMEOUT);
            }
        } else if(mBack == view){
            finish();
        } else if(mUpgradeLevel == view){

            int qwPower = scManager.getInstance(getApplicationContext()).getQingwaPower();
            int distancePower = scManager.getInstance(getApplicationContext()).getPowerDistance();
            int newLevel = scManager.getInstance(getApplicationContext()).getQingwaCurrentLevel()+1;
            final Dialog dialog = getDialog();
            dialog.dismiss(this);
            dialog.show(this,
                    "当前能量值为:"+qwPower+"克",
                    "还差"+distancePower+"克能量既可以升级到"+newLevel+"级了",
                    new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            dialog.dismiss(EarnHehuaActivity.this);
                        }
                    },
                    getString(R.string.dlg_win_power_right_btn_hint),
                    new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            dialog.dismiss(EarnHehuaActivity.this);
                        }
                    });
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        EventBus.getDefault().unregister(this);
    }

    private void showAwardHehuaDialog(int number) {
        Log.d(TAG, "showAwardHehuaDialog() called with: number = [" + number + "]");
        final Dialog dialog = getDialog();
        dialog.dismiss(this);
        dialog.show(this,
                getString(R.string.earn_hehua_main_hint),
                getString(R.string.earn_hehua_sub_hint, number),
                new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        dialog.dismiss(EarnHehuaActivity.this);
                    }
                },
                getString(R.string.earn_hehua_right_btn_hint),
                new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        dialog.dismiss(EarnHehuaActivity.this);
                    }
                });

    }

    private void showNoWechatDialog() {
        Dialog dialog = getDialog();
        dialog.dismiss(this);
        dialog.showCenter(this,
                "您还没有安装微信",
                new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        dismissDialog();
                    }
                },
                "知道啦",
                new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        dismissDialog();
                    }
                });
    }
}