同步优化代码

This commit is contained in:
Martin 2024-08-14 09:35:01 +08:00
parent d61d142ec1
commit 3143ec2be4
155 changed files with 113 additions and 210 deletions

View File

@ -4,6 +4,7 @@
<string name="com.twitter.sdk.android.CONSUMER_SECRET">aq0eV4R1pqMK_AAeKRWnjPr7ErGMGgTPGgZJdm73WeRY-Kluws</string>
<string name="dialog_share_title">分享</string>
<string name="dialog_share_app_internal">站內好友</string>
<string name="dialog_share_info">快來 PDLIVE觀看%s直播認識更多有趣的朋友吧</string>
<string name="dialog_share_app_facebook">Facebook</string>
<string name="dialog_share_app_line">Line</string>

View File

@ -1,24 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="dialog_share_title">Share</string>
<string name="dialog_share_info">Come and watch %s live on PDLIVE and meet more interesting people!</string>
<string name="dialog_invite_title">Invite Friends</string>
<string name="dialog_invite_info">Come to PDLIVE to discover more and better live streams.</string>
<string name="dialog_share_copy">Copy</string>
<string name="dialog_share_app_internal">Site friends</string>
<string name="dialog_share_internal_title">Share To</string>
<string name="dialog_share_internal_cancel">cancel</string>
<string name="dialog_share_internal_search">Search nickname</string>
<string name="dialog_share_internal_list_btn">Send</string>
<string name="dialog_share_success">Share success</string>
<string name="dialog_share_success_btn">Go chat</string>
<string name="dialog_share_failure_not_select">Please select friends</string>
<string name="dialog_share_title">分享</string>
<string name="dialog_share_info">快來 PDLIVE觀看%s直播認識更多有趣的朋友吧</string>
<string name="dialog_share_app_facebook" translatable="false">Facebook</string>
<string name="dialog_share_app_line" translatable="false">Line</string>
<string name="dialog_share_app_twitter" translatable="false">Twitter</string>
<string name="dialog_share_app_whatsapp" translatable="false">WhatsApp</string>
<string name="dialog_share_app_messenger" translatable="false">Messenger</string>
<string name="dialog_share_app_instagram" translatable="false">Instagram</string>
<string name="dialog_share_app_internal">站內好友</string>
<string name="dialog_invite_title">邀請好友</string>
<string name="dialog_invite_info">快來 PDLIVE觀看直播認識更多有趣的朋友吧</string>
<string name="dialog_share_copy">複製</string>
<string name="dialog_share_internal_title">分享至</string>
<string name="dialog_share_internal_search">搜索昵稱</string>
<string name="dialog_share_internal_list_btn">發送</string>
<string name="dialog_share_success">分享成功</string>
<string name="dialog_share_success_btn">去聊聊</string>
<string name="dialog_share_failure_not_select">请选择好友</string>
<string name="dialog_share_app_facebook" >Facebook</string>
<string name="dialog_share_app_line" >Line</string>
<string name="dialog_share_app_twitter">Twitter</string>
<string name="dialog_share_app_whatsapp" >WhatsApp</string>
<string name="dialog_share_app_messenger">Messenger</string>
<string name="dialog_share_app_instagram" >Instagram</string>
</resources>

View File

@ -19,6 +19,7 @@ import com.yunbao.common.interfaces.OnRecyclerListRefreshListener;
import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.message.content.MessageChatCardContent;
import com.yunbao.common.utils.AppManager;
import com.yunbao.common.utils.ChatMsgTypeUtils;
import com.yunbao.common.utils.DateFormatUtil;
import com.yunbao.common.utils.StringUtil;
import com.yunbao.common.utils.ViewUtils;
@ -39,8 +40,11 @@ import io.rong.imkit.widget.adapter.ViewHolder;
import io.rong.imlib.RongIMClient;
import io.rong.imlib.model.Conversation;
import io.rong.imlib.model.Message;
import io.rong.message.HQVoiceMessage;
import io.rong.message.ImageMessage;
import io.rong.message.SightMessage;
import io.rong.message.TextMessage;
import io.rong.message.VoiceMessage;
public class MainConversationListAdapter extends ConversationListAdapter {
public static final int TYPE_SEARCH_TITLE = 500;
@ -134,6 +138,7 @@ public class MainConversationListAdapter extends ConversationListAdapter {
Log.i("列表", "bindDefault: 用户名字:" + conversation.mCore.getConversationTitle());
ImgLoader.display(holder.getContext(), conversation.mCore.getPortraitUrl(), holder.getView(R.id.rc_conversation_portrait));
holder.setText(R.id.rc_conversation_title, conversation.mCore.getConversationTitle());
((TextView) holder.getView(R.id.rc_conversation_content)).setText(ChatMsgTypeUtils.getMsg(conversation.mConversationContent.toString()));
if (conversation.mCore.getSentTime() != -1 && holder.getView(R.id.rc_conversation_date) != null) {
holder.setText(R.id.rc_conversation_date, DateFormatUtil.getDateTimeString(conversation.mCore.getSentTime(), true, holder.getContext()));
holder.getView(R.id.rc_conversation_date).setVisibility(View.VISIBLE);
@ -337,10 +342,15 @@ public class MainConversationListAdapter extends ConversationListAdapter {
conversation.mCore.setUnreadMessageCount(integer);
if(bean.getContent() instanceof SightMessage){
conversation.mConversationContent = new SpannableString(WordUtil.isNewZh()?"[小視頻]":"[Video]");
}else if(bean.getContent() instanceof HQVoiceMessage){
conversation.mConversationContent = new SpannableString(WordUtil.isNewZh()?"[語音]":"[Voice]");
} else if(bean.getContent() instanceof ImageMessage){
conversation.mConversationContent = new SpannableString(WordUtil.isNewZh()?"[圖片]":"[picture]");
}else if(bean.getContent() instanceof MessageChatCardContent){
conversation.mConversationContent = new SpannableString(WordUtil.isNewZh()?"[站內分享]":"[In-app sharing]");
} else{
conversation.mConversationContent = new SpannableString(((TextMessage) bean.getContent()).getContent());
}
mDataList.set(id, conversation);
notifyItemChanged(id);
}

View File

@ -87,7 +87,7 @@ public class LiveTaskModel extends BaseModel {
public String getEndTime() {
if (!StringUtil.isEmpty(endTime)) {
endTime =WordUtil.getString(R.string.live_task_new_user_timer) + new SimpleDateFormat("yyyy/MM/dd HH:mm", Locale.getDefault()).format(new Date(Long.parseLong(endTime) * 1000));
endTime = new SimpleDateFormat("yyyy/MM/dd HH:mm", Locale.getDefault()).format(new Date(Long.parseLong(endTime) * 1000));
}
return endTime;
}

View File

@ -277,7 +277,7 @@ public class GiftWallGiftInfoDialog extends AbsDialogPopupWindow {
void initData() {
adapter.setList_type(list_type);
if (isAnchor) {
if (isAnchor || (isTab2Enter && isStar)) {
if (isStar) {
gift_hall_type = 2;
} else {

View File

@ -14,6 +14,7 @@ import com.yunbao.common.R;
import com.yunbao.common.bean.MessageUserInfoBean;
import com.yunbao.common.custom.RatioRoundImageView;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.utils.ChatMsgTypeUtils;
import com.yunbao.common.utils.DpUtil;
import com.yunbao.common.utils.StringUtil;
@ -93,7 +94,7 @@ public class MessageChatNotifyDialog extends AbsDialogPositionPopupWindow {
if (StringUtil.isEmpty(liveBean.getExtras())) {
((TextView) findViewById(R.id.description)).setText(liveBean.getUser().getSignature());
} else {
((TextView) findViewById(R.id.description)).setText(liveBean.getExtras());
((TextView) findViewById(R.id.description)).setText(ChatMsgTypeUtils.getMsg(liveBean.getExtras()));
}
new Handler(Looper.getMainLooper()).postDelayed(() -> {
dismiss();

View File

@ -2,6 +2,7 @@ package com.yunbao.common.fragment;
import android.net.Uri;
import android.os.Bundle;
import android.text.SpannableString;
import android.util.Log;
import android.view.View;
@ -23,6 +24,7 @@ import com.yunbao.common.interfaces.OnRecyclerListRefreshListener;
import com.yunbao.common.adapter.MainConversationListAdapter;
import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.manager.InstructorRemarkManager;
import com.yunbao.common.utils.ChatMsgTypeUtils;
import com.yunbao.common.utils.StringUtil;
import org.greenrobot.eventbus.EventBus;
@ -158,7 +160,7 @@ public abstract class AbsMainMessageChatListFragment extends Fragment {
break;
}
}
srcList.get(i).mConversationContent =new SpannableString(ChatMsgTypeUtils.getMsg(srcList.get(i).mConversationContent.toString()));
}
onRefreshListener.onFinish(srcList);
isNet = false;

View File

@ -3,6 +3,7 @@ package com.yunbao.common.fragment;
import android.content.Context;
import android.net.Uri;
import android.os.Bundle;
import android.text.SpannableString;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
@ -23,6 +24,7 @@ import com.yunbao.common.interfaces.OnRecyclerListRefreshListener;
import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.manager.InstructorRemarkManager;
import com.yunbao.common.utils.Bus;
import com.yunbao.common.utils.ChatMsgTypeUtils;
import com.yunbao.common.utils.L;
import com.yunbao.common.utils.StringUtil;
@ -39,6 +41,7 @@ import io.rong.imkit.widget.refresh.listener.OnRefreshListener;
import io.rong.imlib.model.Conversation;
import io.rong.imlib.model.Message;
import io.rong.imlib.model.UserInfo;
import io.rong.message.VoiceMessage;
public class MainMessageChatListFragment extends AbsMainMessageChatListFragment {
private static final String TAG = "MainMessageChatListFragment";
@ -72,6 +75,9 @@ public class MainMessageChatListFragment extends AbsMainMessageChatListFragment
@Override
public void onFinish(List<BaseUiConversation> baseUiConversations) {
InstructorRemarkManager.get(mContext).getNetInstructorRemark();
for (int i = 0; i <baseUiConversations.size(); i++) {
baseUiConversations.get(i).mCore.getMessage();
}
loadLiveLookTime(baseUiConversations, new OnRecyclerListRefreshListener<Map<String, Integer>>() {
@Override
public void onFinish(Map<String, Integer> stringIntegerMap) {

View File

@ -0,0 +1,22 @@
package com.yunbao.common.utils;
/**
* 消息类型翻译管理器
*/
public class ChatMsgTypeUtils {
public static String getMsg(String msg) {
String rsult = msg;
switch (msg) {
case "[小视频]":
rsult = WordUtil.isNewZh() ? "[小視頻]" : "[Video]";
break;
case "[语音]":
rsult = WordUtil.isNewZh() ? "[語音]" : "[Voice]";
break;
case "[图片]":
rsult = WordUtil.isNewZh() ? "[圖片]" : "[Image]";
break;
}
return rsult;
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 KiB

After

Width:  |  Height:  |  Size: 320 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 104 KiB

View File

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

View File

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@ -812,6 +812,7 @@ Limited ride And limited avatar frame</string>
<string name="random_pk_dialog_apply">accept</string>
<string name="random_pk_dialog_refuse">refuse</string>
<string name="random_pk_dialog_refuse_again">Persist in refusing</string>
<string name="random_pk_dialog_title">Random PK hint</string>
<string name="speech_robot_setup">Automatic speech robot setup</string>

View File

@ -1899,6 +1899,7 @@ public class LiveSwAnchorActivity extends LiveActivity implements LiveFunctionCl
.setIcon("https://downs.yaoulive.com/xzs_tab.png")
.setNameColor("#f19ec2")
.setSystemBubble("https://downs.yaoulive.com/xzs_qipao.9.png")
.setIconEn("https://downs.yaoulive.com/Robot_en.png")
.setUserName("")
.setContent(content);
SocketSendBean msg =

View File

@ -836,7 +836,11 @@ public class LiveGiftPopup extends AbsDialogFragment {
@Override
public void onSuccess(GiftNamingInfoModel data) {
if (TextUtils.equals(data.getNamingStatus(), "1")) {
boolean isPageGift = liveGiftModel.isPageGift();
liveGiftModel = JSONObject.parseObject(GsonUtils.toJson(data), LiveGiftBean.class);
liveGiftModel.setPageGift(isPageGift);
liveGiftModel.setGift_id(giftId);
liveGiftModel.setId(giftId);
if (!TextUtils.isEmpty(liveGiftModel.getNamingLiveuid()) &&
!TextUtils.isEmpty(liveGiftModel.getNamingUid()) &&
!TextUtils.equals(liveGiftModel.getNamingLiveuid(), "0") &&

View File

@ -147,7 +147,7 @@ public class LiveTaskDialog extends AbsDialogPopupWindow {
if (task.isNew()) {
newStarImg.setVisibility(VISIBLE);
newStarTime.setVisibility(VISIBLE);
newStarTime.setText(task.getEndTime());
newStarTime.setText(WordUtil.isNewZh()?"新秀主播時效截止至 ":"The statute of limitations for new anchors expires " +task.getEndTime());
}
}

View File

@ -36,9 +36,9 @@
android:textSize="16sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.1"
android:layout_weight="1"
android:gravity="end|center"
android:orientation="horizontal">
@ -46,12 +46,15 @@
android:id="@+id/live_data_img"
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_marginEnd="10dp"
android:layout_marginEnd="5dp"
tools:srcCompat="@mipmap/icon_free_pk_waring" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:ellipsize="end"
android:textSize="14dp"
android:text="@string/live_data_msg2"
android:textColor="#595959" />
</LinearLayout>

View File

@ -4,7 +4,6 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="600dp"
android:background="#000002">
<androidx.constraintlayout.widget.ConstraintLayout
@ -24,11 +23,11 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginEnd="14dp"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:visibility="invisible"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 346 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

Before

Width:  |  Height:  |  Size: 990 KiB

After

Width:  |  Height:  |  Size: 990 KiB

View File

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

Before

Width:  |  Height:  |  Size: 144 KiB

After

Width:  |  Height:  |  Size: 144 KiB

View File

Before

Width:  |  Height:  |  Size: 180 KiB

After

Width:  |  Height:  |  Size: 180 KiB

View File

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

View File

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 61 KiB

View File

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@ -1,161 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="no_more_day_rank">No one is on the list at the moment</string>
<string name="no_more_guard">anchor are waiting at your guard!</string>
<string name="no_rank_data">Not on the list</string>
<string name="hour_rank">No.%s</string>
<string name="hour_rank_not">Not listed</string>
<string name="day_rank">Day</string>
<string name="week_rank">Weekly</string>
<string name="views_rank">Viewers</string>
<string name="gurad_rank">Guard</string>
<string name="fans">Fans</string>
<string name="room_msg">News</string>
<string name="live_room_title">Select room type</string>
<string name="live_room_public">Public Rooms</string>
<string name="live_room_private">Password Rooms</string>
<string name="live_room_public_des">Available for all</string>
<string name="live_room_private_des">Only those who have the room code can watch</string>
<string name="live_room_type_submit">Submit</string>
<string name="live_mic_max">The number of voices has reached 3, and no more can be added.</string>
<string name="live_task_no1">Consecutive broadcast duration of the day (minutes)</string>
<string name="live_task_no2">PK count on the day (unlimited mode)</string>
<string name="live_task_fans_no1">Accumulated new followers on that day</string>
<string name="live_task_fans_no2">Cumulative new fan group members on that day</string>
<string name="live_task_tab1">Live interaction</string>
<string name="live_task_tab2">Fan growth</string>
<string name="live_task_info_title">Special instructions for anchor tasks</string>
<string name="live_task_info_msg1">After the broadcast, all anchors can get a series of tasks of the day. After completing the tasks according to the corresponding requirements, anchors can get the task reward of the previous day after the broadcast of the next day.</string>
<string name="live_task_info_msg2">● All task values will be calculated by the system in real time. If data errors occur due to personal, mobile, computer equipment problems, network problems or no normal downcasting, relevant anchors can contact relevant platform staff or online customer service for feedback. After confirmation by relevant part, compensation will be processed.\n● The normal settlement period of all mission data will be settled at 6:00 am every day. If the broadcast time is longer than 6:00 AM, the reward cannot be settled normally, please be noted.\n● When the anchor standard score is lower than 90, the anchor task center can only get 50% of all rewards. When the anchor standard score is lower than 80, the anchor task reward cannot be obtained.</string>
<string name="live_task_item_complete_true">success</string>
<string name="live_task_item_complete_false">incomplete</string>
<string name="live_task_item_hot">hot</string>
<string name="live_task_item_xp">exp</string>
<string name="live_data_msg1">This live data statistics</string>
<string name="live_data_msg2">Historical data can be viewed in the anchor center</string>
<string name="live_data_tip">* Non-real-time calculation of data</string>
<string name="buy_guard_info" >Guardian, always be there for your anchor~ </string>
<string name="buy_guard_back_coin" >return</string>
<string name="praise">Like</string>
<string name="live_gift_buy_gold" >Open aristocracy</string>
<string name="live_gift_buy_gold_desc" >Enjoy exclusive privileges!</string>
<string name="live_gift_buy_gold_desc_to" >Head to the noble Center</string>
<string name="fingers_slide" >Swipe up to cancel send</string>
<string name="release_cancel_send" >Release cancel send</string>
<string name="more_than" >No recording has been recognized in over 10 seconds</string>
<string name="live_role_title" >Identity privilege</string>
<string name="noble_seat" >VIP seats</string>
<string name="live_mic_user_apply" >%s Applies for connected wheat. Check whether</string>
<string name="live_mic_user_down" >The wheat has been kicked off</string>
<string name="live_mic_invite" >An invitation has been sent and is waiting for the user to accept</string>
<string name="live_mic_request" >The request has been agreed and is awaiting acceptance by the user</string>
<string name="random_pk_info_view_title" >Random PK</string>
<string name="random_pk_info_title" >PK main rules:</string>
<string name="random_pk_info_time_desc" >Random PK qualifying time</string>
<string name="random_pk_info_time" >12:00~17:00、19:00~23:59</string>
<string name="random_pk_info_desc_1" >1. After matching, the system will automatically select opponents for PK;</string>
<string name="random_pk_info_desc_2" >2. If you cannot match your opponent for a long time, you can try to match again</string>
<string name="random_pk_info_desc_3" >3. During the PK process, if there is any delay or delay, please check your personal device and network first, and then try to log in again and start broadcasting.</string>
<string name="random_pk_info_desc_4" >4, the security department will be 24 hours of inspection, please civilized PK, strictly abide by the anchor rules;</string>
<string name="random_pk_info_switch" >Random PK switch:</string>
<string name="random_pk_info_btn_start" >Start matching</string>
<string name="random_pk_info_btn_ing" >Match %s</string>
<string name="random_pk_info_btn_ing_desc" >Click again to cancel the match</string>
<string name="random_pk_info_btn_end" >Exiting match %s</string>
<string name="random_pk_info_btn_end_desc" >It\'s also possible to match an opponent during the exit process</string>
<string name="random_pk_search_hint" >Please enter the anchor nickname or id you want to pk</string>
<string name="free_pk_user_pking" >The other team is engaged in a PK</string>
<string name="free_pk_num_null" >The PK number is used up</string>
<string name="live_user_mailbox_top_text">Letter from %s</string>
<string name="live_user_mailbox_tip_text">「%s」have more to say to you</string>
<string name="live_user_mailbox_more_text">View details</string>
<string name="live_user_mailbox_web_title">Letter from[%s]</string>
<string name="live_anchor_edit_call_me_title">Editors Contact</string>
<string name="live_anchor_edit_call_me_switch">Contact switch</string>
<string name="live_anchor_edit_call_me_select_gift">Choose a gift</string>
<string name="live_anchor_edit_call_me_not_filled">Not filled</string>
<string name="live_anchor_edit_call_me_not_filled_toash">Please fill in your contact details before enabling</string>
<string name="live_anchor_edit_call_me_not_gift_toash">No gift selected</string>
<string name="live_anchor_edit_call_me_letter_title">Letter Content</string>
<string name="live_anchor_edit_call_me_letter_content">The most romantic thing I can think of is to grow old with you, to collect all the laughs along the way, and to talk about them later in a rocking chair.</string>
<string name="live_ready_anchor_call_me">Contact</string>
<string name="live_anchor_say_title">Editors Goddess says</string>
<string name="live_anchor_say_edit_hint">Please enter the words the goddess wants to say, limited to 16 words.</string>
<string name="live_anchor_say_select_style">Select Style</string>
<string name="live_anchor_say_switch">The Goddess Says Switch</string>
<string name="live_user_letter_dialog_title">Delete Mail</string>
<string name="live_user_letter_dialog_content">Do you confirm the deletion of this email?</string>
<string name="live_user_letter_dialog_yes">Delete</string>
<string name="live_user_letter_dialog_no">Think again</string>
<string name="dialog_live_mailbox_title">Letter</string>
<string name="live_anchor_edit_call_me_not_call_info_toash">Please turn on at least one contact information</string>
<string name="minute">Minute</string>
<string name="live_setting_silence_title">Please select</string>
<string name="live_ban_tip">You have been banned</string>
<string name="live_details_send_gift_btn">Confirm</string>
<string name="live_details_sned_gift_text1">Give</string>
<string name="live_details_sned_gift_text2">obtain the</string>
<string name="live_details_sned_gift_text3">\'s letter and contact information</string>
<string name="me_edit_avatar_title">Select Avatar</string>
<string name="me_edit_avatar_submit">Confirm</string>
<string name="live_fans_group_info_text1">1 The fan exclusive gift pack is an exclusive benefit for fan group users, which can quickly increase their companionship with the host after purchase</string>
<string name="live_fans_group_info_text2">2 After the gift pack is successfully purchased, the gift will be sent to [Fan Exclusive Gift Pack - Gift Pack], you can view and use it in [Gift Pack]; the avatar frame will be sent to [My - Personalized Dressing], you can use it in [Personalized Dressing] View and use in</string>
<string name="live_fans_group_info_text3">3 The exclusive gift package is bound to the anchor in a one-on-one relationship, and purchasing gift resources in the exclusive gift package can only be given to the anchor</string>
<string name="live_fans_group_info_text4">4 The gift resources in the gift package are valid for 30 days and can be given normally during the validity period; Gift resources become invalid and cannot be given after expiration</string>
<string name="live_fans_group_info2_text1">1 Purchase can only be made once a month, and the gift package will be distributed in real-time after purchase</string>
<string name="live_fans_group_info2_text2">2. The final interpretation rights of this gift package belong to PD Live</string>
<string name="live_fans_group_info_title">Introduction</string>
<string name="live_fans_group_info2_title">Rules</string>
<string name="live_fans_follow_toast">Join the fan group and unlock exclusive gifts</string>
<string name="live_fans_group_send_sub">Gift</string>
<string name="live_fans_group_send_title">Currently Available To Send</string>
<string name="live_fans_group_buy_title">The %s</string>
<string name="live_fans_group_buy_info">Purchase a %s Diamond Specific Gift And Receive ALimited Resource</string>
<string name="live_fans_group_buy_buy">%s Diamond</string>
<string name="live_fans_group_enter_room">Welcome,Fan Club Members</string>
<string name="live_fans_group_send_gift_tips">Fan group level Of Lv%s Can send this gift</string>
<string name="live_rad_pack_join_fans_group_tip">Join the fan group can be opened [Join]</string>
<string name="live_rad_pack_join_fans_group_click_tip">Join the fan group to open</string>
<string name="message_chat_msg_all">Chat All</string>
<string name="message_chat_msg_all_an_a">Chat All</string>
<string name="message_chat_msg_recommend">Suggest chat</string>
<string name="message_chat_msg_system">System matching</string>
<string name="message_chat_msg_user">User initiated</string>
<string name="message_chat_msg_look_live">看直播%dmin</string>
<string name="message_chat_msg_read_tip">[Read]</string>
<string name="message_chat_msg_unread_tip">[Unread]</string>
<string name="message_interactive_chat">Initiate a chat</string>
<string name="prank_progress">Progress</string>
<string name="turntable_prank">To do</string>
<string name="details">Details></string>
<string name="combo_vote">Combo</string>
<string name="combo_vote_more">Most first</string>
<string name="live_prank_dialog_save">Save</string>
<string name="live_prank_dialog_clear">Clear</string>
<string name="live_prank_dialog_gift_type_number">highest combo</string>
<string name="live_prank_gift_add_title">Add gift</string>
<string name="live_prank_gift_add_gift">Gift</string>
<string name="live_prank_gift_add_gift_select">Choose a gift</string>
<string name="live_prank_gift_add_gift_number">Quantity</string>
<string name="live_prank_gift_add_gift_number_select">Fill in the number</string>
<string name="live_prank_gift_add_gift_content">Content</string>
<string name="live_prank_gift_add_gift_contnet_select">Please enter prank content, such as a dance.</string>
<string name="alive_prank_gift_add_gift_content_sub">confirm</string>
<string name="alive_prank_gift_dialog_number_title">Quantity</string>
<string name="live_prank_gift_dialog_number_btn">+ Set other quantity (up to 9999)</string>
<string name="alive_prank_gift_dialog_explain">Trick instructions</string>
<string name="prank_open_live_msg">Entertainment Tricky has been newly upgraded. Go and set up Tricky content to add more fun to the live broadcast room!</string>
<string name="prank_im_immediately_go">Go now</string>
<string name="live_prank_dialog_gift_type_todo">Switch to</string>
<string name="live_prank_switch">gift trick switch</string>
<string name="live_prank_switch_info">After closing, the user cannot see the gift trick</string>
<string name="live_prank_add_gift">+ Add gift trick</string>
<string name="live_prank_gift_tips">You can add up to 6, and it is recommended to add 4.</string>
<string name="live_prank_dialog_gift_type_achieved">Quantity achieved</string>
<string name="live_room_sud_hint_join">Join</string>
<string name="live_dialog_top_guardian_tasks">Guard tasks</string>
</resources>

Some files were not shown because too many files have changed in this diff Show More