修復屏蔽bug

This commit is contained in:
wushaocheng
2022-10-23 01:51:58 +08:00
parent 044c48d5c3
commit 892f6d0284
19 changed files with 429 additions and 101 deletions

View File

@@ -334,7 +334,7 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
NewUserChargeGiftDialog.start(context); NewUserChargeGiftDialog.start(context);
DemoCache.saveNewUserChargeGift(2); DemoCache.saveNewUserChargeGift(2);
} }
checkShowAnchorCardView(); // checkShowAnchorCardView();
} }
} }
@@ -675,7 +675,7 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
EventBus.getDefault().post(new UnReadCountEvent(integer)); EventBus.getDefault().post(new UnReadCountEvent(integer));
} }
}); });
checkShowAnchorCardView(); // checkShowAnchorCardView();
} }
@SuppressLint("CheckResult") @SuppressLint("CheckResult")

View File

@@ -496,7 +496,7 @@ public class ButtonItemFactory {
* 拉黑 * 拉黑
*/ */
public static ButtonItem createAddToBlackListItem(DialogManager dialogManager, String account) { public static ButtonItem createAddToBlackListItem(DialogManager dialogManager, String account) {
return new ButtonItem(ResUtil.getString(R.string.erban_avroom_buttonitemfactory_030), () -> { return new ButtonItem(ResUtil.getString(R.string.me_block), () -> {
dialogManager.showOkCancelDialog(ResUtil.getString(R.string.erban_avroom_buttonitemfactory_031), true, dialogManager.showOkCancelDialog(ResUtil.getString(R.string.erban_avroom_buttonitemfactory_031), true,
new DialogManager.AbsOkDialogListener() { new DialogManager.AbsOkDialogListener() {
@Override @Override

View File

@@ -10,21 +10,29 @@ import android.widget.PopupWindow
import android.widget.TextView import android.widget.TextView
import androidx.core.view.isGone import androidx.core.view.isGone
import androidx.core.view.isVisible import androidx.core.view.isVisible
import androidx.fragment.app.FragmentActivity
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.mob.moblink.beans.LinkData.Res
import com.netease.nim.uikit.common.util.sys.ScreenUtil import com.netease.nim.uikit.common.util.sys.ScreenUtil
import com.yizhuan.erban.R import com.yizhuan.erban.R
import com.yizhuan.erban.UIHelper import com.yizhuan.erban.UIHelper
import com.yizhuan.erban.avroom.ButtonItemFactory
import com.yizhuan.erban.avroom.activity.AVRoomActivity import com.yizhuan.erban.avroom.activity.AVRoomActivity
import com.yizhuan.erban.avroom.adapter.ExitRoomAdapter import com.yizhuan.erban.avroom.adapter.ExitRoomAdapter
import com.yizhuan.erban.avroom.presenter.HomePartyPresenter import com.yizhuan.erban.avroom.presenter.HomePartyPresenter
import com.yizhuan.erban.base.BaseMvpActivity
import com.yizhuan.erban.common.widget.dialog.DialogManager
import com.yizhuan.erban.common.widget.dialog.DialogManager.LambdaOkDialogListener import com.yizhuan.erban.common.widget.dialog.DialogManager.LambdaOkDialogListener
import com.yizhuan.erban.common.widget.dialog.DialogManager.OkCancelDialogListener import com.yizhuan.erban.common.widget.dialog.DialogManager.OkCancelDialogListener
import com.yizhuan.erban.ui.utils.RVDelegate import com.yizhuan.erban.ui.utils.RVDelegate
import com.yizhuan.erban.ui.widget.ButtonItem
import com.yizhuan.xchat_android_constants.XChatConstants import com.yizhuan.xchat_android_constants.XChatConstants
import com.yizhuan.xchat_android_core.home.bean.HomeRoomInfo import com.yizhuan.xchat_android_core.home.bean.HomeRoomInfo
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager import com.yizhuan.xchat_android_core.manager.AvRoomDataManager
import com.yizhuan.xchat_android_core.room.model.AvRoomModel import com.yizhuan.xchat_android_core.room.model.AvRoomModel
import com.yizhuan.xchat_android_core.user.UserModel
import com.yizhuan.xchat_android_core.utils.net.BeanObserver
import com.yizhuan.xchat_android_library.annatation.ActLayoutRes import com.yizhuan.xchat_android_library.annatation.ActLayoutRes
import com.yizhuan.xchat_android_library.utils.ResUtil import com.yizhuan.xchat_android_library.utils.ResUtil
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable
@@ -73,8 +81,38 @@ class ExitRoomPopupWindow(val avRoomActivity: AVRoomActivity) : PopupWindow() {
setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))
tvReport.setOnClickListener { tvReport.setOnClickListener {
val roomInfo = AvRoomDataManager.get().mCurrentRoomInfo ?: return@setOnClickListener val roomInfo = AvRoomDataManager.get().mCurrentRoomInfo ?: return@setOnClickListener
UIHelper.showReportPage(avRoomActivity, roomInfo.uid, XChatConstants.REPORT_TYPE_ROOM)
dismiss() val list: MutableList<ButtonItem> = ArrayList()
val item1 = ButtonItem(
ResUtil.getString(R.string.me_shield_room)
) {
UserModel.get().addReport(roomInfo.uid, 1)
.subscribe(object : BeanObserver<String?>() {
override fun onErrorMsg(error: String) {
dismiss()
avRoomActivity.toast(error)
}
override fun onSuccess(s: String) {
avRoomActivity.dialogManager.dismissDialog()
avRoomActivity.toast(ResUtil.getString(R.string.me_shield_success))
handleExitRoom()
dismiss()
}
})
}
list.add(item1)
val item2 = ButtonItem(
ResUtil.getString(R.string.layout_dialog_exit_room_01)
) {
UIHelper.showReportPage(avRoomActivity, roomInfo.uid, XChatConstants.REPORT_TYPE_ROOM)
avRoomActivity.dialogManager.dismissDialog()
dismiss()
}
list.add(item2)
avRoomActivity.dialogManager.showCommonPopupDialog(list, ResUtil.getString(R.string.cancel))
} }
tvExitRoom.setOnClickListener { tvExitRoom.setOnClickListener {

View File

@@ -8,13 +8,20 @@ import android.graphics.drawable.ColorDrawable
import android.text.Spannable import android.text.Spannable
import android.text.SpannableStringBuilder import android.text.SpannableStringBuilder
import android.text.style.ForegroundColorSpan import android.text.style.ForegroundColorSpan
import android.util.Log
import android.view.Gravity import android.view.Gravity
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.WindowManager import android.view.WindowManager
import android.widget.PopupWindow import android.widget.PopupWindow
import android.widget.TextView import android.widget.TextView
import com.android.billingclient.api.BillingClient
import com.android.billingclient.api.BillingResult
import com.android.billingclient.api.Purchase import com.android.billingclient.api.Purchase
import com.android.billingclient.api.SkuDetails
import com.appsflyer.AFInAppEventParameterName
import com.appsflyer.AFInAppEventType
import com.appsflyer.AppsFlyerLib
import com.google.android.flexbox.AlignItems import com.google.android.flexbox.AlignItems
import com.google.android.flexbox.FlexboxLayoutManager import com.google.android.flexbox.FlexboxLayoutManager
import com.google.android.flexbox.JustifyContent import com.google.android.flexbox.JustifyContent
@@ -28,7 +35,9 @@ import com.yizhuan.erban.ui.utils.RVDelegate
import com.yizhuan.xchat_android_core.pay.PayModel import com.yizhuan.xchat_android_core.pay.PayModel
import com.yizhuan.xchat_android_core.pay.bean.FirstChargeGoods import com.yizhuan.xchat_android_core.pay.bean.FirstChargeGoods
import com.yizhuan.xchat_android_core.pay.bean.FirstChargeReward import com.yizhuan.xchat_android_core.pay.bean.FirstChargeReward
import com.yizhuan.xchat_android_core.pay.bean.PayRecordId
import com.yizhuan.xchat_android_core.pay.event.FirstChargeEvent import com.yizhuan.xchat_android_core.pay.event.FirstChargeEvent
import com.yizhuan.xchat_android_core.utils.net.IgnoreException
import com.yizhuan.xchat_android_core.utils.toast import com.yizhuan.xchat_android_core.utils.toast
import com.yizhuan.xchat_android_library.annatation.ActLayoutRes import com.yizhuan.xchat_android_library.annatation.ActLayoutRes
import com.yizhuan.xchat_android_library.utils.ResUtil import com.yizhuan.xchat_android_library.utils.ResUtil
@@ -57,6 +66,7 @@ class FirstChargeDialog : BaseViewBindingActivity<DialogFirstChargeBinding>(),
} }
private const val BIND_CODE_GOLD = 200 private const val BIND_CODE_GOLD = 200
private const val TAG = "FirstChargeDialog"
} }
@SuppressLint("CheckResult") @SuppressLint("CheckResult")
@@ -87,12 +97,12 @@ class FirstChargeDialog : BaseViewBindingActivity<DialogFirstChargeBinding>(),
} }
binding.ivHelp.setOnClickListener { showHelpPopup() } binding.ivHelp.setOnClickListener { showHelpPopup() }
binding.tvCharge.setOnClickListener { binding.tvCharge.setOnClickListener {
currGoods?.let { // currGoods?.let {
SelectPayTypeDialog.newInstance(it.chargeProdId, "¥${it.chargeMoney}") // SelectPayTypeDialog.newInstance(it.chargeProdId, "¥${it.chargeMoney}")
.show(this) // .show(this)
} ?: run { // } ?: run {
ResUtil.getString(R.string.avroom_firstcharge_firstchargedialog_01).toast() // ResUtil.getString(R.string.avroom_firstcharge_firstchargedialog_01).toast()
} // }
} }
rvDelegate = RVDelegate.Builder<FirstChargeReward>() rvDelegate = RVDelegate.Builder<FirstChargeReward>()
@@ -103,6 +113,22 @@ class FirstChargeDialog : BaseViewBindingActivity<DialogFirstChargeBinding>(),
}) })
.setRecyclerView(binding.recyclerView) .setRecyclerView(binding.recyclerView)
.build() .build()
binding.viewBg.setOnClickListener {
//do nothing
}
binding.root.setOnClickListener {
finish()
}
}
private fun initBilling() {
billingManager = BillingManager(this, this)
}
@SuppressLint("CheckResult")
override fun onBillingClientSetupFinished() {
Log.i(TAG, "onBillingClientSetupFinished")
dialogManager.showProgressDialog(this) dialogManager.showProgressDialog(this)
PayModel.get().firstChargeList PayModel.get().firstChargeList
.compose(bindToLifecycle()) .compose(bindToLifecycle())
@@ -115,17 +141,6 @@ class FirstChargeDialog : BaseViewBindingActivity<DialogFirstChargeBinding>(),
SingleToastUtil.showToast(it.message) SingleToastUtil.showToast(it.message)
finish() finish()
}) })
binding.viewBg.setOnClickListener {
//do nothing
}
binding.root.setOnClickListener {
finish()
}
}
private fun initBilling() {
billingManager = BillingManager(this, this)
} }
@SuppressLint("SetTextI18n") @SuppressLint("SetTextI18n")
@@ -150,6 +165,137 @@ class FirstChargeDialog : BaseViewBindingActivity<DialogFirstChargeBinding>(),
binding.rbPlanC.text = "${goodsList[2].chargeMoney}$" binding.rbPlanC.text = "${goodsList[2].chargeMoney}$"
} }
} }
initProduceList(goodsList)
}
private fun initProduceList(chargeBeanList: List<FirstChargeGoods>) {
val productKeys: MutableList<String> = ArrayList()
for (chargeBean in chargeBeanList) {
productKeys.add(chargeBean.chargeProdId)
}
billingManager.querySkuDetailsAsync(
BillingClient.SkuType.INAPP, productKeys
) { billingResult: BillingResult, skuDetailsList: List<SkuDetails>? ->
if (billingResult.responseCode != BillingClient.BillingResponseCode.OK) {
Log.w(
TAG,
"Unsuccessful query for type: " + BillingClient.SkuType.INAPP
+ ". Error code: " + billingResult.responseCode
)
} else if (skuDetailsList != null && skuDetailsList.isNotEmpty()) {
// val showChargeList: MutableList<FirstChargeGoods> = ArrayList()
for (chargeBean in chargeBeanList) {
for (skuDetails in skuDetailsList) {
if (skuDetails.sku == chargeBean.chargeProdId) {
chargeBean.skuDetails = skuDetails
// showChargeList.add(chargeBean)
break
}
}
}
}
}
}
/*商品更新回调*/
@SuppressLint("CheckResult")
override fun onPurchasesUpdated(purchases: List<Purchase>) {
for (purchase in purchases) {
if (purchase.purchaseState == Purchase.PurchaseState.PURCHASED &&
purchase.accountIdentifiers != null
) {
PayModel.get().verifyOrder(
purchase.accountIdentifiers!!.obfuscatedAccountId,
purchase.skus[0],
purchase.packageName,
purchase.purchaseToken
)
.compose(bindToLifecycle())
.subscribe(
{ token: String? ->
//L.i("token=" + token);
billingManager.consumeAsync(token)
var skuDetails: SkuDetails? = null
val goodList = goodsList
if (goodList != null && goodList.isNotEmpty()) {
for (datum in goodList) {
if (datum.chargeProdId == purchase.skus[0]) {
skuDetails = datum.skuDetails
break
}
}
}
if (skuDetails != null) {
val eventValue: MutableMap<String, Any> =
HashMap()
eventValue[AFInAppEventParameterName.CONTENT_TYPE] = "Gold"
eventValue[AFInAppEventParameterName.QUANTITY] = 1
eventValue[AFInAppEventParameterName.CONTENT_ID] = purchase.orderId
eventValue[AFInAppEventParameterName.REVENUE] =
skuDetails.priceAmountMicros / 1000000f
eventValue["Price"] = skuDetails.price
eventValue[AFInAppEventParameterName.CURRENCY] =
skuDetails.priceCurrencyCode
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: SkuDetails?) {
if (skuDetails != null) {
Log.d(TAG, "BuyProduct:" + skuDetails.sku)
PayModel.get().placeOrder(skuDetails.sku)
.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) {
billingManager.onQueryPurchases()
}
}
override fun onDestroy() {
super.onDestroy()
EventBus.getDefault().unregister(this)
billingManager.destroy()
} }
private fun updateCurrGoods(firstChargeGoods: FirstChargeGoods?) { private fun updateCurrGoods(firstChargeGoods: FirstChargeGoods?) {
@@ -217,25 +363,4 @@ class FirstChargeDialog : BaseViewBindingActivity<DialogFirstChargeBinding>(),
finish() finish()
} }
override fun onDestroy() {
super.onDestroy()
EventBus.getDefault().unregister(this)
}
override fun onBillingClientSetupFinished() {
}
override fun onPurchasesUpdated(purchases: MutableList<Purchase>?) {
}
override fun onConsumeFinished(token: String?, result: Int) {
}
override fun onFailedHandle(result: Int) {
}
} }

View File

@@ -197,6 +197,12 @@ public class HomeTabHomeFragment extends BaseFragment {
EventBus.getDefault().unregister(this); EventBus.getDefault().unregister(this);
} }
@Override
public void onResume() {
super.onResume();
if (isResumed()) getData();
}
@Subscribe(threadMode = ThreadMode.MAIN) @Subscribe(threadMode = ThreadMode.MAIN)
public void onRefreshHomeDataEvent(RefreshHomeDataEvent event) { public void onRefreshHomeDataEvent(RefreshHomeDataEvent event) {
if (isResumed()) getData(); if (isResumed()) getData();

View File

@@ -360,38 +360,38 @@ class MeFragment : BaseFragment(), View.OnClickListener {
) )
) )
R.id.me_item_vip -> { R.id.me_item_vip -> {
CommonWebViewActivity.start(context, UriProvider.getOfficialPay(5)) // CommonWebViewActivity.start(context, UriProvider.getOfficialPay(5))
// val channel = AppMetaDataUtil.getChannelID() val channel = AppMetaDataUtil.getChannelID()
// if (channel.equals("google")) { if (channel.equals("google")) {
// VipMainActivity.start(mContext) VipMainActivity.start(mContext)
// StatisticManager.Instance() StatisticManager.Instance()
// .onEvent( .onEvent(
// StatisticsProtocol.EVENT_VIP_ENTRANCE_ME_CLICK, StatisticsProtocol.EVENT_VIP_ENTRANCE_ME_CLICK,
// getString(R.string.me_noble_my_entry_click_event) getString(R.string.me_noble_my_entry_click_event)
// ) )
// //后面产品新加的 //后面产品新加的
// StatisticManager.Instance() StatisticManager.Instance()
// .onEvent( .onEvent(
// StatisticsProtocol.EVENT_USERCENTER_NOBLE_CARD_CLICK, StatisticsProtocol.EVENT_USERCENTER_NOBLE_CARD_CLICK,
// getString(R.string.me_Individual_center_noble_card_card_click) getString(R.string.me_Individual_center_noble_card_card_click)
// ) )
// } else { } else {
// CommonWebViewActivity.start(context, UriProvider.getOfficialPay(5)) CommonWebViewActivity.start(context, UriProvider.getOfficialPay(5))
// } }
} }
R.id.me_item_wallet -> { R.id.me_item_wallet -> {
CommonWebViewActivity.start(context, UriProvider.getOfficialPay(4)) // CommonWebViewActivity.start(context, UriProvider.getOfficialPay(4))
// val channel = AppMetaDataUtil.getChannelID() val channel = AppMetaDataUtil.getChannelID()
// if (channel.equals("google")) { if (channel.equals("google")) {
// ChargeActivity.start(mContext) ChargeActivity.start(mContext)
// StatisticManager.Instance() StatisticManager.Instance()
// .onEvent( .onEvent(
// StatisticsProtocol.EVENT_USERCENTER_RECHARGE_CARD_CLICK, StatisticsProtocol.EVENT_USERCENTER_RECHARGE_CARD_CLICK,
// getString(R.string.me_personal_center_recharge_card_click) getString(R.string.me_personal_center_recharge_card_click)
// ) )
// } else { } else {
// CommonWebViewActivity.start(context, UriProvider.getOfficialPay(4)) CommonWebViewActivity.start(context, UriProvider.getOfficialPay(4))
// } }
} }
R.id.ll_room -> { R.id.ll_room -> {
//我的房间,开房 //我的房间,开房

View File

@@ -93,7 +93,7 @@ public class ModifyPwdActivity extends BaseBindingActivity<ActivityModifyPwdBind
private void setModifyPwdUI() { private void setModifyPwdUI() {
initWhiteTitleBar(ResUtil.getString(R.string.ui_setting_modifypwdactivity_04)); initWhiteTitleBar(ResUtil.getString(R.string.ui_setting_modifypwdactivity_04));
mBinding.btnForget.setVisibility(View.GONE);
mBinding.edCurrentPwd.setTitleHint(ResUtil.getString(R.string.ui_setting_modifypwdactivity_05)); mBinding.edCurrentPwd.setTitleHint(ResUtil.getString(R.string.ui_setting_modifypwdactivity_05));
mBinding.edCurrentPwd.setEditHint(ResUtil.getString(R.string.ui_setting_modifypwdactivity_06)); mBinding.edCurrentPwd.setEditHint(ResUtil.getString(R.string.ui_setting_modifypwdactivity_06));
mBinding.edPwd.setTitleHint(ResUtil.getString(R.string.ui_setting_modifypwdactivity_07)); mBinding.edPwd.setTitleHint(ResUtil.getString(R.string.ui_setting_modifypwdactivity_07));

View File

@@ -7,6 +7,7 @@ import androidx.recyclerview.widget.LinearLayoutManager
import com.trello.rxlifecycle3.android.FragmentEvent import com.trello.rxlifecycle3.android.FragmentEvent
import com.yizhuan.erban.R import com.yizhuan.erban.R
import com.yizhuan.erban.UIHelper import com.yizhuan.erban.UIHelper
import com.yizhuan.erban.avroom.ButtonItemFactory
import com.yizhuan.erban.base.BaseViewBindingFragment import com.yizhuan.erban.base.BaseViewBindingFragment
import com.yizhuan.erban.common.widget.dialog.DialogManager.OkCancelDialogListener import com.yizhuan.erban.common.widget.dialog.DialogManager.OkCancelDialogListener
import com.yizhuan.erban.community.helper.ShareDynamicHelper import com.yizhuan.erban.community.helper.ShareDynamicHelper
@@ -14,29 +15,45 @@ import com.yizhuan.erban.databinding.FragmentUserinfoDynamicBinding
import com.yizhuan.erban.ui.user.adapter.UserInfoDynamicAdapter import com.yizhuan.erban.ui.user.adapter.UserInfoDynamicAdapter
import com.yizhuan.erban.ui.user.viewmodel.UserInfoViewModel import com.yizhuan.erban.ui.user.viewmodel.UserInfoViewModel
import com.yizhuan.erban.ui.widget.ButtonItem import com.yizhuan.erban.ui.widget.ButtonItem
import com.yizhuan.erban.ui.widget.recyclerview.decoration.VerticalDecoration import com.yizhuan.erban.ui.widget.recyclerview.decoration.HorizontalDecoration
import com.yizhuan.xchat_android_constants.XChatConstants import com.yizhuan.xchat_android_constants.XChatConstants
import com.yizhuan.xchat_android_core.auth.AuthModel import com.yizhuan.xchat_android_core.auth.AuthModel
import com.yizhuan.xchat_android_core.community.bean.WorldDynamicBean import com.yizhuan.xchat_android_core.community.bean.WorldDynamicBean
import com.yizhuan.xchat_android_core.community.dynamic.DynamicModel import com.yizhuan.xchat_android_core.community.dynamic.DynamicModel
import com.yizhuan.xchat_android_core.community.event.DynamicRefreshEvent
import com.yizhuan.xchat_android_core.statistic.StatisticManager import com.yizhuan.xchat_android_core.statistic.StatisticManager
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol
import com.yizhuan.xchat_android_core.user.UserModel import com.yizhuan.xchat_android_core.user.UserModel
import com.yizhuan.xchat_android_core.user.bean.UserDetailInfo import com.yizhuan.xchat_android_core.user.bean.UserDetailInfo
import com.yizhuan.xchat_android_core.utils.net.BeanObserver
import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver
import com.yizhuan.xchat_android_library.annatation.ActLayoutRes import com.yizhuan.xchat_android_library.annatation.ActLayoutRes
import com.yizhuan.xchat_android_library.utils.ResUtil
import com.yizhuan.xchat_android_library.utils.SizeUtils import com.yizhuan.xchat_android_library.utils.SizeUtils
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode
@ActLayoutRes(R.layout.fragment_userinfo_dynamic) @ActLayoutRes(R.layout.fragment_userinfo_dynamic)
class UserInfoDynamicFragment : BaseViewBindingFragment<FragmentUserinfoDynamicBinding>() { class UserInfoDynamicFragment : BaseViewBindingFragment<FragmentUserinfoDynamicBinding>() {
private val vm by activityViewModels<UserInfoViewModel>() private val vm by activityViewModels<UserInfoViewModel>()
private var dynamicAdapter: UserInfoDynamicAdapter? = null private var dynamicAdapter: UserInfoDynamicAdapter? = null
override fun init() { override fun init() {
EventBus.getDefault().register(this)
vm.userInfoDetailData.observe(this, Observer { dataBean: UserDetailInfo.DataBean -> vm.userInfoDetailData.observe(this, Observer { dataBean: UserDetailInfo.DataBean ->
initDynamicList(dataBean.dynamicInfo) initDynamicList(dataBean.dynamicInfo)
}) })
} }
@Subscribe(threadMode = ThreadMode.MAIN)
fun onDynamicRefreshEvent(event: DynamicRefreshEvent?) {
if (isResumed) {
vm.userInfoDetailData.observe(this, Observer { dataBean: UserDetailInfo.DataBean ->
initDynamicList(dataBean.dynamicInfo)
})
}
}
/** /**
* 动态列表 * 动态列表
* *
@@ -45,23 +62,48 @@ class UserInfoDynamicFragment : BaseViewBindingFragment<FragmentUserinfoDynamicB
private fun initDynamicList(list: List<WorldDynamicBean>) { private fun initDynamicList(list: List<WorldDynamicBean>) {
if (dynamicAdapter == null) { if (dynamicAdapter == null) {
binding.rvDynamic.layoutManager = LinearLayoutManager(mContext) binding.rvDynamic.layoutManager = LinearLayoutManager(mContext)
binding.rvDynamic.addItemDecoration( binding.rvDynamic.addItemDecoration(HorizontalDecoration(SizeUtils.dp2px(mContext, 15f), false, false))
VerticalDecoration(
SizeUtils.dp2px(mContext, 15f),
false,
false
)
)
dynamicAdapter = UserInfoDynamicAdapter(mContext) dynamicAdapter = UserInfoDynamicAdapter(mContext)
dynamicAdapter?.setEnableLoadMore(false) dynamicAdapter?.setEnableLoadMore(false)
dynamicAdapter?.setOnItemChildClickListener { _, view: View, pos: Int -> dynamicAdapter?.setOnItemChildClickListener { _, view: View, pos: Int ->
val bean: WorldDynamicBean = val bean: WorldDynamicBean =
dynamicAdapter?.getItem(pos) ?: return@setOnItemChildClickListener dynamicAdapter?.getItem(pos) ?: return@setOnItemChildClickListener
if (view.id == R.id.iv_more) { if (view.id == R.id.iv_more) {
val dataList: MutableList<ButtonItem> = val list: MutableList<ButtonItem> = ArrayList()
ArrayList()
if (!UserModel.get().isMyseft(bean.uid)) { if (!UserModel.get().isMyseft(bean.uid)) {
val item = ButtonItem(getString(R.string.me_report)) { val item = ButtonItem(
getString(R.string.me_shield_dynamic)
) {
UserModel.get().addReport(bean.dynamicId, 0)
.subscribe(object : BeanObserver<String?>() {
override fun onErrorMsg(error: String) {
dialogManager.dismissDialog()
toast(error)
}
override fun onSuccess(s: String) {
dialogManager.dismissDialog()
toast(ResUtil.getString(R.string.me_shield_success))
if (pos < (dynamicAdapter?.data?.size ?: 0)) {
if (bean == dynamicAdapter?.getItem(pos)) {
dynamicAdapter?.remove(pos)
}
}
}
})
}
list.add(item)
}
if (!UserModel.get().isMyseft(bean.uid)) {
val blackListItem = ButtonItemFactory.createAddToBlackListItem(
dialogManager, bean.uid.toString()
)
list.add(blackListItem)
}
if (!UserModel.get().isMyseft(bean.uid)) {
val item = ButtonItem(
getString(R.string.me_report_dynamic)
) {
StatisticManager.Instance().onEvent( StatisticManager.Instance().onEvent(
StatisticsProtocol.EVENT_WORLD_REPORT_MOMENTS, StatisticsProtocol.EVENT_WORLD_REPORT_MOMENTS,
getString(R.string.me_report_the_dynamic) getString(R.string.me_report_the_dynamic)
@@ -71,7 +113,7 @@ class UserInfoDynamicFragment : BaseViewBindingFragment<FragmentUserinfoDynamicB
XChatConstants.REPORT_TYPE_DYNAMIC_SQUARE XChatConstants.REPORT_TYPE_DYNAMIC_SQUARE
) )
} }
dataList.add(item) list.add(item)
} }
if (UserModel.get().isMyseft(bean.uid) || if (UserModel.get().isMyseft(bean.uid) ||
isThisWorldOwner(bean) isThisWorldOwner(bean)
@@ -79,9 +121,9 @@ class UserInfoDynamicFragment : BaseViewBindingFragment<FragmentUserinfoDynamicB
val item = ButtonItem( val item = ButtonItem(
getString(R.string.me_delete) getString(R.string.me_delete)
) { deleteDynamic(pos, dynamicAdapter) } ) { deleteDynamic(pos, dynamicAdapter) }
dataList.add(item) list.add(item)
} }
dialogManager.showCommonPopupDialog(dataList, getString(R.string.me_cancel)) dialogManager.showCommonPopupDialog(list, getString(R.string.cancel))
} else if (view.id == R.id.ll_share) { } else if (view.id == R.id.ll_share) {
StatisticManager.Instance().onEvent( StatisticManager.Instance().onEvent(
StatisticsProtocol.EVENT_WORLD_SHARE_MOMENTS, StatisticsProtocol.EVENT_WORLD_SHARE_MOMENTS,
@@ -132,4 +174,10 @@ class UserInfoDynamicFragment : BaseViewBindingFragment<FragmentUserinfoDynamicB
private fun isThisWorldOwner(bean: WorldDynamicBean?): Boolean { private fun isThisWorldOwner(bean: WorldDynamicBean?): Boolean {
return bean != null && bean.worldUid == AuthModel.get().currentUid return bean != null && bean.worldUid == AuthModel.get().currentUid
} }
override fun onDestroyView() {
EventBus.getDefault().unregister(this)
super.onDestroyView()
}
} }

View File

@@ -40,7 +40,7 @@
android:drawableTop="@drawable/ic_room_report" android:drawableTop="@drawable/ic_room_report"
android:drawablePadding="12dp" android:drawablePadding="12dp"
android:gravity="center" android:gravity="center"
android:text="@string/layout_dialog_exit_room_01" android:text="@string/me_shield_report"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="12sp" /> android:textSize="12sp" />

View File

@@ -988,7 +988,15 @@
<string name="me_data">資料</string> <string name="me_data">資料</string>
<string name="me_dynamic">動態</string> <string name="me_dynamic">動態</string>
<string name="me_gift_wall">禮物墻</string> <string name="me_gift_wall">禮物墻</string>
<string name="me_shield_room">屏蔽房間</string>
<string name="me_shield_report">屏蔽舉報</string>
<string name="me_shield_success">屏蔽成功</string>
<string name="me_block_success">拉黑成功</string>
<string name="me_report">舉報</string> <string name="me_report">舉報</string>
<string name="me_shield">屏蔽</string>
<string name="me_report_dynamic">舉報動態或用戶</string>
<string name="me_shield_dynamic">屏蔽動態</string>
<string name="me_block">拉黑用戶</string>
<string name="me_report_the_dynamic">舉報動態-區分-動態廣場</string> <string name="me_report_the_dynamic">舉報動態-區分-動態廣場</string>
<string name="me_delete">刪除</string> <string name="me_delete">刪除</string>
<string name="me_cancel">取消</string> <string name="me_cancel">取消</string>
@@ -3153,7 +3161,7 @@
<string name="layout_dialog_custom_confirm_send_gold_03">昵稱昵稱</string> <string name="layout_dialog_custom_confirm_send_gold_03">昵稱昵稱</string>
<string name="layout_dialog_custom_confirm_send_gold_04">轉贈1000鉆石</string> <string name="layout_dialog_custom_confirm_send_gold_04">轉贈1000鉆石</string>
<string name="layout_dialog_custom_one_show_tips_01">是否進行操作</string> <string name="layout_dialog_custom_one_show_tips_01">是否進行操作</string>
<string name="layout_dialog_exit_room_01">舉報房間</string> <string name="layout_dialog_exit_room_01">舉報房間或用戶</string>
<string name="layout_dialog_exit_room_02">收起房間</string> <string name="layout_dialog_exit_room_02">收起房間</string>
<string name="layout_dialog_exit_room_03">退出房間</string> <string name="layout_dialog_exit_room_03">退出房間</string>
<string name="layout_dialog_exit_room_04">為你推薦</string> <string name="layout_dialog_exit_room_04">為你推薦</string>

View File

@@ -33,6 +33,7 @@ import com.netease.nim.uikit.business.session.emoji.MoonUtil;
import com.trello.rxlifecycle3.android.ActivityEvent; import com.trello.rxlifecycle3.android.ActivityEvent;
import com.yizhuan.erban.R; import com.yizhuan.erban.R;
import com.yizhuan.erban.UIHelper; import com.yizhuan.erban.UIHelper;
import com.yizhuan.erban.avroom.ButtonItemFactory;
import com.yizhuan.erban.base.BaseActivity; import com.yizhuan.erban.base.BaseActivity;
import com.yizhuan.erban.common.widget.CircleImageView; import com.yizhuan.erban.common.widget.CircleImageView;
import com.yizhuan.erban.common.widget.dialog.DialogManager; import com.yizhuan.erban.common.widget.dialog.DialogManager;
@@ -44,6 +45,7 @@ import com.yizhuan.erban.community.helper.ShareDynamicHelper;
import com.yizhuan.erban.community.photo.BigPhotoActivity; import com.yizhuan.erban.community.photo.BigPhotoActivity;
import com.yizhuan.erban.community.photo.DynamicImageAdapter; import com.yizhuan.erban.community.photo.DynamicImageAdapter;
import com.yizhuan.erban.community.photo.PagerOption; import com.yizhuan.erban.community.photo.PagerOption;
import com.yizhuan.erban.community.square.SquareFragment;
import com.yizhuan.erban.community.utils.ObjectTypeHelper; import com.yizhuan.erban.community.utils.ObjectTypeHelper;
import com.yizhuan.erban.community.widget.DynamicNickDetailWidget; import com.yizhuan.erban.community.widget.DynamicNickDetailWidget;
import com.yizhuan.erban.community.widget.ExpandableTextView; import com.yizhuan.erban.community.widget.ExpandableTextView;
@@ -67,11 +69,14 @@ import com.yizhuan.xchat_android_core.community.bean.comment.ReplyResult;
import com.yizhuan.xchat_android_core.community.dynamic.DynamicDetailModel; import com.yizhuan.xchat_android_core.community.dynamic.DynamicDetailModel;
import com.yizhuan.xchat_android_core.community.dynamic.DynamicModel; import com.yizhuan.xchat_android_core.community.dynamic.DynamicModel;
import com.yizhuan.xchat_android_core.community.event.DynamicDetailFinishEvent; import com.yizhuan.xchat_android_core.community.event.DynamicDetailFinishEvent;
import com.yizhuan.xchat_android_core.community.event.DynamicPublishEvent;
import com.yizhuan.xchat_android_core.community.event.DynamicRefreshEvent;
import com.yizhuan.xchat_android_core.noble.NobleUtil; import com.yizhuan.xchat_android_core.noble.NobleUtil;
import com.yizhuan.xchat_android_core.statistic.StatisticManager; import com.yizhuan.xchat_android_core.statistic.StatisticManager;
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol; import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
import com.yizhuan.xchat_android_core.user.UserModel; import com.yizhuan.xchat_android_core.user.UserModel;
import com.yizhuan.xchat_android_core.user.bean.UserInfo; import com.yizhuan.xchat_android_core.user.bean.UserInfo;
import com.yizhuan.xchat_android_core.utils.net.BeanObserver;
import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver; import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver;
import com.yizhuan.xchat_android_core.utils.net.RxHelper; import com.yizhuan.xchat_android_core.utils.net.RxHelper;
import com.yizhuan.xchat_android_library.utils.ListUtils; import com.yizhuan.xchat_android_library.utils.ListUtils;
@@ -770,7 +775,33 @@ public class DynamicDetailActivity extends BaseActivity implements IEmoticonSele
private void header_more() { private void header_more() {
List<ButtonItem> list = new ArrayList<>(); List<ButtonItem> list = new ArrayList<>();
if (!UserModel.get().isMyseft(bean.getUid())) { if (!UserModel.get().isMyseft(bean.getUid())) {
ButtonItem item = new ButtonItem(ResUtil.getString(R.string.dynamic_view_dynamicdetailactivity_018), () -> { ButtonItem item = new ButtonItem(getString(R.string.me_shield_dynamic), () -> {
UserModel.get().addReport(bean.getDynamicId(), 0)
.subscribe(new BeanObserver<String>() {
@Override
public void onErrorMsg(String error) {
getDialogManager().dismissDialog();
toast(error);
}
@Override
public void onSuccess(String s) {
getDialogManager().dismissDialog();
toast(ResUtil.getString(R.string.me_shield_success));
EventBus.getDefault().post(new DynamicRefreshEvent());
finish();
}
});
});
list.add(item);
}
if(!UserModel.get().isMyseft(bean.getUid())) {
ButtonItem blackListItem = ButtonItemFactory.createAddToBlackListItem(
getDialogManager(), String.valueOf(bean.getUid()));
list.add(blackListItem);
}
if (!UserModel.get().isMyseft(bean.getUid())) {
ButtonItem item = new ButtonItem(getString(R.string.me_report_dynamic), () -> {
StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_WORLD_REPORT_MOMENTS, StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_WORLD_REPORT_MOMENTS,
ResUtil.getString(R.string.dynamic_view_dynamicdetailactivity_019)); ResUtil.getString(R.string.dynamic_view_dynamicdetailactivity_019));
UIHelper.showReportPage(context, bean.getUid(), UIHelper.showReportPage(context, bean.getUid(),
@@ -783,7 +814,7 @@ public class DynamicDetailActivity extends BaseActivity implements IEmoticonSele
ButtonItem item = new ButtonItem(ResUtil.getString(R.string.dynamic_view_dynamicdetailactivity_020), () -> deleteDynamic(bean)); ButtonItem item = new ButtonItem(ResUtil.getString(R.string.dynamic_view_dynamicdetailactivity_020), () -> deleteDynamic(bean));
list.add(item); list.add(item);
} }
getDialogManager().showCommonPopupDialog(list, ResUtil.getString(R.string.dynamic_view_dynamicdetailactivity_021)); getDialogManager().showCommonPopupDialog(list, getString(R.string.cancel));
} }
/** /**

View File

@@ -20,6 +20,7 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.trello.rxlifecycle3.android.FragmentEvent; import com.trello.rxlifecycle3.android.FragmentEvent;
import com.yizhuan.erban.R; import com.yizhuan.erban.R;
import com.yizhuan.erban.UIHelper; import com.yizhuan.erban.UIHelper;
import com.yizhuan.erban.avroom.ButtonItemFactory;
import com.yizhuan.erban.avroom.activity.AVRoomActivity; import com.yizhuan.erban.avroom.activity.AVRoomActivity;
import com.yizhuan.erban.base.BaseMvpFragment; import com.yizhuan.erban.base.BaseMvpFragment;
import com.yizhuan.erban.common.EmptyViewHelper; import com.yizhuan.erban.common.EmptyViewHelper;
@@ -40,14 +41,17 @@ import com.yizhuan.xchat_android_core.community.bean.WorldDynamicBean;
import com.yizhuan.xchat_android_core.community.bean.WorldDynamicListResult; import com.yizhuan.xchat_android_core.community.bean.WorldDynamicListResult;
import com.yizhuan.xchat_android_core.community.dynamic.DynamicModel; import com.yizhuan.xchat_android_core.community.dynamic.DynamicModel;
import com.yizhuan.xchat_android_core.community.event.DynamicPublishEvent; import com.yizhuan.xchat_android_core.community.event.DynamicPublishEvent;
import com.yizhuan.xchat_android_core.community.event.DynamicRefreshEvent;
import com.yizhuan.xchat_android_core.community.square.SquareModel; import com.yizhuan.xchat_android_core.community.square.SquareModel;
import com.yizhuan.xchat_android_core.miniworld.bean.MiniWorldInfo; import com.yizhuan.xchat_android_core.miniworld.bean.MiniWorldInfo;
import com.yizhuan.xchat_android_core.statistic.StatisticManager; import com.yizhuan.xchat_android_core.statistic.StatisticManager;
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol; import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
import com.yizhuan.xchat_android_core.user.UserModel; import com.yizhuan.xchat_android_core.user.UserModel;
import com.yizhuan.xchat_android_core.user.event.LoadLoginUserInfoEvent; import com.yizhuan.xchat_android_core.user.event.LoadLoginUserInfoEvent;
import com.yizhuan.xchat_android_core.utils.net.BeanObserver;
import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver; import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver;
import com.yizhuan.xchat_android_library.base.factory.CreatePresenter; import com.yizhuan.xchat_android_library.base.factory.CreatePresenter;
import com.yizhuan.xchat_android_library.utils.ResUtil;
import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.Subscribe;
@@ -151,7 +155,36 @@ public class SquareDynamicFragment extends BaseMvpFragment<IMiniWorldCategoryVie
if (view.getId() == R.id.iv_more) { if (view.getId() == R.id.iv_more) {
List<ButtonItem> list = new ArrayList<>(); List<ButtonItem> list = new ArrayList<>();
if (!UserModel.get().isMyseft(bean.getUid())) { if (!UserModel.get().isMyseft(bean.getUid())) {
ButtonItem item = new ButtonItem(getString(R.string.me_report), () -> { ButtonItem item = new ButtonItem(getString(R.string.me_shield_dynamic), () -> {
UserModel.get().addReport(bean.getDynamicId(), 0)
.subscribe(new BeanObserver<String>() {
@Override
public void onErrorMsg(String error) {
getDialogManager().dismissDialog();
toast(error);
}
@Override
public void onSuccess(String s) {
getDialogManager().dismissDialog();
toast(ResUtil.getString(R.string.me_shield_success));
if (squareType == SquareFragment.TAB_TYPE_RECOMMEND) {
adapter.notifyItemRemoved(pos + 1);
}else {
adapter.notifyItemRemoved(pos);
}
}
});
});
list.add(item);
}
if(!UserModel.get().isMyseft(bean.getUid())) {
ButtonItem blackListItem = ButtonItemFactory.createAddToBlackListItem(
getDialogManager(), String.valueOf(bean.getUid()));
list.add(blackListItem);
}
if (!UserModel.get().isMyseft(bean.getUid())) {
ButtonItem item = new ButtonItem(getString(R.string.me_report_dynamic), () -> {
UIHelper.showReportPage(getActivity(), bean.getUid(), UIHelper.showReportPage(getActivity(), bean.getUid(),
XChatConstants.REPORT_TYPE_DYNAMIC_SQUARE); XChatConstants.REPORT_TYPE_DYNAMIC_SQUARE);
}); });
@@ -310,6 +343,11 @@ public class SquareDynamicFragment extends BaseMvpFragment<IMiniWorldCategoryVie
} }
} }
@Subscribe(threadMode = ThreadMode.MAIN)
public void onDynamicRefreshEvent(DynamicRefreshEvent event) {
loadData(true);
}
@Override @Override
public int getRootLayoutId() { public int getRootLayoutId() {
return 0; return 0;
@@ -362,7 +400,7 @@ public class SquareDynamicFragment extends BaseMvpFragment<IMiniWorldCategoryVie
public Object instantiateItem(@NonNull ViewGroup container, int position) { public Object instantiateItem(@NonNull ViewGroup container, int position) {
RecyclerView recyclerView; RecyclerView recyclerView;
SquareTopicAdapter squareTopicAdapter; SquareTopicAdapter squareTopicAdapter;
if(cacheItemView.get(position) == null){ if (cacheItemView.get(position) == null) {
recyclerView = new RecyclerView(mContext); recyclerView = new RecyclerView(mContext);
ViewGroup.LayoutParams lp = recyclerView.getLayoutParams(); ViewGroup.LayoutParams lp = recyclerView.getLayoutParams();
if (lp == null) { if (lp == null) {
@@ -387,11 +425,11 @@ public class SquareDynamicFragment extends BaseMvpFragment<IMiniWorldCategoryVie
} }
}); });
recyclerView.setAdapter(squareTopicAdapter); recyclerView.setAdapter(squareTopicAdapter);
}else { } else {
recyclerView = cacheItemView.get(position); recyclerView = cacheItemView.get(position);
squareTopicAdapter = (SquareTopicAdapter) recyclerView.getAdapter(); squareTopicAdapter = (SquareTopicAdapter) recyclerView.getAdapter();
} }
if(squareTopicAdapter != null) { if (squareTopicAdapter != null) {
squareTopicAdapter.setNewData(list.get(position)); squareTopicAdapter.setNewData(list.get(position));
container.addView(recyclerView); container.addView(recyclerView);
} }

View File

@@ -1,5 +1,7 @@
package com.yizhuan.xchat_android_core.pay.bean; package com.yizhuan.xchat_android_core.pay.bean;
import com.android.billingclient.api.SkuDetails;
import java.util.ArrayList; import java.util.ArrayList;
import lombok.Data; import lombok.Data;
@@ -15,4 +17,5 @@ public class FirstChargeGoods {
private ArrayList<FirstChargeReward> firstChargeRewardList; private ArrayList<FirstChargeReward> firstChargeRewardList;
private String giveMoney; private String giveMoney;
private boolean finishCharge; private boolean finishCharge;
private SkuDetails skuDetails;
} }

View File

@@ -228,4 +228,7 @@ public interface IUserModel extends IModel {
Single<String> visitUserDetail(long uid); Single<String> visitUserDetail(long uid);
Single<List<VisitorInfo>> getVisitorUserList(int pageNum, int pageSize); Single<List<VisitorInfo>> getVisitorUserList(int pageNum, int pageSize);
Single<String> addReport(Long objId, int type);
} }

View File

@@ -803,7 +803,15 @@ public final class UserModel extends BaseModel implements IUserModel {
.compose(RxHelper.handleSchedulers()); .compose(RxHelper.handleSchedulers());
} }
/**
* 舉報接口
*/
@Override
public Single<String> addReport(Long objId, int type) {
return api.addReport(objId, type)
.compose(RxHelper.handleStringData())
.compose(RxHelper.handleSchedulers());
}
private interface Api { private interface Api {
/** /**
@@ -1043,5 +1051,18 @@ public final class UserModel extends BaseModel implements IUserModel {
@GET("/uservisitrecord/visitUserList") @GET("/uservisitrecord/visitUserList")
Single<ServiceResult<List<VisitorInfo>>> getVisitorUserList(@Query("pageNum") int pageNum, Single<ServiceResult<List<VisitorInfo>>> getVisitorUserList(@Query("pageNum") int pageNum,
@Query("pageSize") int pageSize); @Query("pageSize") int pageSize);
@POST("user/paymentPasswd/modify")
Single<ServiceResult<String>> addReport(@Query("uid") String uid,
@Query("oldPasswd") String oldPasswd,
@Query("newPasswd") String newPasswd,
@Query("ticket") String ticket);
/**
* 舉報
*/
@POST("/user/black/add")
Single<ServiceResult<String>> addReport(@Query("objId") Long objId, @Query("type") int type);
} }
} }

View File

@@ -0,0 +1,7 @@
package com.yizhuan.xchat_android_core.community.event;
/**
* create by lvzebiao @2019/12/1
*/
public class DynamicRefreshEvent {
}

View File

@@ -1,5 +1,6 @@
package com.yizhuan.xchat_android_core.community.square; package com.yizhuan.xchat_android_core.community.square;
import com.yizhuan.xchat_android_core.bean.response.ServiceResult;
import com.yizhuan.xchat_android_core.community.bean.WorldDynamicBean; import com.yizhuan.xchat_android_core.community.bean.WorldDynamicBean;
import com.yizhuan.xchat_android_core.community.bean.WorldDynamicListResult; import com.yizhuan.xchat_android_core.community.bean.WorldDynamicListResult;

View File

@@ -13,6 +13,7 @@ import java.util.List;
import io.reactivex.Single; import io.reactivex.Single;
import retrofit2.http.GET; import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query; import retrofit2.http.Query;
/** /**
@@ -58,7 +59,6 @@ public class SquareModel extends BaseModel implements ISquareModel {
.compose(RxHelper.handleCommon()); .compose(RxHelper.handleCommon());
} }
private interface Api { private interface Api {
/** /**
@@ -100,7 +100,6 @@ public class SquareModel extends BaseModel implements ISquareModel {
@Query("types") String types @Query("types") String types
); );
} }
} }

View File

@@ -24,5 +24,5 @@ only_arm64=false
channel_file=channel.txt channel_file=channel.txt
version_name=1.0.5 version_name=1.0.6
version_code=105 version_code=106