diff --git a/app/src/main/java/com/chwl/app/avroom/activity/AVRoomActivity.java b/app/src/main/java/com/chwl/app/avroom/activity/AVRoomActivity.java index d759e970b..e427326d8 100644 --- a/app/src/main/java/com/chwl/app/avroom/activity/AVRoomActivity.java +++ b/app/src/main/java/com/chwl/app/avroom/activity/AVRoomActivity.java @@ -61,7 +61,6 @@ import com.trello.rxlifecycle3.android.ActivityEvent; import com.chwl.app.R; import com.chwl.app.avroom.dialog.NewUserGiftDialog; import com.chwl.app.avroom.dialog.SingleRoomTipDialog; -import com.chwl.app.avroom.firstcharge.FirstChargeDialog; import com.chwl.app.avroom.fragment.FakeSingleRoomBackFragment; import com.chwl.app.avroom.fragment.FakeSingleRoomFragment; import com.chwl.app.avroom.fragment.HomePartyFragment; @@ -1340,22 +1339,6 @@ public class AVRoomActivity extends BaseMvpActivity { - if (!DemoCache.readBoolean("FirstCharge", false) && - (UIUtils.isTopActivity(AVRoomActivity.this) -// || UIUtils.isTopActivity(this, TreasureBoxActivity.class.getName()) - || UIUtils.isTopActivity(this, DialogWebViewActivity.class.getName()) - || UIUtils.isTopActivity(this, RoomMsgActivity.class.getName()))) { - FirstChargeDialog.start(this); - } - }) - .subscribe(); - } - @Subscribe(threadMode = ThreadMode.MAIN) public void onImPushMsgPmLimitTimeEvent(ImPushMsgPmLimitTimeEvent event) { //时间到限制时间段之后,后台推送im消息 diff --git a/app/src/main/java/com/chwl/app/avroom/dialog/DatingVipRuleDialog.java b/app/src/main/java/com/chwl/app/avroom/dialog/DatingVipRuleDialog.java index b2fb9d424..228db3d7c 100644 --- a/app/src/main/java/com/chwl/app/avroom/dialog/DatingVipRuleDialog.java +++ b/app/src/main/java/com/chwl/app/avroom/dialog/DatingVipRuleDialog.java @@ -6,7 +6,7 @@ import android.view.View; import com.chwl.app.R; import com.chwl.app.databinding.DialogDatingVipRuleBinding; -import com.chwl.app.treasure_box.widget.dialog.BaseBindingDialog; +import com.chwl.app.base.BaseBindingDialog; import com.chwl.library.annatation.ActLayoutRes; diff --git a/app/src/main/java/com/chwl/app/avroom/dialog/RequestUpMicDialog.kt b/app/src/main/java/com/chwl/app/avroom/dialog/RequestUpMicDialog.kt index 74ac61f4f..2fa2d747d 100644 --- a/app/src/main/java/com/chwl/app/avroom/dialog/RequestUpMicDialog.kt +++ b/app/src/main/java/com/chwl/app/avroom/dialog/RequestUpMicDialog.kt @@ -4,7 +4,7 @@ import android.content.Context import android.view.View import com.chwl.app.R import com.chwl.app.databinding.DialogRequestUpmicBinding -import com.chwl.app.treasure_box.widget.dialog.BaseBindingDialog +import com.chwl.app.base.BaseBindingDialog import com.chwl.core.manager.AvRoomDataManager import com.chwl.core.manager.IMNetEaseManager import com.chwl.core.user.bean.BaseInfo diff --git a/app/src/main/java/com/chwl/app/avroom/dialog/SelectLabelDialog.kt b/app/src/main/java/com/chwl/app/avroom/dialog/SelectLabelDialog.kt index 7b85f5d9f..45414e589 100644 --- a/app/src/main/java/com/chwl/app/avroom/dialog/SelectLabelDialog.kt +++ b/app/src/main/java/com/chwl/app/avroom/dialog/SelectLabelDialog.kt @@ -5,7 +5,7 @@ import android.view.View import com.donkingliang.labels.LabelsView import com.chwl.app.R import com.chwl.app.databinding.DialogSelectLabelBinding -import com.chwl.app.treasure_box.widget.dialog.BaseBindingDialog +import com.chwl.app.base.BaseBindingDialog import com.chwl.library.annatation.ActLayoutRes @ActLayoutRes(R.layout.dialog_select_label) diff --git a/app/src/main/java/com/chwl/app/avroom/firstcharge/FirstChargeDialog.kt b/app/src/main/java/com/chwl/app/avroom/firstcharge/FirstChargeDialog.kt deleted file mode 100644 index 1e521a033..000000000 --- a/app/src/main/java/com/chwl/app/avroom/firstcharge/FirstChargeDialog.kt +++ /dev/null @@ -1,485 +0,0 @@ -package com.chwl.app.avroom.firstcharge - -import android.annotation.SuppressLint -import android.content.Context -import android.content.Intent -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.text.Spannable -import android.text.SpannableStringBuilder -import android.text.style.ForegroundColorSpan -import android.util.Log -import android.view.Gravity -import android.view.LayoutInflater -import android.view.View -import android.view.WindowManager -import android.widget.PopupWindow -import android.widget.TextView -import androidx.recyclerview.widget.GridLayoutManager -//import com.appsflyer.AFInAppEventParameterName -//import com.appsflyer.AFInAppEventType -//import com.appsflyer.AppsFlyerLib -import com.example.module_base.support.billing.IBillingResult -import com.example.module_base.support.billing.IBillingService -import com.example.module_base.support.billing.IProductDetails -import com.example.module_base.support.billing.IPurchase -import com.example.module_base.support.google.IGoogleService -import com.netease.nim.uikit.common.util.sys.ScreenUtil -import com.chwl.app.R -import com.chwl.app.base.BaseViewBindingActivity -import com.chwl.app.databinding.DialogFirstChargeBinding -import com.chwl.app.ui.setting.ModifyPwdActivity -import com.chwl.app.ui.webview.CommonWebViewActivity -import com.chwl.app.ui.widget.magicindicator.buildins.UIUtil -import com.chwl.core.Constants -import com.chwl.core.DemoCache -import com.chwl.core.UriProvider -import com.chwl.core.pay.PayModel -import com.chwl.core.pay.bean.FirstChargeGoods -import com.chwl.core.pay.bean.FirstChargeReward -import com.chwl.core.pay.bean.PayRecordId -import com.chwl.core.pay.event.FirstChargeEvent -import com.chwl.core.room.model.AvRoomModel -import com.chwl.core.utils.net.IgnoreException -import com.chwl.core.utils.extension.toast -import com.chwl.library.common.util.DeviceUtil -import com.chwl.library.utils.AppMetaDataUtil -import com.chwl.library.utils.ResUtil -import com.chwl.library.utils.SingleToastUtil -import org.greenrobot.eventbus.EventBus -import org.greenrobot.eventbus.Subscribe -import org.greenrobot.eventbus.ThreadMode - -/** - * author: wushaocheng - * time: 2022/2/21 - * desc: 限时首充 - */ -class FirstChargeDialog : BaseViewBindingActivity(), - IBillingService.Listener { - - private var goodsList: List? = null - - private var currGoods: FirstChargeGoods? = null - - private lateinit var helpPopupWindow: PopupWindow - private var billingManager: IBillingService? = null - private var position = -1 - - private val mReward2Adapter by lazy { Reward2Adapter() } - - companion object { - @JvmStatic - fun start(context: Context) { - val starter = Intent(context, FirstChargeDialog::class.java) - context.startActivity(starter) - } - - private const val BIND_CODE_GOLD = 200 - private const val TAG = "FirstChargeDialog" - } - - @SuppressLint("CheckResult") - override fun init() { - //这里的height用MATCH_PARENT状态栏会被顶上去,不知道什么鬼 - val height = ScreenUtil.screenHeight - ScreenUtil.getStatusBarHeight(context) - window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, height) - window.setGravity(Gravity.CENTER) - EventBus.getDefault().register(this) - binding.rbPlanA.setOnClickListener { - binding.rbPlanA.isChecked = true - binding.rbPlanB.isChecked = false - binding.rbPlanC.isChecked = false - binding.ivArrow1.visibility = View.VISIBLE - binding.ivArrow2.visibility = View.INVISIBLE - binding.ivArrow3.visibility = View.INVISIBLE - updateCurrGoods(goodsList?.getOrNull(0)) - position = 0 - } - binding.rbPlanB.setOnClickListener { - binding.rbPlanA.isChecked = false - binding.rbPlanB.isChecked = true - binding.rbPlanC.isChecked = false - binding.ivArrow1.visibility = View.INVISIBLE - binding.ivArrow2.visibility = View.VISIBLE - binding.ivArrow3.visibility = View.INVISIBLE - updateCurrGoods(goodsList?.getOrNull(1)) - position = 1 - } - binding.rbPlanC.setOnClickListener { - binding.rbPlanA.isChecked = false - binding.rbPlanB.isChecked = false - binding.rbPlanC.isChecked = true - binding.ivArrow1.visibility = View.INVISIBLE - binding.ivArrow2.visibility = View.INVISIBLE - binding.ivArrow3.visibility = View.VISIBLE - updateCurrGoods(goodsList?.getOrNull(2)) - position = 2 - } - binding.ivHelp.setOnClickListener { showHelpPopup() } - binding.tvCharge.setOnClickListener { - if (position == -1) { - ResUtil.getString(R.string.avroom_firstcharge_firstchargedialog_01).toast() - } - else{ - goodsList?.get(position)?.let { charge -> - buyProduct(charge.productDetails) - } - } - } - - binding.recyclerView.layoutManager = GridLayoutManager(this, 6) - //重新定义每行的item数量 - mReward2Adapter.setSpanSizeLookup { _, position -> - val data = mReward2Adapter.data - var spanSize = 0 - when (data[position].itemType) { - FirstChargeReward.ONE -> { - spanSize = 6 - } - - FirstChargeReward.TWO_LEFT -> { - spanSize = 3 - } - - FirstChargeReward.TWO_RIGHT -> { - spanSize = 3 - } - - FirstChargeReward.THREE -> { - spanSize = 2 - } - - FirstChargeReward.TWO_LEFT_SMALL -> { - spanSize = 3 - } - - FirstChargeReward.TWO_RIGHT_SMALL -> { - spanSize = 3 - } - } - spanSize - } - binding.recyclerView.adapter = mReward2Adapter - - PayModel.get().firstChargeList - .compose(bindToLifecycle()) - .subscribe({ - initData(it) - }, { - it.printStackTrace() - SingleToastUtil.showToast(it.message) - finish() - }) - binding.viewBg.setOnClickListener { - //do nothing - } - binding.root.setOnClickListener { - finish() - } - - DemoCache.saveBoolean("FirstCharge", true) - AvRoomModel.get().postFirstCharge() - .compose(bindToLifecycle()) - .subscribe() - } - - @SuppressLint("SetTextI18n") - private fun initData(goodsList: List) { - this.goodsList = goodsList - binding.rbPlanA.isChecked = true - updateCurrGoods(goodsList.getOrNull(0)) - position = 0 - when (goodsList.size) { - 1 -> { - binding.rbPlanB.visibility = View.GONE - binding.rbPlanC.visibility = View.GONE - binding.rbPlanA.text = "$${goodsList[0].chargeMoney}" - } - - 2 -> { - binding.rbPlanC.visibility = View.GONE - binding.rbPlanA.text = "$${goodsList[0].chargeMoney}" - binding.rbPlanB.text = "$${goodsList[1].chargeMoney}" - } - - 3 -> { - binding.rbPlanA.text = "$${goodsList[0].chargeMoney}" - binding.rbPlanB.text = "$${goodsList[1].chargeMoney}" - binding.rbPlanC.text = "$${goodsList[2].chargeMoney}" - } - } - initBilling() - } - - private fun initBilling() { - billingManager = IGoogleService.newBillingService(this,this) - } - - @SuppressLint("CheckResult") - override fun onBillingClientSetupFinished() { - Log.i(TAG, "onBillingClientSetupFinished") - goodsList?.let { initProduceList(it) } - } - - private fun initProduceList(goodsList: List) { - val productKeys: MutableList = ArrayList() - for (bean in goodsList) { - productKeys.add(bean.chargeProdId) - } - billingManager?.querySkuDetailsAsync(productKeys,object :IBillingService.ProductDetailsResponseListener{ - override fun onProductDetailsResponse( - billingResult: IBillingResult, - productDetails: List - ) { - if (!billingResult.isResponseOk()) { - Log.w( - TAG, - "Unsuccessful query for Error code: " + billingResult.getResponseCode() - ) - }else if (productDetails.isNotEmpty()) { - for (chargeBean in goodsList) { - for (skuDetails in productDetails) { - if (skuDetails.getProductId() == chargeBean.chargeProdId) { - chargeBean.productDetails = skuDetails - break - } - } - } - } - } - }) - } - - /*商品更新回调*/ - @SuppressLint("CheckResult") - override fun onPurchasesUpdated(purchases: List) { - for (purchase in purchases) { - if (purchase.isPurchasedState() && - purchase.getAccountIdentifiers() != null - ) { - PayModel.get().verifyOrder( - purchase.getAccountIdentifiers()!!.getObfuscatedAccountId(), - purchase.getProducts()[0], - purchase.getPackageName(), - purchase.getPurchaseToken() - ) - .compose(bindToLifecycle()) - .subscribe( - { token: String -> - //L.i("token=" + token); - billingManager?.consumeAsync(token) -// var skuDetails: IProductDetails? = null -// val goodList = goodsList -// if (!goodList.isNullOrEmpty()) { -// for (datum in goodList) { -// if (datum.chargeProdId == purchase.getProducts()[0]) { -// skuDetails = datum.productDetails -// break -// } -// } -// } -// if (skuDetails != null) { -// val eventValue: MutableMap = -// HashMap() -// eventValue[AFInAppEventParameterName.CONTENT_TYPE] = "Gold" -// eventValue[AFInAppEventParameterName.QUANTITY] = 1 -// eventValue[AFInAppEventParameterName.CONTENT_ID] = purchase.getOrderId()!! -// skuDetails.getOneTimePurchaseOfferDetails()?.let { -// eventValue[AFInAppEventParameterName.REVENUE] = -// it.getPriceAmountMicros() / 1000000f -// eventValue["Price"] = it.getFormattedPrice() -// eventValue[AFInAppEventParameterName.CURRENCY] = -// it.getPriceCurrencyCode() -// } -// AppsFlyerLib.getInstance().logEvent( -// applicationContext, -// AFInAppEventType.PURCHASE, -// eventValue -// ) -// } - } - ) { throwable: Throwable -> - if (throwable !is IgnoreException) { - SingleToastUtil.showToast(throwable.message) - } - } - } - } - Log.i(TAG, "onPurchasesUpdated") - } - - override fun onConsumeFinished(token: String?, result: Int) { - - } - - override fun onFailedHandle(result: Int) { - - } - - /*购买商品*/ - @SuppressLint("CheckResult") - fun buyProduct(skuDetails: IProductDetails?) { - if (skuDetails != null) { - Log.d(TAG, "BuyProduct:" + skuDetails.getProductId()) - PayModel.get().placeOrder(skuDetails.getProductId()) - .compose(bindToLifecycle()) - .subscribe( - { recordId: PayRecordId -> - billingManager?.initiatePurchaseFlow( - skuDetails, - recordId.recordId - ) - } - ) { throwable: Throwable -> - SingleToastUtil.showToast( - throwable.message - ) - } - } else { - Log.w(TAG, "skuDetails ==null") - } - } - - override fun onResume() { - super.onResume() - if (billingManager?.isServiceConnected() == true) { - billingManager?.onQueryPurchases() - } - } - - override fun onDestroy() { - super.onDestroy() - EventBus.getDefault().unregister(this) - billingManager?.destroy() - } - - private fun updateCurrGoods(firstChargeGoods: FirstChargeGoods?) { - firstChargeGoods?.let { - currGoods = it - val giveMoneyIndex = it.chargeProdTitle.lastIndexOf(it.giveMoney) - if (giveMoneyIndex == -1) { - binding.tvTitle.text = it.chargeProdTitle - } else { - val builder = SpannableStringBuilder(it.chargeProdTitle) - builder.setSpan( - ForegroundColorSpan(Color.parseColor("#BE5AF6")), giveMoneyIndex, - giveMoneyIndex + (it.giveMoney?.length ?: 0), - Spannable.SPAN_EXCLUSIVE_EXCLUSIVE - ) - binding.tvTitle.text = builder - } - val firstChargeRewardList = it.firstChargeRewardList ?: return - when (firstChargeRewardList.size) { - 1 -> { - for (bean in firstChargeRewardList) { - bean.itemType = FirstChargeReward.ONE - } - } - - 2 -> { - for (i in firstChargeRewardList.indices) { - if (i == 0) { - firstChargeRewardList[i].itemType = FirstChargeReward.TWO_LEFT - } else if (i == 1) { - firstChargeRewardList[i].itemType = FirstChargeReward.TWO_RIGHT - } - } - } - - 3 -> { - for (bean in firstChargeRewardList) { - bean.itemType = FirstChargeReward.THREE - } - } - - 4 -> { - for (i in firstChargeRewardList.indices) { - if ((i + 1) % 2 != 0) { - firstChargeRewardList[i].itemType = FirstChargeReward.TWO_LEFT - } else { - firstChargeRewardList[i].itemType = FirstChargeReward.TWO_RIGHT - } - } - } - - else -> { - if (firstChargeRewardList.size % 3 == 0) { - for (bean in firstChargeRewardList) { - bean.itemType = FirstChargeReward.THREE - } - } else { - val num = firstChargeRewardList.size / 3 - val residueNUm = firstChargeRewardList.size - (num * 3) - for (i in firstChargeRewardList.indices) { - if ((i + 1) <= num * 3) { - firstChargeRewardList[i].itemType = FirstChargeReward.THREE - } else if (residueNUm == 2) { - if (firstChargeRewardList.size - (i + 1) == 1) { - firstChargeRewardList[i].itemType = - FirstChargeReward.TWO_LEFT_SMALL - } else if (firstChargeRewardList.size - (i + 1) == 0) { - firstChargeRewardList[i].itemType = - FirstChargeReward.TWO_RIGHT_SMALL - } - } else { - firstChargeRewardList[i].itemType = FirstChargeReward.THREE - } - } - } - } - } - mReward2Adapter.setNewData(it.firstChargeRewardList) - } - } - - private fun showHelpPopup() { - if (currGoods == null) { - SingleToastUtil.showToast(ResUtil.getString(R.string.avroom_firstcharge_firstchargedialog_02)) - return - } - val contentView: View - if (!this::helpPopupWindow.isInitialized) { - contentView = - LayoutInflater.from(context) - .inflate(R.layout.layout_first_charge_help_view, null) - contentView.findViewById(R.id.tv_content).text = - currGoods?.chargeProdDesc?.replace("\\n", "\n")?.replace("\\r", "\r") - helpPopupWindow = - PopupWindow( - contentView, - ScreenUtil.dip2px(150f), - WindowManager.LayoutParams.WRAP_CONTENT - ) - helpPopupWindow.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - helpPopupWindow.isOutsideTouchable = true - helpPopupWindow.isFocusable = true - } - - try { - helpPopupWindow.showAsDropDown( - binding.ivHelp, - UIUtil.dip2px(context, 18.0), UIUtil.dip2px(context, -3.0), Gravity.END - ) - } catch (e: Exception) { - e.printStackTrace() - } - } - - override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { - super.onActivityResult(requestCode, resultCode, data) - dialogManager.dismissDialog() - if (resultCode != RESULT_OK) { - return - } - if (requestCode == BIND_CODE_GOLD) { - ModifyPwdActivity.start(this, ModifyPwdActivity.FOGERT_PAY_PWD) - } - } - - @Subscribe(threadMode = ThreadMode.MAIN) - fun onFirstRechargeEvent(event: FirstChargeEvent?) { - finish() - } - -} \ No newline at end of file diff --git a/app/src/main/java/com/chwl/app/avroom/firstcharge/FirstChargePrizeDialog.kt b/app/src/main/java/com/chwl/app/avroom/firstcharge/FirstChargePrizeDialog.kt deleted file mode 100644 index 0f684f75c..000000000 --- a/app/src/main/java/com/chwl/app/avroom/firstcharge/FirstChargePrizeDialog.kt +++ /dev/null @@ -1,41 +0,0 @@ -package com.chwl.app.avroom.firstcharge - -import android.content.Context -import com.google.android.flexbox.AlignItems -import com.google.android.flexbox.FlexboxLayoutManager -import com.google.android.flexbox.JustifyContent -import com.netease.nim.uikit.common.util.sys.ScreenUtil -import com.chwl.app.R -import com.chwl.app.databinding.DialogFirstChargePrizeBinding -import com.chwl.app.treasure_box.widget.dialog.BaseBindingDialog -import com.chwl.app.ui.utils.RVDelegate -import com.chwl.core.pay.bean.FirstChargeReward -import com.chwl.library.annatation.ActLayoutRes - -@ActLayoutRes(R.layout.dialog_first_charge_prize) -class FirstChargePrizeDialog( - context: Context, - val title: String?, - private val firstChargeRewardList: List? -) : BaseBindingDialog(context) { - - private lateinit var rvDelegate: RVDelegate - - override fun init() { - rvDelegate = RVDelegate.Builder() - .setAdapter(RewardAdapter(ScreenUtil.dip2px(248f) / 3)) - .setLayoutManager(FlexboxLayoutManager(context).apply { - alignItems = AlignItems.STRETCH - justifyContent = JustifyContent.SPACE_EVENLY - }) - .setRecyclerView(binding.recyclerView) - .build() - binding.ivKnow.setOnClickListener { - closeDialog() - } - - binding.tvDesc.text = title - rvDelegate.setNewData(firstChargeRewardList) - } - -} \ No newline at end of file diff --git a/app/src/main/java/com/chwl/app/avroom/firstcharge/Reward2Adapter.kt b/app/src/main/java/com/chwl/app/avroom/firstcharge/Reward2Adapter.kt deleted file mode 100644 index 29e65834b..000000000 --- a/app/src/main/java/com/chwl/app/avroom/firstcharge/Reward2Adapter.kt +++ /dev/null @@ -1,39 +0,0 @@ -package com.chwl.app.avroom.firstcharge - -import com.chad.library.adapter.base.BaseMultiItemQuickAdapter -import com.chad.library.adapter.base.BaseViewHolder -import com.chwl.app.R -import com.chwl.app.ui.utils.ImageLoadUtils -import com.chwl.core.pay.bean.FirstChargeReward -import com.chwl.core.utils.CoreTextUtils - -class Reward2Adapter : BaseMultiItemQuickAdapter(null) { - - init { - addItemType(FirstChargeReward.ONE, R.layout.item_first_charge_reward_one) - addItemType(FirstChargeReward.TWO_LEFT, R.layout.item_first_charge_reward_two_left) - addItemType(FirstChargeReward.TWO_RIGHT, R.layout.item_first_charge_reward_two_right) - addItemType(FirstChargeReward.THREE, R.layout.item_first_charge_reward_three) - addItemType( - FirstChargeReward.TWO_LEFT_SMALL, - R.layout.item_first_charge_reward_two_left_small - ) - addItemType( - FirstChargeReward.TWO_RIGHT_SMALL, - R.layout.item_first_charge_reward_two_right_small - ) - } - - override fun convert(helper: BaseViewHolder, item: FirstChargeReward) { - ImageLoadUtils.loadImage( - mContext, - item.showPir, - helper.getView(R.id.iv_pic), - R.drawable.ic_first_charge_default - ) - helper.setText(R.id.tv_name, item.showText) - .setText(R.id.tv_time, item.showTime) - .setGone(R.id.tv_time, !CoreTextUtils.isEmptyText(item.showTime)) - } - -} \ No newline at end of file diff --git a/app/src/main/java/com/chwl/app/avroom/firstcharge/RewardAdapter.kt b/app/src/main/java/com/chwl/app/avroom/firstcharge/RewardAdapter.kt deleted file mode 100644 index 9d743e286..000000000 --- a/app/src/main/java/com/chwl/app/avroom/firstcharge/RewardAdapter.kt +++ /dev/null @@ -1,28 +0,0 @@ -package com.chwl.app.avroom.firstcharge - -import androidx.core.view.updateLayoutParams -import androidx.recyclerview.widget.RecyclerView -import com.chad.library.adapter.base.BaseQuickAdapter -import com.chad.library.adapter.base.BaseViewHolder -import com.chwl.app.R -import com.chwl.app.ui.utils.ImageLoadUtils -import com.chwl.core.pay.bean.FirstChargeReward -import com.chwl.core.utils.CoreTextUtils - -class RewardAdapter(private val itemWidth: Int) : - BaseQuickAdapter(R.layout.item_first_charge_reward) { - override fun convert(helper: BaseViewHolder, item: FirstChargeReward) { - helper.itemView.updateLayoutParams { - width = itemWidth - } - ImageLoadUtils.loadImage( - mContext, - item.showPir, - helper.getView(R.id.iv_pic), - R.drawable.ic_first_charge_default - ) - helper.setText(R.id.tv_name, item.showText) - .setText(R.id.tv_time, item.showTime) - .setGone(R.id.tv_time, !CoreTextUtils.isEmptyText(item.showTime)) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt b/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt index 81d967aa2..9adc2af66 100644 --- a/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt +++ b/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt @@ -40,7 +40,6 @@ import com.chwl.app.avroom.activity.RoomTitleEditActivity import com.chwl.app.avroom.adapter.OnMicroItemClickListener import com.chwl.app.avroom.dialog.AttentionHintDialog import com.chwl.app.avroom.dialog.DatingVipRuleDialog -import com.chwl.app.avroom.firstcharge.FirstChargeDialog import com.chwl.app.avroom.presenter.BaseRoomPresenter import com.chwl.app.avroom.room_album.RoomAlbumModel import com.chwl.app.avroom.view.IBaseRoomView @@ -652,8 +651,6 @@ open class BaseRoomFragment?> : R.id.input_send -> { sendMsg() } - - R.id.iv_first_charge_enter -> FirstChargeDialog.start(mContext) } } diff --git a/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyRoomFragment.java b/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyRoomFragment.java index 32061ca70..21e032a4e 100644 --- a/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyRoomFragment.java +++ b/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyRoomFragment.java @@ -27,7 +27,6 @@ import com.chwl.app.avroom.dialog.MicQueueDialog; import com.chwl.app.avroom.dialog.PKMicQueueDialog; import com.chwl.app.avroom.dialog.PKResultDialog; import com.chwl.app.avroom.dialog.PKScoreBoardDialog; -import com.chwl.app.avroom.firstcharge.FirstChargePrizeDialog; import com.chwl.app.avroom.giftvalue.GiftValueDialogUiHelper; import com.chwl.app.avroom.presenter.HomePartyPresenter; import com.chwl.app.avroom.view.IHomePartyView; @@ -960,12 +959,6 @@ public class HomePartyRoomFragment extends BaseRoomFragment { */ @SuppressLint("CheckResult") public void checkFirstCharge() { - AvRoomModel.get().getFirstCharge() - .compose(bindToLifecycle()) - .subscribe(firstChargeInfo -> { - if (getMvpView() != null && firstChargeInfo.getNeedToShow()) { - getMvpView().showFirstChargeDialog(firstChargeInfo); - } - }); } /** diff --git a/app/src/main/java/com/chwl/app/avroom/view/IAvRoomView.java b/app/src/main/java/com/chwl/app/avroom/view/IAvRoomView.java index e9d3e57de..2699953ec 100644 --- a/app/src/main/java/com/chwl/app/avroom/view/IAvRoomView.java +++ b/app/src/main/java/com/chwl/app/avroom/view/IAvRoomView.java @@ -83,7 +83,4 @@ public interface IAvRoomView extends IMvpBaseView { void recoverRoomMinWhenPmLimit(Throwable throwable); void showNewUserDialog(GiftInfo giftInfo); - - void showFirstChargeDialog(FirstChargeInfo firstChargeInfo); - } diff --git a/app/src/main/java/com/chwl/app/base/BaseActivity.java b/app/src/main/java/com/chwl/app/base/BaseActivity.java index 96b84e6be..b779f0fc0 100644 --- a/app/src/main/java/com/chwl/app/base/BaseActivity.java +++ b/app/src/main/java/com/chwl/app/base/BaseActivity.java @@ -67,7 +67,6 @@ import com.chwl.app.application.IReportConstants; import com.chwl.app.application.ReportManager; import com.chwl.app.application.App; import com.chwl.app.avroom.activity.AVRoomActivity; -import com.chwl.app.avroom.firstcharge.FirstChargeDialog; import com.chwl.app.common.LoadingFragment; import com.chwl.app.common.NetworkErrorFragment; import com.chwl.app.common.NoDataFragment; @@ -1274,10 +1273,6 @@ public abstract class BaseActivity extends RxAppCompatActivity .doOnError(throwable -> isShowingChargeDialog = false) .subscribe( userInfo -> { - if (userInfo.isFirstCharge()) { - isShowingChargeDialog = false; - FirstChargeDialog.start(context); - } else { new DialogManager(context).showOkCancelDialog(getString(R.string.tips_need_charge), new DialogManager.OkCancelDialogListener() { @Override @@ -1309,7 +1304,6 @@ public abstract class BaseActivity extends RxAppCompatActivity isShowingChargeDialog = false; } }); - } } ); diff --git a/app/src/main/java/com/chwl/app/base/BaseBindingDialog.java b/app/src/main/java/com/chwl/app/base/BaseBindingDialog.java new file mode 100644 index 000000000..98f900cdb --- /dev/null +++ b/app/src/main/java/com/chwl/app/base/BaseBindingDialog.java @@ -0,0 +1,91 @@ +package com.chwl.app.base; + +import android.content.Context; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.os.Bundle; +import android.view.Gravity; +import android.view.LayoutInflater; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; + +import androidx.appcompat.app.AppCompatDialog; +import androidx.databinding.DataBindingUtil; +import androidx.databinding.ViewDataBinding; + +import com.chwl.library.annatation.ActLayoutRes; +import com.netease.nim.uikit.common.util.sys.ScreenUtil; + +/** + * Created by huangmeng1 on 2018/4/12. + */ + +public abstract class BaseBindingDialog extends AppCompatDialog { + + + protected int width, height; + protected Context context; + protected int gravity; + + public BaseBindingDialog(Context context) { + this(context, 0); + } + + public BaseBindingDialog(Context context, int theme) { + super(context, theme); + this.context = context; + width = ScreenUtil.getDialogWidth(); + height = WindowManager.LayoutParams.WRAP_CONTENT; + gravity = Gravity.CENTER; + } + + protected T binding; + + @Override + protected void onStart() { + super.onStart(); + Window window = getWindow(); + if (window != null) { + window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + WindowManager.LayoutParams windowParams = window.getAttributes(); + windowParams.width = width; + windowParams.height = height; + windowParams.dimAmount = 0.5f; + windowParams.gravity = gravity; + windowParams.x = 0; + windowParams.y = 0; + // window.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL); + window.setAttributes(windowParams); + } + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + View inflate = LayoutInflater.from(getContext()).inflate(getClass().getAnnotation(ActLayoutRes.class).value(), null); + setContentView(inflate.getRootView()); + setCancelable(true); + setCanceledOnTouchOutside(true); + binding = DataBindingUtil.bind(inflate); + init(); + } + + protected abstract void init(); + + public void openDialog() { + try { + show(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public void closeDialog() { + try { + dismiss(); + } catch (Exception e) { + e.printStackTrace(); + } + } +} diff --git a/app/src/main/java/com/chwl/app/home/adapter/RoomActAdapter.kt b/app/src/main/java/com/chwl/app/home/adapter/RoomActAdapter.kt index 69738c92a..edfe8d14d 100644 --- a/app/src/main/java/com/chwl/app/home/adapter/RoomActAdapter.kt +++ b/app/src/main/java/com/chwl/app/home/adapter/RoomActAdapter.kt @@ -6,7 +6,6 @@ import android.view.View import android.view.ViewGroup import android.widget.ImageView import com.chwl.app.R -import com.chwl.app.avroom.firstcharge.FirstChargeDialog import com.chwl.app.ui.utils.ImageLoadUtils import com.chwl.app.ui.webview.room_banner.RoomBannerWebDialogActivity import com.chwl.app.ui.widget.rollviewpager.adapter.StaticPagerAdapter @@ -23,30 +22,13 @@ class RoomActAdapter(private val mContext: Context, private val data: List - if (bannerInfo.isFirstCharge) { - FirstChargeDialog.start(mContext) - } else { AvRoomModel.get().activityClickLog("2", actId).subscribe() if (bannerInfo.skipType == 3) { val list = data.filterList { @@ -59,7 +41,6 @@ class RoomActAdapter(private val mContext: Context, private val data: List { - if (userInfo.isFirstCharge()) { - ivFirstRecharge.setVisibility(View.VISIBLE); - } - }); - } - } private void showLoadingAnimation() { @@ -1294,10 +1280,6 @@ public class GiftDialog extends BottomSheetDialog implements View.OnClickListene map.put(IReportConstants.MODULE, IReportConstants.PEKO_PAY); ReportManager.get().reportEvent(IReportConstants.PAYPAGE_SHOW, map); break; - - case R.id.iv_first_recharge: - FirstChargeDialog.start(context); - break; case R.id.tv_reload: reloadData(true); break; @@ -1434,13 +1416,6 @@ public class GiftDialog extends BottomSheetDialog implements View.OnClickListene } } - @Subscribe(threadMode = ThreadMode.MAIN) - public void onFirstRechargeEvent(FirstChargeEvent event) { - if (ivFirstRecharge != null) { - ivFirstRecharge.setVisibility(View.GONE); - } - } - @Subscribe(threadMode = ThreadMode.MAIN) public void onWalletInfoUpdate(UpdateWalletInfoEvent event) { goldWalletInfo = PayModel.get().getCurrentWalletInfo(); diff --git a/app/src/main/java/com/chwl/app/ui/widget/dialog/CommonMessageDialog.kt b/app/src/main/java/com/chwl/app/ui/widget/dialog/CommonMessageDialog.kt index 58e5812c9..d3d8968d2 100644 --- a/app/src/main/java/com/chwl/app/ui/widget/dialog/CommonMessageDialog.kt +++ b/app/src/main/java/com/chwl/app/ui/widget/dialog/CommonMessageDialog.kt @@ -3,7 +3,7 @@ package com.chwl.app.ui.widget.dialog import android.content.Context import com.chwl.app.R import com.chwl.app.databinding.DialogCommonMessageBinding -import com.chwl.app.treasure_box.widget.dialog.BaseBindingDialog +import com.chwl.app.base.BaseBindingDialog import com.chwl.library.annatation.ActLayoutRes @ActLayoutRes(R.layout.dialog_common_message) diff --git a/app/src/main/res/drawable-xhdpi/ic_charm_level_max.webp b/app/src/main/res/drawable-xhdpi/ic_charm_level_max.webp new file mode 100644 index 000000000..31b919f66 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_charm_level_max.webp differ diff --git a/app/src/main/res/drawable-xhdpi/ic_charm_level_min.webp b/app/src/main/res/drawable-xhdpi/ic_charm_level_min.webp new file mode 100644 index 000000000..17215c672 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_charm_level_min.webp differ diff --git a/app/src/main/res/layout/box_ranking_list_item.xml b/app/src/main/res/layout/box_ranking_list_item.xml deleted file mode 100644 index 4279e4436..000000000 --- a/app/src/main/res/layout/box_ranking_list_item.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_bottom_gift.xml b/app/src/main/res/layout/dialog_bottom_gift.xml index 6d22dc76a..8f163aefd 100644 --- a/app/src/main/res/layout/dialog_bottom_gift.xml +++ b/app/src/main/res/layout/dialog_bottom_gift.xml @@ -450,17 +450,6 @@ android:textSize="@dimen/sp_13" app:drawableEndCompat="@drawable/ic_arrow_recharge" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/dialog_first_charge_prize.xml b/app/src/main/res/layout/dialog_first_charge_prize.xml deleted file mode 100644 index f09440c36..000000000 --- a/app/src/main/res/layout/dialog_first_charge_prize.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/fragment_av_room_game.xml b/app/src/main/res/layout/fragment_av_room_game.xml index 61387347c..4b7af885c 100644 --- a/app/src/main/res/layout/fragment_av_room_game.xml +++ b/app/src/main/res/layout/fragment_av_room_game.xml @@ -183,20 +183,6 @@ android:layout_marginEnd="16dp" app:rollviewpager_hint_gravity="center" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_single_room.xml b/app/src/main/res/layout/fragment_single_room.xml index 188bf1a57..2afdb3b51 100644 --- a/app/src/main/res/layout/fragment_single_room.xml +++ b/app/src/main/res/layout/fragment_single_room.xml @@ -155,33 +155,6 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_first_charge_reward_one.xml b/app/src/main/res/layout/item_first_charge_reward_one.xml deleted file mode 100644 index c02290622..000000000 --- a/app/src/main/res/layout/item_first_charge_reward_one.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_first_charge_reward_three.xml b/app/src/main/res/layout/item_first_charge_reward_three.xml deleted file mode 100644 index cb62f544a..000000000 --- a/app/src/main/res/layout/item_first_charge_reward_three.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_first_charge_reward_two_left.xml b/app/src/main/res/layout/item_first_charge_reward_two_left.xml deleted file mode 100644 index 3df77b7fb..000000000 --- a/app/src/main/res/layout/item_first_charge_reward_two_left.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_first_charge_reward_two_left_small.xml b/app/src/main/res/layout/item_first_charge_reward_two_left_small.xml deleted file mode 100644 index 5b29842b6..000000000 --- a/app/src/main/res/layout/item_first_charge_reward_two_left_small.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_first_charge_reward_two_right.xml b/app/src/main/res/layout/item_first_charge_reward_two_right.xml deleted file mode 100644 index 9262adbfd..000000000 --- a/app/src/main/res/layout/item_first_charge_reward_two_right.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_first_charge_reward_two_right_small.xml b/app/src/main/res/layout/item_first_charge_reward_two_right_small.xml deleted file mode 100644 index ff9f5c1dd..000000000 --- a/app/src/main/res/layout/item_first_charge_reward_two_right_small.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/module_public_chat_hall/java/com/chwl/app/public_chat_hall/widget/ShutUpDialog.java b/app/src/module_public_chat_hall/java/com/chwl/app/public_chat_hall/widget/ShutUpDialog.java index afc46b870..15676d7de 100644 --- a/app/src/module_public_chat_hall/java/com/chwl/app/public_chat_hall/widget/ShutUpDialog.java +++ b/app/src/module_public_chat_hall/java/com/chwl/app/public_chat_hall/widget/ShutUpDialog.java @@ -6,7 +6,7 @@ import android.text.TextUtils; import android.view.View; import com.chwl.app.R; -import com.chwl.app.treasure_box.widget.dialog.BaseBindingDialog; +import com.chwl.app.base.BaseBindingDialog; import com.chwl.app.databinding.DialogPubRoomShutupBinding; import com.chwl.app.ui.widget.magicindicator.buildins.UIUtil; import com.chwl.core.public_chat_hall.manager.PublicChatHallDataManager; diff --git a/app/src/module_room_chat/res/layout/activity_room_box_ranking.xml b/app/src/module_room_chat/res/layout/activity_room_box_ranking.xml deleted file mode 100644 index ee20b4117..000000000 --- a/app/src/module_room_chat/res/layout/activity_room_box_ranking.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file