+
+
+ 本地HTML页面
+
+
+ 獎勵說明
+ 在您使用平台服務取得和提取收益(包括:互動收益、通話收益)前,您應閱讀並遵守本說明及將來公示的新增的單項說明或規則、操作時的提示以及規則。 我們在此特別提醒您認真閱讀並充分理解本說明,特別是免除或限制我們責任、限制您的權利、規定爭議解決方式的相關條款。 除非您接受本說明,否則您無權使用相關功能。 您一經使用獎勵獲取、收益兌換和提現等相關功能,即視為您已理解並接受本說明。 我們保留根據相關法律規定、主管機關要求、業務開展情況等,對獎勵的領取、兌換、提現規則進行變更、調整、中止或終止的權利,同時也會將變更、調整予以公示並自公示之日起生效。
+ 1、如何獲得獎勵?
+
+ A.付費消息:
+ 用戶在以下情況將有機會獲得付費方付費訊息星幣價值的固定比例作為獎勵:
+ (1)系統匹配的會話,不同等級時,低等級用戶為付費方;同等級時,男用戶為付費方(目前等級由低到高分別為:未認證用戶,真人認證用戶,達人認證用戶 )。 系統匹配的會話包括:系統匹配的搭訕/訊息(如紅娘牽線)等;
+ (2)除系統匹配的會話及平台另有規定外,首發訊息的一方為雙方會話關係中的付費方。 首發訊息包含:一鍵搭訕/搭訕/私訊,以及視訊和語音通話;
+ (3)若一方在會話關係中已經被認定為付費方,則系統配對到同一會話關係時,該方仍為付費方; 當用戶收到其他用戶的付費訊息時,達人認證用戶會獲得該部分付費訊息星幣價值的33%作為獎勵(具體獎勵以平台顯示為準);真人認證用戶可以獲得的獎勵為22%; 未認證用戶僅可獲得11%。 我們鼓勵您進行真人認證交友。
+ B.禮物:
+
+ 1、當用戶收到收益禮物時,達人認證用戶將會獲得該禮物星幣價值的34%作為獎勵;真人認證用戶可以獲得的獎勵為22%;未認證用戶僅可獲得11%。 用戶背包中尚未送出的禮物不能用於提取收益。
+ 2、獎勵如何領取? 領取獎勵前,需先進行真人認證,通過認證後,綁定收款方式方可提領。
+ 3.最小提現金額? 10美元起提。
+ 4.什麼情況下會領取失敗? 用戶的帳號存在異常; 收款方式異常; 平台技術故障; 用戶被其他用戶舉報、受到平台調查或監管部門有特定要求等存在未解決爭議事項;
+ 5.領取失敗後,該筆獎勵會到哪裡? 領取失敗會導致該筆獎勵退回,如有疑問,請聯絡客服。
+ 6、其他費用 用戶對其收益應依法納稅,其平台收益相關的報稅、稅費及相關責任義務等由用戶與其合作方(公會、靈活用工平台等)約定,與平台方無關。
+ 7、其他聲明 用戶瞭解並同意,獎勵規則具體以平台顯示為準。若因平台系統突發故障、第三方軟體服務商故障、駭客攻擊等導致平台顯示及功能故障,平台將在發現後儘快修復,平台無須因此承擔賠償責任。
+ 8.無效獎勵 若經平台核查認定您全部或部分獎勵無效時,平台為履行法定義務、配合相關執法部門或履行社會責任等原因,有權自行決策將與上述無效獎勵對應的用戶側消費款項予以退還;您同意支援平台的相應決策,並配合平台要求退還您的相關獎勵或等價金額。 此時,平台有權從您帳號的收益餘額中自行扣除相應金額,若不足以扣除時,您應在平台作出通知後指定週期內按照本公司告知的方式補足。
+ 無效獎勵包括但不限於您基於以下情形而獲得的對應獎勵:
+ (1)無民事行為能力人或限制民事行為能力人的使用者打賞或進行其他消費而產生的您的獎勵收益;
+ (2)因您透過違法、違規、違反平台規則或違反公序良俗、誠實信用原則的行為而獲取的獎勵收益;
+ (3)因司法/行政機關要求退還/劃撥的收益(及司法/行政機關要求退還/劃撥用戶消費金額時該等消費金額中對應的您的獎勵收益);
+ (4)使用者使用非法收入、作弊收入或非平台指定方式儲值或消費而產生的您的獎勵收益;
+ (5)用戶依法依規撤銷其消費行為(包括但不限於支付通路退款等)時其相應消費所對應的您的獎勵收益;
+ (6)本公司有權基於平台風控判斷、用戶投訴、行政或司法機關的要求等情形確認您的部分或全部獎勵收益無效。 在您使用平台服務取得和提取收益(包括:互動收益、通話收益)前,您應閱讀並遵守本說明及將來公示的新增的單項說明或規則、操作時的提示以及規則。 我們在此特別提醒您認真閱讀並充分理解本說明,特別是免除或限制我們責任、限制您的權利、規定爭議解決方式的相關條款。 除非您接受本說明,否則您無權使用相關功能。 您一經使用獎勵獲取、收益兌換和提現等相關功能,即視為您已理解並接受本說明。 我們保留根據相關法律規定、主管機關要求、業務開展情況等,對獎勵的領取、兌換、提現規則進行變更、調整、中止或終止的權利,同時也會將變更、調整予以公示並自公示之日起生效。
+
+
+
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/AppContext.java b/OneToOne/src/main/java/com/shayu/onetoone/AppContext.java
index dc2ac6c0b..ef081e2e4 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/AppContext.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/AppContext.java
@@ -1,11 +1,16 @@
package com.shayu.onetoone;
+import android.app.Activity;
+import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Process;
import android.util.Log;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
import com.alibaba.android.arouter.launcher.ARouter;
import com.facebook.FacebookSdk;
import com.shayu.onetoone.activity.fragments.message.ChatMessageFragment;
@@ -24,6 +29,7 @@ import com.shayu.onetoone.utils.ChatPluginExtensionConfig;
import com.shayu.onetoone.utils.NeverCrashUtils;
import com.yunbao.common.BuildConfig;
import com.yunbao.common.CommonAppContext;
+import com.yunbao.common.bean.CrashSaveBean;
import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.manager.imrongcloud.InstructorSendReward;
import com.yunbao.common.manager.imrongcloud.InstructorSendRewardProvider;
@@ -34,7 +40,9 @@ import com.yunbao.common.utils.L;
import com.yunbao.common.utils.SpUtil;
import com.yunbao.common.utils.ToastUtil;
+import java.lang.ref.WeakReference;
import java.util.ArrayList;
+import java.util.List;
import io.rong.callkit.CallEndMessageItemProvider;
import io.rong.imkit.RongIM;
@@ -53,11 +61,29 @@ import io.rong.message.CommandMessage;
import io.rong.message.TextMessage;
public class AppContext extends CommonAppContext {
+ private final static List> activities = new ArrayList<>();
+
+ public static void exit() {
+ for (WeakReference activity : activities) {
+ try {
+ if (activity.get() != null) {
+ activity.get().finish();
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ }
+ System.exit(0);
+ }
+
@Override
public void onCreate() {
super.onCreate();
L.setDeBug(true);
SpUtil.getInstance();
+ registerActivityLifecycleCallbacks(new AdjustLifecycleCallbacks());
+
NeverCrashUtils.getInstance()
.setDebugMode(BuildConfig.DEBUG)
.setMainCrashHandler((t, e) -> {
@@ -109,7 +135,6 @@ public class AppContext extends CommonAppContext {
});
-
RongcloudIMManager.addRongcloudIMOnReceiveMessageListener(new RongIMClient.OnReceiveMessageWrapperListener() {
@Override
public boolean onReceived(Message message, int left, boolean hasPackage, boolean offline) {
@@ -126,9 +151,52 @@ public class AppContext extends CommonAppContext {
IMLoginManager.get(this).setLanguage(false);
- RongConfigCenter.conversationConfig().replaceMessageProvider(CallEndMessageItemProvider.class,new OTOCallEndMessageItemProvider());
+ RongConfigCenter.conversationConfig().replaceMessageProvider(CallEndMessageItemProvider.class, new OTOCallEndMessageItemProvider());
RongExtensionManager.getInstance().setExtensionConfig(new ChatPluginExtensionConfig());
}
+ private static final class AdjustLifecycleCallbacks implements ActivityLifecycleCallbacks {
+ @Override
+ public void onActivityResumed(Activity activity) {
+ }
+
+ @Override
+ public void onActivityPaused(Activity activity) {
+ }
+
+ @Override
+ public void onActivityStopped(@NonNull Activity activity) {
+
+ }
+
+ @Override
+ public void onActivitySaveInstanceState(@NonNull Activity activity, @NonNull Bundle outState) {
+
+ }
+
+ @Override
+ public void onActivityDestroyed(@NonNull Activity activity) {
+ for (WeakReference reference : activities) {
+ if (reference.get() == activity) {
+ activities.remove(reference);
+ return;
+ }
+ }
+ AppManager.getInstance().removeActivity(activity);
+ }
+
+ @Override
+ public void onActivityCreated(@NonNull Activity activity, @Nullable Bundle savedInstanceState) {
+ activities.add(new WeakReference<>(activity));
+ CrashSaveBean.getInstance().setActivitySize(activities);
+ AppManager.getInstance().addActivity(activity);
+ }
+
+ @Override
+ public void onActivityStarted(@NonNull Activity activity) {
+
+ }
+
+ }
}
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/DiamondExchangeActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/DiamondExchangeActivity.java
index 7aaf89663..73094317d 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/DiamondExchangeActivity.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/DiamondExchangeActivity.java
@@ -173,8 +173,8 @@ public class DiamondExchangeActivity extends AbsOTOActivity {
private void initData() {
- if (getIntent() != null && getIntent().getBundleExtra("bundle") != null) {
- type = getIntent().getBundleExtra("bundle").getString("type");
+ if (getIntent() != null && getIntent().getExtras() != null) {
+ type = getIntent().getExtras().getString("type");
if (TextUtils.equals(type, "yuanbao")) {
title.setText(getString(R.string.my_arnings_exchange_star));
} else {
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/MainActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/MainActivity.java
index 54f40f7e6..e209430fa 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/MainActivity.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/MainActivity.java
@@ -13,6 +13,7 @@ import com.alibaba.fastjson.JSONObject;
import com.angcyo.tablayout.DslTabLayout;
import com.angcyo.tablayout.DslTabLayoutConfig;
import com.angcyo.tablayout.delegate2.ViewPager2Delegate;
+import com.shayu.onetoone.AppContext;
import com.lxj.xpopup.XPopup;
import com.shayu.onetoone.R;
import com.shayu.onetoone.activity.fragments.BaseFragment;
@@ -32,6 +33,7 @@ import com.shayu.onetoone.manager.CallClientManager;
import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.manager.RouteManager;
import com.shayu.onetoone.manager.SendMessageManager;
+import com.shayu.onetoone.utils.UserManager;
import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.bean.ConfigBean;
import com.yunbao.common.http.base.HttpCallback;
@@ -232,9 +234,10 @@ public class MainActivity extends AbsOTOActivity {
* 检测用户是否设置个人信息
*/
private void checkUserInfoIsSet() {
- OTONetManager.getInstance(mContext).getBaseInfos(true, new com.yunbao.common.http.base.HttpCallback() {
+ OTONetManager.getInstance(mContext).getBaseInfos(false, new com.yunbao.common.http.base.HttpCallback() {
@Override
public void onSuccess(com.shayu.onetoone.bean.UserBean data) {
+ UserManager.saveUserBean(data);
if (data.getStatus() == 0) {
RouteManager.forwardCompleteActivity();
}
@@ -289,7 +292,8 @@ public class MainActivity extends AbsOTOActivity {
ToastUtil.show(R.string.main_click_next_exit);
return;
}
- super.onBackPressed();
+ //super.onBackPressed();
+ AppContext.exit();
}
@Subscribe(threadMode = ThreadMode.MAIN)
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/MyArnActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/MyArnActivity.java
index 19165d452..368617d43 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/MyArnActivity.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/MyArnActivity.java
@@ -17,6 +17,7 @@ import com.shayu.onetoone.manager.RouteManager;
import com.yanzhenjie.recyclerview.SwipeRecyclerView;
import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.utils.ToastUtil;
+import com.yunbao.common.utils.WordUtil;
import com.yunbao.common.views.weight.ViewClicksAntiShake;
import java.util.List;
@@ -87,7 +88,14 @@ public class MyArnActivity extends AbsOTOActivity {
RouteManager.forwardActivity(RouteManager.ACTIVITY_DIAMOND_EXCHANGE, bundle);
}
});
-
+ ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.info), new ViewClicksAntiShake.ViewClicksCallBack() {
+ @Override
+ public void onViewClicks() {
+ RouteManager.forwardWebViewActivity(WordUtil.getNewString(R.string.my_arnings_reward_description),
+ "file:android_asset/Reward_instructions.html"
+ );
+ }
+ });
}
private void refreshMyArn() {
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/WebViewActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/WebViewActivity.java
index 81c6888ee..79bdbbbc6 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/WebViewActivity.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/WebViewActivity.java
@@ -68,7 +68,7 @@ public class WebViewActivity extends AbsOTOActivity {
finish();
return;
}
- if (!url.contains("token")) {
+ if (!url.contains("token")&&url.startsWith("http")) {
IMLoginModel userInfo = IMLoginManager.get(mContext).getUserInfo();
url += "&uid=" + userInfo.getId() + "&token=" + userInfo.getToken() + "&isZh=" + (WordUtil.isNewZh() ? "1" : "0");
}
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/FriendsFragment.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/FriendsFragment.java
index 68294ba66..42e1fa0af 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/FriendsFragment.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/FriendsFragment.java
@@ -106,13 +106,16 @@ public class FriendsFragment extends BaseFragment {
@Override
public void onError(int status, String msg, SendConsumeBean bean) {
super.onError(status, msg, bean);
+ if(status==503){
+ RouteManager.forwardActivity(RouteManager.ACTIVITY_MATCHING);
+ return;
+ }
int money = 100;
if (configBean != null) {
money = configBean.getMatePrice();
}
new TipsDialog(mContext)
- .setTitle(WordUtil.getNewString(R.string.not_money))
- .setContent(String.format(WordUtil.getNewString(R.string.not_money_video_tips), money))
+ .setTitle(WordUtil.getNewString(R.string.gift_not_money))
.setCancelText(WordUtil.getNewString(R.string.dialog_cancel_tip))
.setApplyText(WordUtil.getNewString(R.string.dialog_to_money_tip))
.showDialog();
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/MyFragment.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/MyFragment.java
index 6ecd92b51..9fc205b82 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/MyFragment.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/fragments/MyFragment.java
@@ -320,9 +320,12 @@ public class MyFragment extends BaseFragment implements OnItemClickListener() {
+ @Override
+ public void onItemClick(MessageConsumeConfigBean bean, int position) {
+ new TipsDialog(mContext)
+ .setTitle(WordUtil.getNewString(R.string.not_money))
+ .setContent(String.format(WordUtil.getNewString(R.string.not_money_tips), bean.getPrice()))
+ .setApplyText(WordUtil.getNewString(R.string.dialog_apply))
+ .setOnDialogClickListener(new OnDialogClickListener() {
+
+ @Override
+ public void onApply(Dialog dialog) {
+ super.onApply(dialog);
+ }
+ }).showDialog();
+ }
+ });
- @Override
- public void onApply(Dialog dialog) {
- super.onApply(dialog);
- }
- }).showDialog();
} else {
ToastUtil.show(msg);
}
@@ -268,43 +273,47 @@ public class ChatMessageFragment extends AbsConversationFragment {
ToastUtil.show(R.string.toast_call_not_unlock);
return;
}
- if(CallClientManager.getManager().isCalling()){
+ if (CallClientManager.getManager().isCalling()) {
ToastUtil.show(R.string.now_call_tips);
return;
}
- checkAuth(new OnSendMessageListener() {
+ MsgCheckUtils.checkAuth(mContext,targetId,new OnSendMessageListener() {
@Override
public void onSuccess(String token, SendConsumeBean bean) {
super.onSuccess(token, bean);
- new BottomListDialog(mContext).setSelect(new OnItemClickListener() {
- @Override
- public void onItemClick(String bean, int position) {
- CallClientManager.getManager().checkMoney(targetId, true, new OnSendMessageListener() {
+ MsgCheckUtils.checkPrice(mContext,targetId,new OnItemClickListener() {
+ @Override
+ public void onItemClick(MessageConsumeConfigBean configBean, int position) {
+ new BottomListDialog(mContext).setSelect(new OnItemClickListener() {
@Override
- public void onSuccess(String token, SendConsumeBean bean) {
- super.onSuccess(token, bean);
- Bundle bundle = new Bundle();
- bundle.putString("model", CallClientManager.VIDEO_CALL);
- bundle.putString("targetId", targetId);
- bundle.putString("callId", targetId);
- RouteManager.forwardActivity(RouteManager.ACTIVITY_CALL_VIDEO, bundle);
- }
+ public void onItemClick(String bean, int position) {
+ CallClientManager.getManager().checkMoney(targetId, true, new OnSendMessageListener() {
+ @Override
+ public void onSuccess(String token, SendConsumeBean bean) {
+ super.onSuccess(token, bean);
+ Bundle bundle = new Bundle();
+ bundle.putString("model", CallClientManager.VIDEO_CALL);
+ bundle.putString("targetId", targetId);
+ bundle.putString("callId", targetId);
+ RouteManager.forwardActivity(RouteManager.ACTIVITY_CALL_VIDEO, bundle);
+ }
- @Override
- public void onError(int status, String msg) {
- super.onError(status, msg);
- new TipsDialog(mContext)
- .setTitle(WordUtil.getNewString(R.string.not_money))
- .setContent(String.format(WordUtil.getNewString(R.string.not_money_video_tips), configBean.getVideoPrice()))
- .setCancelText(WordUtil.getNewString(R.string.dialog_cancel_tip))
- .setApplyText(WordUtil.getNewString(R.string.dialog_to_money_tip))
- .showDialog();
+ @Override
+ public void onError(int status, String msg) {
+ super.onError(status, msg);
+ new TipsDialog(mContext)
+ .setTitle(WordUtil.getNewString(R.string.not_money))
+ .setContent(String.format(WordUtil.getNewString(R.string.not_money_video_tips), configBean.getVideoPrice()))
+ .setCancelText(WordUtil.getNewString(R.string.dialog_cancel_tip))
+ .setApplyText(WordUtil.getNewString(R.string.dialog_to_money_tip))
+ .showDialog();
+ }
+ });
}
- });
- }
- }).setStrings(Collections.singletonList(String.format(WordUtil.getNewString(R.string.chat_video_tips), configBean.getVideoPrice())))
- .showDialog();
-
+ }).setStrings(Collections.singletonList(String.format(WordUtil.getNewString(R.string.chat_video_tips), configBean.getVideoPrice())))
+ .showDialog();
+ }
+ });
}
@@ -324,44 +333,50 @@ public class ChatMessageFragment extends AbsConversationFragment {
ToastUtil.show(R.string.toast_call_not_unlock);
return;
}
- if(CallClientManager.getManager().isCalling() || isFloatWindows()){
+ if (CallClientManager.getManager().isCalling() || isFloatWindows()) {
ToastUtil.show(R.string.now_call_tips);
return;
}
- checkAuth(new OnSendMessageListener() {
+ MsgCheckUtils.checkAuth(mContext,targetId,new OnSendMessageListener() {
@Override
public void onSuccess(String token, SendConsumeBean bean) {
super.onSuccess(token, bean);
- new BottomListDialog(mContext).setSelect(new OnItemClickListener() {
- @Override
- public void onItemClick(String bean, int position) {
- CallClientManager.getManager().checkMoney(targetId, false, new OnSendMessageListener() {
+ MsgCheckUtils.checkPrice(mContext,targetId,new OnItemClickListener() {
+ @Override
+ public void onItemClick(MessageConsumeConfigBean configBean, int position) {
+ new BottomListDialog(mContext).setSelect(new OnItemClickListener() {
@Override
- public void onSuccess(String token, SendConsumeBean bean) {
- super.onSuccess(token, bean);
- Bundle bundle = new Bundle();
- bundle.putString("model", CallClientManager.AUDIO_CALL);
- bundle.putString("targetId", targetId);
- bundle.putString("callId", targetId);
- RouteManager.forwardActivity(RouteManager.ACTIVITY_CALL_AUDIO, bundle);
- }
+ public void onItemClick(String bean, int position) {
+ CallClientManager.getManager().checkMoney(targetId, false, new OnSendMessageListener() {
+ @Override
+ public void onSuccess(String token, SendConsumeBean bean) {
+ super.onSuccess(token, bean);
+ Bundle bundle = new Bundle();
+ bundle.putString("model", CallClientManager.AUDIO_CALL);
+ bundle.putString("targetId", targetId);
+ bundle.putString("callId", targetId);
+ RouteManager.forwardActivity(RouteManager.ACTIVITY_CALL_AUDIO, bundle);
+ }
- @Override
- public void onError(int status, String msg) {
- super.onError(status, msg);
- new TipsDialog(mContext)
- .setTitle(WordUtil.getNewString(R.string.not_money))
- .setContent(String.format(WordUtil.getNewString(R.string.not_money_audio_tips), configBean.getMp3Price()))
- .setCancelText(WordUtil.getNewString(R.string.dialog_cancel_tip))
- .setApplyText(WordUtil.getNewString(R.string.dialog_to_money_tip))
- .showDialog();
- }
- });
+ @Override
+ public void onError(int status, String msg) {
+ super.onError(status, msg);
+ new TipsDialog(mContext)
+ .setTitle(WordUtil.getNewString(R.string.not_money))
+ .setContent(String.format(WordUtil.getNewString(R.string.not_money_audio_tips), configBean.getMp3Price()))
+ .setCancelText(WordUtil.getNewString(R.string.dialog_cancel_tip))
+ .setApplyText(WordUtil.getNewString(R.string.dialog_to_money_tip))
+ .showDialog();
+ }
+ });
+
+ }
+ }).setStrings(Collections.singletonList(String.format(WordUtil.getNewString(R.string.chat_audio_tips), configBean.getMp3Price())))
+ .showDialog();
+ }
+ });
- }
- }).setStrings(Collections.singletonList(String.format(WordUtil.getNewString(R.string.chat_audio_tips), configBean.getMp3Price())))
- .showDialog();
}
@Override
@@ -407,17 +422,23 @@ public class ChatMessageFragment extends AbsConversationFragment {
@Override
public void onError(int status, String msg) {
super.onError(status, msg);
- new TipsDialog(mContext)
- .setTitle(WordUtil.getNewString(R.string.not_money))
- .setContent(String.format(WordUtil.getNewString(R.string.not_money_tips), msg))
- .setApplyText(WordUtil.getNewString(R.string.dialog_apply))
- .setOnDialogClickListener(new OnDialogClickListener() {
+ MsgCheckUtils.checkPrice(mContext, targetId, new OnItemClickListener() {
+ @Override
+ public void onItemClick(MessageConsumeConfigBean bean, int position) {
+ new TipsDialog(mContext)
+ .setTitle(WordUtil.getNewString(R.string.not_money))
+ .setContent(String.format(WordUtil.getNewString(R.string.not_money_tips), bean.getPrice()))
+ .setApplyText(WordUtil.getNewString(R.string.dialog_apply))
+ .setOnDialogClickListener(new OnDialogClickListener() {
+
+ @Override
+ public void onApply(Dialog dialog) {
+ super.onApply(dialog);
+ }
+ }).showDialog();
+ }
+ });
- @Override
- public void onApply(Dialog dialog) {
- super.onApply(dialog);
- }
- }).showDialog();
}
});
}
@@ -433,27 +454,7 @@ public class ChatMessageFragment extends AbsConversationFragment {
return EasyFloat.isShow("call");
}
- private void checkAuth(OnSendMessageListener listener) {
- OTONetManager.getInstance(mContext)
- .getTargetUserInfo(Integer.parseInt(targetId), new HttpCallback() {
- @Override
- public void onSuccess(UserBean data) {
- if (data.getInfo().getName_auth() == 2) {
- listener.onSuccess("", null);
- } else if (data.getInfo().getName_auth() == 3) {
- listener.onError(data.getInfo().getName_auth(), "當前正在審核中,請耐心等待");
- }
- AppManager.runDebugCode(()->{
- listener.onSuccess("", null);
- });
- }
- @Override
- public void onError(String error) {
- Log.e(TAG, "onError: " + error);
- }
- });
- }
private void sendAuthRequest() {
MessageChatAuthContent content = MessageChatAuthContent.obtain("");
@@ -632,7 +633,7 @@ public class ChatMessageFragment extends AbsConversationFragment {
video.setImageResource(R.mipmap.ic_msg_video_lock);
call.setTag("true");
}
- AppManager.runDebugCode(()->{
+ AppManager.runDebugCode(() -> {
call.setTag(null);
call.setImageResource(R.mipmap.ic_msg_call);
video.setImageResource(R.mipmap.ic_msg_video);
@@ -771,43 +772,28 @@ public class ChatMessageFragment extends AbsConversationFragment {
}
}
- private void initPriceBean() {
- OTONetManager.getInstance(mContext)
- .getMessageConsumeConfig(targetId, new HttpCallback() {
+ private void showRedPoint() {
+ RongIMClient.getInstance().getUnreadCount(new Conversation.ConversationType[]{Conversation.ConversationType.PRIVATE}
+ , false
+ , new RongIMClient.ResultCallback() {
@Override
- public void onSuccess(MessageConsumeConfigBean data) {
- configBean = data;
+ public void onSuccess(Integer integer) {
+ Integer tmp = integer + MsgMessageFragment.systemPoint;
+ if (tmp <= 0) {
+ numLayout.setVisibility(View.INVISIBLE);
+ return;
+ }
+ numLayout.setVisibility(View.VISIBLE);
+ num.setText(tmp + "");
}
@Override
- public void onError(String error) {
+ public void onError(RongIMClient.ErrorCode e) {
}
});
}
- private void showRedPoint() {
- RongIMClient.getInstance().getUnreadCount(new Conversation.ConversationType[]{Conversation.ConversationType.PRIVATE}
- ,false
- ,new RongIMClient.ResultCallback() {
- @Override
- public void onSuccess(Integer integer) {
- Integer tmp = integer + MsgMessageFragment.systemPoint;
- if (tmp <= 0) {
- numLayout.setVisibility(View.INVISIBLE);
- return;
- }
- numLayout.setVisibility(View.VISIBLE);
- num.setText(tmp + "");
- }
-
- @Override
- public void onError(RongIMClient.ErrorCode e) {
-
- }
- });
- }
-
@Subscribe
public void moneyEvent(MoneyUpdateEvent event) {
if (giftPanel != null) {
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/message/CallVideoActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/message/CallVideoActivity.java
index e2d6dcb9a..408c2222c 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/message/CallVideoActivity.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/message/CallVideoActivity.java
@@ -558,7 +558,7 @@ public class CallVideoActivity extends AbsOTOActivity {
//
@Override
public void onCallEnd() {
- if (!sessionId.equals(targetId)){
+ if (sessionId!=null&&!sessionId.equals(targetId)){
Bundle bundle = new Bundle();
bundle.putString("model", CallClientManager.VIDEO_CALL);
bundle.putString("targetId", targetId);
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/activity/setting/SettingActivity.java b/OneToOne/src/main/java/com/shayu/onetoone/activity/setting/SettingActivity.java
index 45b7e17a7..8fbaeb520 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/activity/setting/SettingActivity.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/activity/setting/SettingActivity.java
@@ -114,7 +114,7 @@ public class SettingActivity extends AbsActivity {
@SuppressLint("SetTextI18n")
private void intiData() {
- versionCode.setText(VersionUtil.getVersion());
+ versionCode.setText(VersionUtil.getVersion()+"("+VersionUtil.getVersionCode()+")");
cacheSize.setText(GlideCatchUtil.getInstance().getCacheSize());
}
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/adapter/HomeRankListAdapter.java b/OneToOne/src/main/java/com/shayu/onetoone/adapter/HomeRankListAdapter.java
index b783c239d..f791741f3 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/adapter/HomeRankListAdapter.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/adapter/HomeRankListAdapter.java
@@ -87,12 +87,7 @@ public class HomeRankListAdapter extends RecyclerView.Adapter 5) {
- user_name.setText(bean.getUserNicename().substring(0, 4) + "...");
- } else {
- user_name.setText(bean.getUserNicename());
- }
+ user_name.setText(bean.getUserNicename());
level.setText("Lv." + bean.getLevel());
money.setText(bean.getMoney());
@@ -102,7 +97,7 @@ public class HomeRankListAdapter extends RecyclerView.Adapter mList) {
+ if(mList.isEmpty()){
+ GreetBean bean=new GreetBean();
+ mList.add(bean);
+ }
this.mList = mList;
notifyDataSetChanged();
}
@@ -83,6 +87,7 @@ public class MsgGreetConfigAdapter extends RecyclerView.Adapter 0) {
+ if (!hasFocus && editText.getText().toString().length() > 0 && mList.size() > position) {
mList.get(position).setContent(editText.getText().toString());
editText.setEnabled(false);
}
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/bean/UserBean.java b/OneToOne/src/main/java/com/shayu/onetoone/bean/UserBean.java
index 85d533939..fdb25d861 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/bean/UserBean.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/bean/UserBean.java
@@ -69,12 +69,12 @@ public class UserBean extends BaseModel {
private int b_y;
private int b_ym;
private String b_ymd;
- private int name_auth;//1 未提交 2 已认证 3已提交
+ private int name_auth;//1 未提交 2 已认证 3已提交 4被驳回
private long name_auth_time;
private String auth_front;
private String auth_back;
private String auth_remark;
- private int sage_auth;
+ private int sage_auth;//1 未提交 2 已认证 3已提交 4被驳回
private long sage_auth_time;
private int is_hot;
private String vodie_price;
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/dialog/MsgMoreDialog.java b/OneToOne/src/main/java/com/shayu/onetoone/dialog/MsgMoreDialog.java
index 80f847986..d0be7120d 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/dialog/MsgMoreDialog.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/dialog/MsgMoreDialog.java
@@ -7,8 +7,12 @@ import androidx.annotation.NonNull;
import com.lxj.xpopup.core.AttachPopupView;
import com.shayu.onetoone.R;
+import com.shayu.onetoone.bean.UserBean;
import com.shayu.onetoone.event.MessageMsgBusEvent;
import com.shayu.onetoone.manager.RouteManager;
+import com.shayu.onetoone.utils.UserManager;
+import com.yunbao.common.bean.IMLoginModel;
+import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.utils.Bus;
/**
@@ -33,6 +37,10 @@ public class MsgMoreDialog extends AttachPopupView implements View.OnClickListen
read = findViewById(R.id.ll_read);
config.setOnClickListener(this);
read.setOnClickListener(this);
+ UserBean bean = UserManager.getUserBean();
+ if (bean.getInfo().getSage_auth()!=2) {
+ config.setVisibility(GONE);
+ }
}
@Override
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/manager/CallClientManager.java b/OneToOne/src/main/java/com/shayu/onetoone/manager/CallClientManager.java
index 27acc20ac..7211a6e1d 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/manager/CallClientManager.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/manager/CallClientManager.java
@@ -50,7 +50,7 @@ public class CallClientManager {
public static final String AUDIO_FLOAT = "audioFloatWindow";//浮窗
private static CallClientManager manager;
private SurfaceView localVideo, remoteVideo;
- private Map listeners;
+ private Map listeners;
private CallTimeTask timeTask = null;
public static CallClientManager getManager() {
@@ -84,8 +84,8 @@ public class CallClientManager {
RongCallClient.setReceivedCallListener(new CallMeListener());
}
- public void addOnVoIPCallListener(Class zlass,OnCallStatusListener statusListener) {
- listeners.put(zlass,statusListener);
+ public void addOnVoIPCallListener(Class zlass, OnCallStatusListener statusListener) {
+ listeners.put(zlass, statusListener);
RongCallClient.getInstance().setVoIPCallListener(new CallStatusListener(new OnCallStatusListener() {
@Override
public void onCallWait(SurfaceView localVideo) {
@@ -96,7 +96,7 @@ public class CallClientManager {
@Override
public void onCallStart(String userId, SurfaceView remoteVideo) {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallStart(userId, remoteVideo);
}
startTimer(null);
@@ -104,7 +104,7 @@ public class CallClientManager {
@Override
public void onCallEnd() {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallEnd();
}
endTimer();
@@ -112,7 +112,7 @@ public class CallClientManager {
@Override
public void onStartFirstFrame() {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onStartFirstFrame();
}
}
@@ -150,14 +150,14 @@ public class CallClientManager {
RongCallClient.getInstance().setVoIPCallListener(new CallStatusListener(new OnCallStatusListener() {
@Override
public void onCallWait(SurfaceView localVideo) {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallWait(localVideo);
}
}
@Override
public void onCallStart(String userId, SurfaceView remoteVideo) {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallStart(userId, remoteVideo);
}
startTimer(targetId);
@@ -165,7 +165,7 @@ public class CallClientManager {
@Override
public void onCallEnd() {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallEnd();
}
endTimer();
@@ -173,7 +173,7 @@ public class CallClientManager {
@Override
public void onStartFirstFrame() {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onStartFirstFrame();
}
}
@@ -187,14 +187,14 @@ public class CallClientManager {
RongCallClient.getInstance().setVoIPCallListener(new CallStatusListener(new OnCallStatusListener() {
@Override
public void onCallWait(SurfaceView localVideo) {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallWait(localVideo);
}
}
@Override
public void onCallStart(String userId, SurfaceView remoteVideo) {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallStart(userId, remoteVideo);
}
startTimer(targetId);
@@ -202,7 +202,7 @@ public class CallClientManager {
@Override
public void onCallEnd() {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onCallEnd();
}
endTimer();
@@ -210,7 +210,7 @@ public class CallClientManager {
@Override
public void onStartFirstFrame() {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onStartFirstFrame();
}
}
@@ -244,7 +244,7 @@ public class CallClientManager {
public String getSessionId() {
RongCallSession callSession = RongCallClient.getInstance().getCallSession();
- if(callSession==null){
+ if (callSession == null) {
return "";
}
return callSession.getCallerUserId();
@@ -265,7 +265,8 @@ public class CallClientManager {
@Override
public boolean cancel() {
- if (sessionId.equals(targetId)) {
+ long id = IMLoginManager.get(CommonAppContext.sInstance).getUserInfo().getId();
+ if (sessionId.equals(targetId) || !sessionId.equals(id + "")) {
System.err.println("接听方不计费 结束");
return super.cancel();
}
@@ -309,7 +310,7 @@ public class CallClientManager {
extra = String.format(Locale.ROOT, "%02d:%02d", (time % 3600) / 60, (time % 60));
}
handler.post(() -> {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onTime(extra);
if (warningTime <= 60) {
listener.onTimeWarning(warningTime--);
@@ -355,7 +356,7 @@ public class CallClientManager {
warningTime = bean.getMp3Time();
}
if (warningTime <= 60) {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onTimeWarning(warningTime);
}
}
@@ -365,7 +366,7 @@ public class CallClientManager {
public void onError(int status, String msg) {
super.onError(status, msg);
if (status == OnSendMessageListener.STATUS_NOT_PRICE) {
- for (OnCallStatusListener listener : listeners.values()) {
+ for (OnCallStatusListener listener : listeners.values()) {
listener.onErrorNotPrice(msg);
}
endCall();
@@ -553,12 +554,12 @@ public class CallClientManager {
* 如果对端调用{@link RongCallClient#startCall(int, boolean, Conversation.ConversationType, String, List, List, RongCallCommon.CallMediaType, String, StartCameraCallback)} 或
* {@link RongCallClient#acceptCall(String, int, boolean, StartCameraCallback)}开始的音视频通话,则可以使用如下设置改变对端视频流的镜像显示:
*
- * public void onRemoteUserJoined(String userId, RongCallCommon.CallMediaType mediaType, int userType, SurfaceView remoteVideo) {
- * if (null != remoteVideo) {
- * ((RongRTCVideoView) remoteVideo).setMirror( boolean);//观看对方视频流是否镜像处理
- * }
- * }
- *
+ * public void onRemoteUserJoined(String userId, RongCallCommon.CallMediaType mediaType, int userType, SurfaceView remoteVideo) {
+ * if (null != remoteVideo) {
+ * ((RongRTCVideoView) remoteVideo).setMirror( boolean);//观看对方视频流是否镜像处理
+ * }
+ * }
+ *
*/
@Override
public void onRemoteUserJoined(String userId, RongCallCommon.CallMediaType mediaType, int userType, SurfaceView remoteVideo) {
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/manager/SendMessageManager.java b/OneToOne/src/main/java/com/shayu/onetoone/manager/SendMessageManager.java
index 7655b25c2..3a0ef5b4d 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/manager/SendMessageManager.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/manager/SendMessageManager.java
@@ -72,6 +72,10 @@ public class SendMessageManager {
}
public static void pingVideoMessage(String toUid, String time, OnSendMessageListener listener) {
+ if ("0".equals(time)) {
+ listener.onError(504,"时间错误");
+ return;
+ }
SendData sendData = new SendData(toUid,
2,
"not",
@@ -135,7 +139,7 @@ public class SendMessageManager {
@Override
public void onSuccess(SendConsumeBean consumeBean) {
if (consumeBean.getCode() != 0) {
- if (consumeBean.getCode() == 500) {
+ if (consumeBean.getCode() == 503 || consumeBean.getCode()==500) {
messageListener.onError(OnSendMessageListener.STATUS_NOT_PRICE, consumeBean.getMsg(), consumeBean);
} else {
messageListener.onError(OnSendMessageListener.STATUS_ERROR, consumeBean.getMsg(), consumeBean);
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/provider/OTOCallEndMessageItemProvider.java b/OneToOne/src/main/java/com/shayu/onetoone/provider/OTOCallEndMessageItemProvider.java
index a817ff249..764ac220d 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/provider/OTOCallEndMessageItemProvider.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/provider/OTOCallEndMessageItemProvider.java
@@ -22,6 +22,7 @@ import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.manager.RouteManager;
import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.interfaces.OnItemClickListener;
+import com.yunbao.common.utils.AppManager;
import com.yunbao.common.utils.ToastUtil;
import java.util.Collections;
@@ -133,13 +134,15 @@ public class OTOCallEndMessageItemProvider extends CallEndMessageItemProvider {
private void checkAuth(String targetId, OnSendMessageListener listener) {
OTONetManager.getInstance(null)
.getTargetUserInfo(Integer.parseInt(targetId), new HttpCallback() {
- @Override
public void onSuccess(UserBean data) {
- if (data.getInfo().getName_auth() == 1) {
- listener.onError(0, "");
- } else {
+ if (data.getInfo().getName_auth() == 2) {
listener.onSuccess("", null);
+ } else if (data.getInfo().getName_auth() == 3) {
+ listener.onError(data.getInfo().getName_auth(), "當前正在審核中,請耐心等待");
}
+ AppManager.runDebugCode(() -> {
+ //listener.onSuccess("", null);
+ });
}
@Override
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/utils/MsgCheckUtils.java b/OneToOne/src/main/java/com/shayu/onetoone/utils/MsgCheckUtils.java
new file mode 100644
index 000000000..128c28e89
--- /dev/null
+++ b/OneToOne/src/main/java/com/shayu/onetoone/utils/MsgCheckUtils.java
@@ -0,0 +1,52 @@
+package com.shayu.onetoone.utils;
+
+import android.content.Context;
+import android.util.Log;
+
+import com.shayu.onetoone.bean.MessageConsumeConfigBean;
+import com.shayu.onetoone.bean.UserBean;
+import com.shayu.onetoone.listener.OnSendMessageListener;
+import com.shayu.onetoone.manager.OTONetManager;
+import com.yunbao.common.http.base.HttpCallback;
+import com.yunbao.common.interfaces.OnItemClickListener;
+import com.yunbao.common.utils.AppManager;
+
+public class MsgCheckUtils {
+ public static void checkPrice(Context mContext,String targetId,OnItemClickListener listener) {
+ OTONetManager.getInstance(mContext)
+ .getMessageConsumeConfig(targetId, new HttpCallback() {
+ @Override
+ public void onSuccess(MessageConsumeConfigBean data) {
+ listener.onItemClick(data, 0);
+ }
+
+ @Override
+ public void onError(String error) {
+
+ }
+ });
+ }
+ public static void checkAuth(Context mContext,String targetId,OnSendMessageListener listener) {
+ OTONetManager.getInstance(mContext)
+ .getTargetUserInfo(Integer.parseInt(targetId), new HttpCallback() {
+ @Override
+ public void onSuccess(UserBean data) {
+ if (data.getInfo().getName_auth() == 2) {
+ listener.onSuccess("", null);
+ } else if (data.getInfo().getName_auth() == 3) {
+ listener.onError(data.getInfo().getName_auth(), "當前正在審核中,請耐心等待");
+ }else {
+ listener.onError(data.getInfo().getName_auth(), "");
+ }
+ AppManager.runDebugCode(() -> {
+ //listener.onSuccess("", null);
+ });
+ }
+
+ @Override
+ public void onError(String error) {
+ Log.e("ChatAuth", "onError: " + error);
+ }
+ });
+ }
+}
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/utils/UserManager.java b/OneToOne/src/main/java/com/shayu/onetoone/utils/UserManager.java
new file mode 100644
index 000000000..265f7822f
--- /dev/null
+++ b/OneToOne/src/main/java/com/shayu/onetoone/utils/UserManager.java
@@ -0,0 +1,19 @@
+package com.shayu.onetoone.utils;
+
+import com.alibaba.fastjson.JSONObject;
+import com.shayu.onetoone.bean.UserBean;
+import com.yunbao.common.utils.SpUtil;
+
+public class UserManager {
+ public static UserBean userBean;
+ public static UserBean getUserBean(){
+ if(userBean==null){
+ userBean=JSONObject.parseObject(SpUtil.getStringValue("oto_user_info"),UserBean.class);
+ }
+ return userBean;
+ }
+ public static void saveUserBean(UserBean bean){
+ userBean=bean;
+ SpUtil.setStringValue("oto_user_info", JSONObject.toJSONString(bean));
+ }
+}
diff --git a/OneToOne/src/main/java/com/shayu/onetoone/view/MsgInputPanelForAudio.java b/OneToOne/src/main/java/com/shayu/onetoone/view/MsgInputPanelForAudio.java
index c0d60e400..e9fbaa4a9 100644
--- a/OneToOne/src/main/java/com/shayu/onetoone/view/MsgInputPanelForAudio.java
+++ b/OneToOne/src/main/java/com/shayu/onetoone/view/MsgInputPanelForAudio.java
@@ -13,11 +13,14 @@ import android.widget.Toast;
import com.blankj.utilcode.util.PermissionUtils;
import com.shayu.onetoone.R;
+import com.shayu.onetoone.bean.MessageConsumeConfigBean;
import com.shayu.onetoone.bean.SendConsumeBean;
import com.shayu.onetoone.dialog.TipsDialog;
import com.shayu.onetoone.listener.OnDialogClickListener;
import com.shayu.onetoone.listener.OnSendMessageListener;
import com.shayu.onetoone.manager.SendMessageManager;
+import com.shayu.onetoone.utils.MsgCheckUtils;
+import com.yunbao.common.interfaces.OnItemClickListener;
import com.yunbao.common.utils.ToastUtil;
import com.yunbao.common.utils.WordUtil;
@@ -143,16 +146,22 @@ public class MsgInputPanelForAudio extends AbsInputPanel {
AudioRecordManager.getInstance().stopRecord();
isAudio = false;
mUpDirection = false;
- new TipsDialog(mContext)
- .setTitle(WordUtil.getNewString(R.string.not_money))
- .setContent(String.format(WordUtil.getNewString(R.string.not_money_text_tips), msg))
- .setOnDialogClickListener(new OnDialogClickListener() {
+ MsgCheckUtils.checkPrice(mContext, targetId, new OnItemClickListener() {
+ @Override
+ public void onItemClick(MessageConsumeConfigBean bean, int position) {
+ new TipsDialog(mContext)
+ .setTitle(WordUtil.getNewString(R.string.not_money))
+ .setContent(String.format(WordUtil.getNewString(R.string.not_money_text_tips), bean.getPrice()))
+ .setOnDialogClickListener(new OnDialogClickListener() {
+
+ @Override
+ public void onApply(Dialog dialog) {
+ super.onApply(dialog);
+ }
+ }).showDialog();
+ }
+ });
- @Override
- public void onApply(Dialog dialog) {
- super.onApply(dialog);
- }
- }).showDialog();
} else {
ToastUtil.show(msg);
}
diff --git a/OneToOne/src/main/res/drawable/button_my_arn_exchange3.xml b/OneToOne/src/main/res/drawable/button_my_arn_exchange3.xml
new file mode 100644
index 000000000..8f1f4e5d9
--- /dev/null
+++ b/OneToOne/src/main/res/drawable/button_my_arn_exchange3.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/OneToOne/src/main/res/drawable/button_my_arn_exchange_btn.xml b/OneToOne/src/main/res/drawable/button_my_arn_exchange_btn.xml
new file mode 100644
index 000000000..48ad14ee3
--- /dev/null
+++ b/OneToOne/src/main/res/drawable/button_my_arn_exchange_btn.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/OneToOne/src/main/res/layout/activity_entry.xml b/OneToOne/src/main/res/layout/activity_entry.xml
index ca46add50..94fda5bb5 100644
--- a/OneToOne/src/main/res/layout/activity_entry.xml
+++ b/OneToOne/src/main/res/layout/activity_entry.xml
@@ -277,7 +277,7 @@
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="@string/next_step_is_consent"
- android:textColor="#ffb1b1b1"
+ android:textColor="#FFFFFF"
android:textSize="10sp" />
@@ -295,7 +295,7 @@
android:layout_height="match_parent"
android:layout_marginLeft="1dp"
android:text="@string/and"
- android:textColor="#ffb1b1b1"
+ android:textColor="#FFFFFF"
android:textSize="10sp" />
-
+
+ app:srcCompat="@mipmap/diamond" />
+ app:srcCompat="@mipmap/icon_level" />
+ app:srcCompat="@mipmap/diamond" />
diff --git a/OneToOne/src/main/res/layout/view_message_input_gift.xml b/OneToOne/src/main/res/layout/view_message_input_gift.xml
index 0a480ab9a..f35640fb2 100644
--- a/OneToOne/src/main/res/layout/view_message_input_gift.xml
+++ b/OneToOne/src/main/res/layout/view_message_input_gift.xml
@@ -44,7 +44,7 @@
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_gravity="center"
- app:srcCompat="@mipmap/ic_drill" />
+ app:srcCompat="@mipmap/diamond" />
可兌換總額
金幣
切換
+ 敬請期待
請輸入需兌換的星幣金額
立即兌換
全額兌換
@@ -35,11 +36,11 @@
最多選 %1$s 張圖片哦
暫無好友消息~
餘額不足
- 文字聊天每條續消耗%s鑽,您可通過充值獲取更多星幣以便繼續聊天
+ 文字聊天每條續消耗%s星幣,您可通過充值獲取更多星幣以便繼續聊天
與TA視頻聊天每分鐘續消耗%s星幣您可通過充值獲取更多星幣以便繼續聊天
與TA語音聊天每分鐘續消耗%s星幣您可通過充值獲取更多星幣以便繼續聊天
- 聊天每條續消耗%s鑽,您可通過充值獲取更多星幣以便繼續聊天
+ 聊天每條續消耗%s星幣,您可通過充值獲取更多星幣以便繼續聊天
離開
去充值
發起視頻通話\n%s鑽/分鐘
diff --git a/OneToOne/src/main/res/values-zh-rTW/strings.xml b/OneToOne/src/main/res/values-zh-rTW/strings.xml
index 2078c2c8d..fcca1a6b8 100644
--- a/OneToOne/src/main/res/values-zh-rTW/strings.xml
+++ b/OneToOne/src/main/res/values-zh-rTW/strings.xml
@@ -28,6 +28,7 @@
可兌換總額
金幣
切換
+ 敬請期待
請輸入需兌換的星幣金額
立即兌換
全額兌換
@@ -35,11 +36,11 @@
最多選 %1$s 張圖片哦
暫無好友消息~
餘額不足
- 文字聊天每條續消耗%s鑽,您可通過充值獲取更多星幣以便繼續聊天
+ 文字聊天每條續消耗%s星幣,您可通過充值獲取更多星幣以便繼續聊天
與TA視頻聊天每分鐘續消耗%s星幣您可通過充值獲取更多星幣以便繼續聊天
與TA語音聊天每分鐘續消耗%s星幣您可通過充值獲取更多星幣以便繼續聊天
- 聊天每條續消耗%s鑽,您可通過充值獲取更多星幣以便繼續聊天
+ 聊天每條續消耗%s星幣,您可通過充值獲取更多星幣以便繼續聊天
離開
去充值
發起視頻通話\n%s鑽/分鐘
diff --git a/OneToOne/src/main/res/values/strings.xml b/OneToOne/src/main/res/values/strings.xml
index 5ce231fcb..d6f77284f 100644
--- a/OneToOne/src/main/res/values/strings.xml
+++ b/OneToOne/src/main/res/values/strings.xml
@@ -28,6 +28,7 @@
可兌換總額
金幣
切換
+ 敬請期待
請輸入需兌換的星幣金額
立即兌換
全額兌換
@@ -36,12 +37,12 @@
friend empty
餘額不足
- "文字聊天每條續消耗%s鑽,您可通過充值獲取更多星幣以便繼續聊天"
+ "文字聊天每條續消耗%s星幣,您可通過充值獲取更多星幣以便繼續聊天"
與TA視頻聊天每分鐘續消耗%s星幣您可通過充值獲取更多星幣以便繼續聊天
與TA語音聊天每分鐘續消耗%s星幣您可通過充值獲取更多星幣以便繼續聊天
- 聊天每條續消耗%s鑽,您可通過充值獲取更多星幣以便繼續聊天
+ 聊天每條續消耗%s星幣,您可通過充值獲取更多星幣以便繼續聊天
離開
去充值
發起視頻通話\n%s鑽/分鐘
@@ -73,7 +74,7 @@
首次匹配成功獎勵
恭喜獲得
打招呼設置
- 審核中,請耐心等待审核通过
+ 審核中,請耐心等待審核通過
已發起審核,請耐心等待審核結果
審核失敗,去提交
審核中
@@ -114,8 +115,8 @@
身份證背面
發起審核
- 带*为必填项,為保障您的利益,請如實填寫
- 性别
+ 帶*為必填項,為保障您的利益,請如實填寫
+ 性別
男
女
真實姓名
@@ -132,7 +133,7 @@
真人說明
請上傳您的身份證正反面完成真人認證,完成認證可獲得跟多消息推送並提高聊天,收禮的收益比例
- 條件一:完後真人認證
+ 條件一:完后真人認證
已完成
條件二:上傳入駐資料
已完成
@@ -253,12 +254,12 @@
添加更多
保存
- 被關註
+ 被關注
關注
- 互動關註
+ 互動關注
人
- 未關註
+ 未關注
回關
已關注
相互關注
@@ -269,8 +270,8 @@
收下獎勵
發送任意禮物后即可解鎖
- 余额不足,请充值后再进行尝试吧~
- 通话结束
- 对方未完成真人认证,暂时无法向对方发起通话
+ 餘額不足,請充值后再進行嘗試吧~
+ 通話結束
+ 對方未完成真人認證,暫時無法向對方發起通話
您當前正在通話中,請掛斷後再試
\ No newline at end of file
diff --git a/common/src/main/java/com/yunbao/common/utils/ProcessImageUtil.java b/common/src/main/java/com/yunbao/common/utils/ProcessImageUtil.java
index 463e44a1b..686941ef4 100644
--- a/common/src/main/java/com/yunbao/common/utils/ProcessImageUtil.java
+++ b/common/src/main/java/com/yunbao/common/utils/ProcessImageUtil.java
@@ -64,6 +64,15 @@ public class ProcessImageUtil extends ProcessResultUtil {
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE,
};
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
+ mCameraPermissions = new String[]{
+ Manifest.permission.READ_MEDIA_IMAGES,
+ Manifest.permission.CAMERA
+ };
+ mAlumbPermissions = new String[]{
+ Manifest.permission.READ_MEDIA_IMAGES,
+ };
+ }
mCameraPermissionCallback = new Runnable() {
@Override
public void run() {
diff --git a/common/src/main/java/com/yunbao/common/utils/VersionUtil.java b/common/src/main/java/com/yunbao/common/utils/VersionUtil.java
index ac6d75a53..277eb4207 100644
--- a/common/src/main/java/com/yunbao/common/utils/VersionUtil.java
+++ b/common/src/main/java/com/yunbao/common/utils/VersionUtil.java
@@ -172,4 +172,14 @@ public class VersionUtil {
return sVersion;
}
+ public static String getVersionCode() {
+ try {
+ PackageManager manager = CommonAppContext.sInstance.getPackageManager();
+ PackageInfo info = manager.getPackageInfo(CommonAppContext.sInstance.getPackageName(), 0);
+ return info.versionCode+"";
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return "NUL";
+ }
}