Compare commits
93 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
60bc80e586 | ||
|
|
3ece1d2568 | ||
|
|
940db59889 | ||
|
|
e192b2f6c7 | ||
|
|
71e3be10d0 | ||
|
|
3878dc3d76 | ||
|
|
7e5cda6bdd | ||
|
|
d95206b871 | ||
|
|
251a428f80 | ||
|
|
dbc62fa439 | ||
|
|
5c0b5aabdb | ||
|
|
5bc2c375cb | ||
|
|
c294a1c073 | ||
|
|
96f158b029 | ||
|
|
64ef9b27ae | ||
|
|
163ed8b34b | ||
|
|
67a1bd5e71 | ||
|
|
399575e542 | ||
|
|
11a9711d20 | ||
|
|
f5d1c6c2ab | ||
|
|
bd791dcc56 | ||
|
|
09f763dc2e | ||
|
|
414bbd10b9 | ||
|
|
a14412346f | ||
|
|
ee4926719f | ||
|
|
61821aee63 | ||
|
|
0fe09123fd | ||
|
|
1b2ffd37e3 | ||
|
|
ba8778ae44 | ||
|
|
2c93a3b95a | ||
|
|
fbfe1af405 | ||
|
|
8eb88e4149 | ||
|
|
7891cca07d | ||
|
|
77b73907dc | ||
|
|
d11302ae35 | ||
|
|
294e2ca16e | ||
|
|
ed031cf0fc | ||
|
|
95beb590d7 | ||
|
|
50937bdd42 | ||
|
|
3f03230cd3 | ||
|
|
1019bac085 | ||
|
|
4a2028db29 | ||
|
|
4f916a4ad4 | ||
|
|
7105f3bc82 | ||
|
|
473c5c8eaf | ||
|
|
09abde0c8e | ||
|
|
0e74652f41 | ||
|
|
e5e3a6ea84 | ||
|
|
31cb7ec270 | ||
|
|
276485ce4b | ||
|
|
e2c4a0e2ae | ||
|
|
aca96cf800 | ||
|
|
1bdbb25e94 | ||
|
|
3712dafbed | ||
|
|
7f9d5a5c81 | ||
|
|
4631bb1a50 | ||
| 7d68640200 | |||
|
|
71277bc75d | ||
|
|
af0cb7babe | ||
|
|
e0c9b637df | ||
|
|
4269288754 | ||
|
|
ccc4802a23 | ||
|
|
ac1b8eeae5 | ||
|
|
0f0ede4040 | ||
|
|
1e72c08ccc | ||
|
|
27c8889f57 | ||
|
|
c0367942e5 | ||
|
|
b8996a700a | ||
|
|
f4adc9ca6c | ||
|
|
6628f66b3f | ||
|
|
e1b9e3348c | ||
|
|
c6fc4a5884 | ||
|
|
558c1c0d5a | ||
|
|
e6b12fad24 | ||
|
|
d7ab1d7f9b | ||
|
|
c0b686c14f | ||
|
|
1b905a0718 | ||
|
|
e8c8456e14 | ||
|
|
2ee9e9c726 | ||
|
|
bb91d1bef7 | ||
|
|
7c8db902f3 | ||
|
|
7937ef70bc | ||
|
|
380381c3fe | ||
|
|
6322c36906 | ||
|
|
1f09d1a0c4 | ||
|
|
2d5f23519d | ||
|
|
39dc287623 | ||
|
|
eb594fcfce | ||
|
|
4d6e38734d | ||
|
|
55b53fb955 | ||
|
|
c4a24be6f7 | ||
|
|
e0c1e9c64f | ||
|
|
b56a0bcce4 |
4
.gitignore
vendored
@@ -15,3 +15,7 @@ local.properties
|
|||||||
/main/build/
|
/main/build/
|
||||||
/video/build/
|
/video/build/
|
||||||
/tmp/full-r8-config.txt
|
/tmp/full-r8-config.txt
|
||||||
|
/outputs/apk
|
||||||
|
/TabLayout/build
|
||||||
|
/app/google_test/release
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
>
|
>
|
||||||
|
|
||||||
<queries>
|
<queries>
|
||||||
<package android:name="com.newpandora.yo"/>
|
<package android:name="${applicationId}"/>
|
||||||
<package android:name="com.facebook.orca"/>
|
<package android:name="com.facebook.orca"/>
|
||||||
|
|
||||||
<package
|
<package
|
||||||
|
|||||||
@@ -3,7 +3,9 @@ package com.yunbao.share;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
|
import android.os.Build;
|
||||||
|
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
import androidx.core.content.FileProvider;
|
import androidx.core.content.FileProvider;
|
||||||
|
|
||||||
import com.twitter.sdk.android.tweetcomposer.TweetUploadService;
|
import com.twitter.sdk.android.tweetcomposer.TweetUploadService;
|
||||||
@@ -15,12 +17,22 @@ import java.io.File;
|
|||||||
public abstract class AbsShareInterface {
|
public abstract class AbsShareInterface {
|
||||||
protected final Context mContext;
|
protected final Context mContext;
|
||||||
|
|
||||||
|
|
||||||
public AbsShareInterface(Context context) {
|
public AbsShareInterface(Context context) {
|
||||||
this.mContext = context;
|
this.mContext = context;
|
||||||
IntentFilter filter = new IntentFilter(TweetUploadService.UPLOAD_SUCCESS);
|
IntentFilter filter = new IntentFilter(TweetUploadService.UPLOAD_SUCCESS);
|
||||||
filter.addAction(TweetUploadService.UPLOAD_FAILURE);
|
filter.addAction(TweetUploadService.UPLOAD_FAILURE);
|
||||||
filter.addAction(TweetUploadService.TWEET_COMPOSE_CANCEL);
|
filter.addAction(TweetUploadService.TWEET_COMPOSE_CANCEL);
|
||||||
context.registerReceiver(new TwitterResultReceiver(), filter);
|
|
||||||
|
TwitterResultReceiver receiver = new TwitterResultReceiver();
|
||||||
|
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { // API 33+
|
||||||
|
// Android 13 (API 33) 及以上版本使用导出标志
|
||||||
|
context.registerReceiver(receiver, filter, Context.RECEIVER_NOT_EXPORTED);
|
||||||
|
} else {
|
||||||
|
// Android 12 (API 32) 以下版本
|
||||||
|
context.registerReceiver(receiver, filter);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public abstract void share(ShareBean builder, ICallback callback);
|
public abstract void share(ShareBean builder, ICallback callback);
|
||||||
|
|||||||
@@ -33,12 +33,12 @@ public class ShareBean {
|
|||||||
|
|
||||||
|
|
||||||
public static String createLiveShareLink(String shareUid, String anchorId, String anchorName, String anchorAvatar) {
|
public static String createLiveShareLink(String shareUid, String anchorId, String anchorName, String anchorAvatar) {
|
||||||
return String.format(CommonAppConfig.HOST +
|
return String.format(CommonAppConfig.HOST +"/h5/home/share.html?uid=%s&user_id=%s&isGoogle=%s",
|
||||||
"/index.php?g=Appapi&m=home&a=share&uid=%s&user_id=%s&isGoogle=%s",
|
|
||||||
anchorId,
|
anchorId,
|
||||||
shareUid,
|
shareUid,
|
||||||
CommonAppConfig.IS_GOOGLE_PLAY
|
CommonAppConfig.IS_GOOGLE_PLAY
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String createInviteLink(String shareUid) {
|
public static String createInviteLink(String shareUid) {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
<string name="dialog_share_title">分享</string>
|
<string name="dialog_share_title">分享</string>
|
||||||
<string name="dialog_share_app_internal">站內好友</string>
|
<string name="dialog_share_app_internal">站內好友</string>
|
||||||
<string name="dialog_share_info">快來 PDLIVE觀看%s直播,認識更多有趣的朋友吧!</string>
|
<string name="dialog_share_info">快來 Yola觀看%s直播,認識更多有趣的朋友吧!</string>
|
||||||
<string name="dialog_share_app_facebook">Facebook</string>
|
<string name="dialog_share_app_facebook">Facebook</string>
|
||||||
<string name="dialog_share_app_line">Line</string>
|
<string name="dialog_share_app_line">Line</string>
|
||||||
<string name="dialog_share_app_twitter">Twitter</string>
|
<string name="dialog_share_app_twitter">Twitter</string>
|
||||||
@@ -14,6 +14,6 @@
|
|||||||
<string name="dialog_share_app_instagram">Instagram</string>
|
<string name="dialog_share_app_instagram">Instagram</string>
|
||||||
|
|
||||||
<string name="dialog_invite_title">邀請好友</string>
|
<string name="dialog_invite_title">邀請好友</string>
|
||||||
<string name="dialog_invite_info">快來 PDLIVE觀看直播,認識更多有趣的朋友吧!</string>
|
<string name="dialog_invite_info">快來 Yola觀看直播,認識更多有趣的朋友吧!</string>
|
||||||
<string name="dialog_share_copy">複製</string>
|
<string name="dialog_share_copy">複製</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
<string name="dialog_share_title">Share</string>
|
<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_share_info">Come and watch %s live on Yola and meet more interesting people!</string>
|
||||||
<string name="dialog_invite_title">Invite Friends</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_invite_info">Come to Yola to discover more and better live streams.</string>
|
||||||
<string name="dialog_share_copy">Copy</string>
|
<string name="dialog_share_copy">Copy</string>
|
||||||
<string name="dialog_share_app_internal">Site friends</string>
|
<string name="dialog_share_app_internal">Site friends</string>
|
||||||
<string name="dialog_share_internal_title">Share To</string>
|
<string name="dialog_share_internal_title">Share To</string>
|
||||||
|
|||||||
@@ -54,6 +54,7 @@
|
|||||||
|
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
||||||
|
<uses-permission android:name="android.permission.READ_MEDIA_VISUAL_USER_SELECTED" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||||
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
|
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
|
||||||
<uses-permission android:name="android.permission.NETWORK_PROVIDER" />
|
<uses-permission android:name="android.permission.NETWORK_PROVIDER" />
|
||||||
@@ -103,6 +104,7 @@
|
|||||||
|
|
||||||
</queries>
|
</queries>
|
||||||
<application
|
<application
|
||||||
|
android:networkSecurityConfig="@xml/network_security_config"
|
||||||
android:name="com.shayu.phonelive.AppContext"
|
android:name="com.shayu.phonelive.AppContext"
|
||||||
android:allowBackup="true"
|
android:allowBackup="true"
|
||||||
android:icon="@mipmap/ic_launcher"
|
android:icon="@mipmap/ic_launcher"
|
||||||
@@ -131,6 +133,7 @@
|
|||||||
android:name="com.shayu.phonelive.activity.LauncherActivity"
|
android:name="com.shayu.phonelive.activity.LauncherActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:screenOrientation="portrait"
|
android:screenOrientation="portrait"
|
||||||
|
android:theme="@style/AppLunTheme.Theme"
|
||||||
tools:ignore="LockedOrientationActivity">
|
tools:ignore="LockedOrientationActivity">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN" />
|
<action android:name="android.intent.action.MAIN" />
|
||||||
|
|||||||
@@ -131,7 +131,7 @@ public class LauncherActivity extends AppCompatActivity implements View.OnClickL
|
|||||||
mBtnSkipVideo = findViewById(R.id.btn_skip_video);
|
mBtnSkipVideo = findViewById(R.id.btn_skip_video);
|
||||||
mBtnSkipImage.setOnClickListener(this);
|
mBtnSkipImage.setOnClickListener(this);
|
||||||
mBtnSkipVideo.setOnClickListener(this);
|
mBtnSkipVideo.setOnClickListener(this);
|
||||||
ImgLoader.display(mContext, R.mipmap.screen, mCover);
|
// ImgLoader.display(mContext, R.mipmap.screen, mCover);
|
||||||
mHandler = new Handler() {
|
mHandler = new Handler() {
|
||||||
@Override
|
@Override
|
||||||
public void handleMessage(Message msg) {
|
public void handleMessage(Message msg) {
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
android:id="@+id/container"
|
android:id="@+id/container"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:background="#000" />
|
/>
|
||||||
|
|
||||||
<FrameLayout
|
<FrameLayout
|
||||||
android:id="@+id/btn_skip_img"
|
android:id="@+id/btn_skip_img"
|
||||||
@@ -53,12 +53,32 @@
|
|||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="11sp"
|
android:textSize="11sp"
|
||||||
android:visibility="invisible" />
|
android:visibility="invisible" />
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/cover"
|
android:id="@+id/cover"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:scaleType="centerCrop" />
|
android:scaleType="centerCrop" />
|
||||||
|
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="@drawable/bg_yola_splash_log">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
android:src="@drawable/ic_yola_splash_log"
|
||||||
|
app:layout_constraintWidth_percent="0.34" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 6.3 KiB |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 8.2 KiB After Width: | Height: | Size: 8.3 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 25 KiB |
@@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
<string name="app_name">PandoraLive</string>
|
<string name="app_name">Yola</string>
|
||||||
</resources>
|
</resources>
|
||||||
6
app/src/main/res/xml/network_security_config.xml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<network-security-config>
|
||||||
|
<domain-config cleartextTrafficPermitted="true">
|
||||||
|
<domain includeSubdomains="true">upload-z0.qiniup.com</domain>
|
||||||
|
</domain-config>
|
||||||
|
</network-security-config>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
# The proguard configuration file for the following section is D:\AndroidProject\pandorapanL\app\build\intermediates\default_proguard_files\global\proguard-android.txt-8.3.1
|
# The proguard configuration file for the following section is D:\AndroidProject\pandorapan\app\build\intermediates\default_proguard_files\global\proguard-android.txt-8.3.1
|
||||||
# This is a configuration file for ProGuard.
|
# This is a configuration file for ProGuard.
|
||||||
# http://proguard.sourceforge.net/index.html#manual/usage.html
|
# http://proguard.sourceforge.net/index.html#manual/usage.html
|
||||||
#
|
#
|
||||||
@@ -95,8 +95,8 @@
|
|||||||
# These classes are duplicated between android.jar and core-lambda-stubs.jar.
|
# These classes are duplicated between android.jar and core-lambda-stubs.jar.
|
||||||
-dontnote java.lang.invoke.**
|
-dontnote java.lang.invoke.**
|
||||||
|
|
||||||
# End of content from D:\AndroidProject\pandorapanL\app\build\intermediates\default_proguard_files\global\proguard-android.txt-8.3.1
|
# End of content from D:\AndroidProject\pandorapan\app\build\intermediates\default_proguard_files\global\proguard-android.txt-8.3.1
|
||||||
# The proguard configuration file for the following section is D:\AndroidProject\pandorapanL\app\proguard-rules.pro
|
# The proguard configuration file for the following section is D:\AndroidProject\pandorapan\app\proguard-rules.pro
|
||||||
# Add project specific ProGuard rules here.
|
# Add project specific ProGuard rules here.
|
||||||
# By default, the flags in this file are appended to flags specified
|
# By default, the flags in this file are appended to flags specified
|
||||||
# in /Users/macpro/Library/Android/sdk/tools/proguard/proguard-android.txt
|
# in /Users/macpro/Library/Android/sdk/tools/proguard/proguard-android.txt
|
||||||
@@ -419,8 +419,8 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
-keep class com.qiniu.**{public <init>();}
|
-keep class com.qiniu.**{public <init>();}
|
||||||
-ignorewarnings
|
-ignorewarnings
|
||||||
|
|
||||||
# End of content from D:\AndroidProject\pandorapanL\app\proguard-rules.pro
|
# End of content from D:\AndroidProject\pandorapan\app\proguard-rules.pro
|
||||||
# The proguard configuration file for the following section is D:\AndroidProject\pandorapanL\app\build\intermediates\aapt_proguard_file\google_testRelease\processGoogle_testReleaseResources\aapt_rules.txt
|
# The proguard configuration file for the following section is D:\AndroidProject\pandorapan\app\build\intermediates\aapt_proguard_file\google_onlineRelease\processGoogle_onlineReleaseResources\aapt_rules.txt
|
||||||
-keep class androidx.core.app.CoreComponentFactory { <init>(); }
|
-keep class androidx.core.app.CoreComponentFactory { <init>(); }
|
||||||
-keep class androidx.core.content.FileProvider { <init>(); }
|
-keep class androidx.core.content.FileProvider { <init>(); }
|
||||||
-keep class androidx.core.content.FileProvider4Utils { <init>(); }
|
-keep class androidx.core.content.FileProvider4Utils { <init>(); }
|
||||||
@@ -888,8 +888,6 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
|
|
||||||
-keep class com.yunbao.common.custom.CommonRefreshView { <init>(android.content.Context, android.util.AttributeSet); }
|
-keep class com.yunbao.common.custom.CommonRefreshView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||||
|
|
||||||
-keep class com.yunbao.common.custom.CommonRefreshWaterfallView { <init>(android.content.Context, android.util.AttributeSet); }
|
|
||||||
|
|
||||||
-keep class com.yunbao.common.custom.DrawableCheckBox { <init>(android.content.Context, android.util.AttributeSet); }
|
-keep class com.yunbao.common.custom.DrawableCheckBox { <init>(android.content.Context, android.util.AttributeSet); }
|
||||||
|
|
||||||
-keep class com.yunbao.common.custom.DrawableRadioButton { <init>(android.content.Context, android.util.AttributeSet); }
|
-keep class com.yunbao.common.custom.DrawableRadioButton { <init>(android.content.Context, android.util.AttributeSet); }
|
||||||
@@ -1093,10 +1091,10 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
-keepclassmembers class * { *** videoEditClick(android.view.View); }
|
-keepclassmembers class * { *** videoEditClick(android.view.View); }
|
||||||
|
|
||||||
|
|
||||||
# End of content from D:\AndroidProject\pandorapanL\app\build\intermediates\aapt_proguard_file\google_testRelease\processGoogle_testReleaseResources\aapt_rules.txt
|
# End of content from D:\AndroidProject\pandorapan\app\build\intermediates\aapt_proguard_file\google_onlineRelease\processGoogle_onlineReleaseResources\aapt_rules.txt
|
||||||
# The proguard configuration file for the following section is D:\AndroidProject\pandorapanL\lib_faceunity\build\intermediates\consumer_proguard_dir\google_testRelease\exportGoogle_testReleaseConsumerProguardFiles\lib0\proguard.txt
|
# The proguard configuration file for the following section is D:\AndroidProject\pandorapan\lib_faceunity\build\intermediates\consumer_proguard_dir\google_onlineRelease\exportGoogle_onlineReleaseConsumerProguardFiles\lib0\proguard.txt
|
||||||
|
|
||||||
# End of content from D:\AndroidProject\pandorapanL\lib_faceunity\build\intermediates\consumer_proguard_dir\google_testRelease\exportGoogle_testReleaseConsumerProguardFiles\lib0\proguard.txt
|
# End of content from D:\AndroidProject\pandorapan\lib_faceunity\build\intermediates\consumer_proguard_dir\google_onlineRelease\exportGoogle_onlineReleaseConsumerProguardFiles\lib0\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\8d3e3177c15403546de73d87508067d6\transformed\jetified-XPopup-2.10.0\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\8d3e3177c15403546de73d87508067d6\transformed\jetified-XPopup-2.10.0\proguard.txt
|
||||||
# Generated keep rule for Lifecycle observer adapter.
|
# Generated keep rule for Lifecycle observer adapter.
|
||||||
-if class com.lxj.xpopup.core.BasePopupView {
|
-if class com.lxj.xpopup.core.BasePopupView {
|
||||||
@@ -1156,9 +1154,9 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\a1df9a6aa192455030f7c9970b70e0e9\transformed\material-1.4.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\a1df9a6aa192455030f7c9970b70e0e9\transformed\material-1.4.0\proguard.txt
|
||||||
# The proguard configuration file for the following section is D:\AndroidProject\pandorapanL\lib_google\build\intermediates\consumer_proguard_dir\google_testRelease\exportGoogle_testReleaseConsumerProguardFiles\lib0\proguard.txt
|
# The proguard configuration file for the following section is D:\AndroidProject\pandorapan\lib_google\build\intermediates\consumer_proguard_dir\google_onlineRelease\exportGoogle_onlineReleaseConsumerProguardFiles\lib0\proguard.txt
|
||||||
|
|
||||||
# End of content from D:\AndroidProject\pandorapanL\lib_google\build\intermediates\consumer_proguard_dir\google_testRelease\exportGoogle_testReleaseConsumerProguardFiles\lib0\proguard.txt
|
# End of content from D:\AndroidProject\pandorapan\lib_google\build\intermediates\consumer_proguard_dir\google_onlineRelease\exportGoogle_onlineReleaseConsumerProguardFiles\lib0\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\2929985d9627ba3bb45a0ebd18eaf9d3\transformed\jetified-linesdk-5.0.1\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\2929985d9627ba3bb45a0ebd18eaf9d3\transformed\jetified-linesdk-5.0.1\proguard.txt
|
||||||
-keepattributes *Annotation*
|
-keepattributes *Annotation*
|
||||||
|
|
||||||
@@ -1377,7 +1375,7 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
-keep class com.davemorrissey.labs.subscaleview.** { *; }
|
-keep class com.davemorrissey.labs.subscaleview.** { *; }
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\7bbb003dbf2685697cd42cfb46e77b3f\transformed\jetified-subsampling-scale-image-view-androidx-3.10.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\7bbb003dbf2685697cd42cfb46e77b3f\transformed\jetified-subsampling-scale-image-view-androidx-3.10.0\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\0fdcb88552259c6c22dbd3bb46b31518\transformed\appcompat-1.3.1\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\ee31731bfec871ceb9cdfd12b05817bc\transformed\appcompat-1.6.1\proguard.txt
|
||||||
# Copyright (C) 2018 The Android Open Source Project
|
# Copyright (C) 2018 The Android Open Source Project
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
@@ -1401,7 +1399,7 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
<methods>;
|
<methods>;
|
||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\0fdcb88552259c6c22dbd3bb46b31518\transformed\appcompat-1.3.1\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\ee31731bfec871ceb9cdfd12b05817bc\transformed\appcompat-1.6.1\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\b8e86bdadf487d72a43cd430b3f9db16\transformed\jetified-tweet-ui-3.1.1\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\b8e86bdadf487d72a43cd430b3f9db16\transformed\jetified-tweet-ui-3.1.1\proguard.txt
|
||||||
#Picasso Proguard Config https://github.com/square/picasso
|
#Picasso Proguard Config https://github.com/square/picasso
|
||||||
-dontwarn com.squareup.okhttp.**
|
-dontwarn com.squareup.okhttp.**
|
||||||
@@ -1509,9 +1507,9 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
public boolean isLayoutSuppressed();
|
public boolean isLayoutSuppressed();
|
||||||
}
|
}
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\e9de7db2640f13ae2ab2a585dfd19337\transformed\recyclerview-1.2.1\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\e9de7db2640f13ae2ab2a585dfd19337\transformed\recyclerview-1.2.1\proguard.txt
|
||||||
# The proguard configuration file for the following section is D:\AndroidProject\pandorapanL\TabLayout\build\intermediates\consumer_proguard_dir\release\exportReleaseConsumerProguardFiles\lib0\proguard.txt
|
# The proguard configuration file for the following section is D:\AndroidProject\pandorapan\TabLayout\build\intermediates\consumer_proguard_dir\release\exportReleaseConsumerProguardFiles\lib0\proguard.txt
|
||||||
|
|
||||||
# End of content from D:\AndroidProject\pandorapanL\TabLayout\build\intermediates\consumer_proguard_dir\release\exportReleaseConsumerProguardFiles\lib0\proguard.txt
|
# End of content from D:\AndroidProject\pandorapan\TabLayout\build\intermediates\consumer_proguard_dir\release\exportReleaseConsumerProguardFiles\lib0\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\bb5ec4ef561b90312eb1ca52da1f144d\transformed\jetified-facebook-applinks-15.2.0\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\bb5ec4ef561b90312eb1ca52da1f144d\transformed\jetified-facebook-applinks-15.2.0\proguard.txt
|
||||||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
@@ -1638,6 +1636,10 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\3591196def6c89c6af74e7d30dfb6618\transformed\jetified-runtime-1.0.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\3591196def6c89c6af74e7d30dfb6618\transformed\jetified-runtime-1.0.0\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\b826addf48d922103bc9588ad90ee0e6\transformed\jetified-Common-4.1.11\proguard.txt
|
||||||
|
# 本库模块专用的混淆规则
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\b826addf48d922103bc9588ad90ee0e6\transformed\jetified-Common-4.1.11\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\7931210372c8927a076053831aae79b7\transformed\jetified-glide-transformations-3.1.1\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\7931210372c8927a076053831aae79b7\transformed\jetified-glide-transformations-3.1.1\proguard.txt
|
||||||
-dontwarn jp.co.cyberagent.android.gpuimage.**
|
-dontwarn jp.co.cyberagent.android.gpuimage.**
|
||||||
|
|
||||||
@@ -1881,10 +1883,135 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\8daf89c63ab14ea80f11dcfb9154f87e\transformed\fragment-1.5.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\8daf89c63ab14ea80f11dcfb9154f87e\transformed\fragment-1.5.0\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\b826addf48d922103bc9588ad90ee0e6\transformed\jetified-Common-4.1.11\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\d5594233d50b1d727f4630790ca89a13\transformed\jetified-core-8.7.0\proguard.txt
|
||||||
# 本库模块专用的混淆规则
|
# Add project specific ProGuard rules here.
|
||||||
|
# You can control the set of applied configuration files using the
|
||||||
|
# proguardFiles setting in build.gradle.
|
||||||
|
#
|
||||||
|
# For more details, see
|
||||||
|
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\b826addf48d922103bc9588ad90ee0e6\transformed\jetified-Common-4.1.11\proguard.txt
|
# If your project uses WebView with JS, uncomment the following
|
||||||
|
# and specify the fully qualified class name to the JavaScript interface
|
||||||
|
# class:
|
||||||
|
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||||
|
# public *;
|
||||||
|
#}
|
||||||
|
|
||||||
|
# Uncomment this to preserve the line number information for
|
||||||
|
# debugging stack traces.
|
||||||
|
#-keepattributes SourceFile,LineNumberTable
|
||||||
|
|
||||||
|
# If you keep the line number information, uncomment this to
|
||||||
|
# hide the original source file name.
|
||||||
|
#-renamesourcefileattribute SourceFile
|
||||||
|
|
||||||
|
#################### FaceUnity #######################
|
||||||
|
-keep class com.faceunity.wrapper.faceunity {*;}
|
||||||
|
-keep class com.faceunity.wrapper.faceunity$RotatedImage {*;}
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\d5594233d50b1d727f4630790ca89a13\transformed\jetified-core-8.7.0\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\526e7910eaa433763f36b642f34c1fee\transformed\jetified-exoplayer-core-2.18.2\proguard.txt
|
||||||
|
# Proguard rules specific to the core module.
|
||||||
|
|
||||||
|
# Constructors accessed via reflection in DefaultRenderersFactory
|
||||||
|
-dontnote com.google.android.exoplayer2.ext.vp9.LibvpxVideoRenderer
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.ext.vp9.LibvpxVideoRenderer {
|
||||||
|
<init>(long, android.os.Handler, com.google.android.exoplayer2.video.VideoRendererEventListener, int);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.ext.av1.Libgav1VideoRenderer
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.ext.av1.Libgav1VideoRenderer {
|
||||||
|
<init>(long, android.os.Handler, com.google.android.exoplayer2.video.VideoRendererEventListener, int);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.ext.opus.LibopusAudioRenderer
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.ext.opus.LibopusAudioRenderer {
|
||||||
|
<init>(android.os.Handler, com.google.android.exoplayer2.audio.AudioRendererEventListener, com.google.android.exoplayer2.audio.AudioSink);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.ext.flac.LibflacAudioRenderer
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.ext.flac.LibflacAudioRenderer {
|
||||||
|
<init>(android.os.Handler, com.google.android.exoplayer2.audio.AudioRendererEventListener, com.google.android.exoplayer2.audio.AudioSink);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.ext.ffmpeg.FfmpegAudioRenderer
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.ext.ffmpeg.FfmpegAudioRenderer {
|
||||||
|
<init>(android.os.Handler, com.google.android.exoplayer2.audio.AudioRendererEventListener, com.google.android.exoplayer2.audio.AudioSink);
|
||||||
|
}
|
||||||
|
|
||||||
|
# Constructors accessed via reflection in DefaultDownloaderFactory
|
||||||
|
-dontnote com.google.android.exoplayer2.source.dash.offline.DashDownloader
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.source.dash.offline.DashDownloader {
|
||||||
|
<init>(com.google.android.exoplayer2.MediaItem, com.google.android.exoplayer2.upstream.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.source.hls.offline.HlsDownloader
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.source.hls.offline.HlsDownloader {
|
||||||
|
<init>(com.google.android.exoplayer2.MediaItem, com.google.android.exoplayer2.upstream.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.source.smoothstreaming.offline.SsDownloader
|
||||||
|
-keepclassmembers class com.google.android.exoplayer2.source.smoothstreaming.offline.SsDownloader {
|
||||||
|
<init>(com.google.android.exoplayer2.MediaItem, com.google.android.exoplayer2.upstream.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
|
||||||
|
}
|
||||||
|
|
||||||
|
# Constructors accessed via reflection in DefaultMediaSourceFactory
|
||||||
|
-dontnote com.google.android.exoplayer2.source.dash.DashMediaSource$Factory
|
||||||
|
-keepclasseswithmembers class com.google.android.exoplayer2.source.dash.DashMediaSource$Factory {
|
||||||
|
<init>(com.google.android.exoplayer2.upstream.DataSource$Factory);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.source.hls.HlsMediaSource$Factory
|
||||||
|
-keepclasseswithmembers class com.google.android.exoplayer2.source.hls.HlsMediaSource$Factory {
|
||||||
|
<init>(com.google.android.exoplayer2.upstream.DataSource$Factory);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.source.smoothstreaming.SsMediaSource$Factory
|
||||||
|
-keepclasseswithmembers class com.google.android.exoplayer2.source.smoothstreaming.SsMediaSource$Factory {
|
||||||
|
<init>(com.google.android.exoplayer2.upstream.DataSource$Factory);
|
||||||
|
}
|
||||||
|
-dontnote com.google.android.exoplayer2.source.rtsp.RtspMediaSource$Factory
|
||||||
|
-keepclasseswithmembers class com.google.android.exoplayer2.source.rtsp.RtspMediaSource$Factory {
|
||||||
|
<init>();
|
||||||
|
}
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\526e7910eaa433763f36b642f34c1fee\transformed\jetified-exoplayer-core-2.18.2\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\093cf4894c646f12adcf0608a8578513\transformed\vectordrawable-animated-1.1.0\proguard.txt
|
||||||
|
# Copyright (C) 2016 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
# keep setters in VectorDrawables so that animations can still work.
|
||||||
|
-keepclassmembers class androidx.vectordrawable.graphics.drawable.VectorDrawableCompat$* {
|
||||||
|
void set*(***);
|
||||||
|
*** get*();
|
||||||
|
}
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\093cf4894c646f12adcf0608a8578513\transformed\vectordrawable-animated-1.1.0\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\2d0bd167b8e4c9403f38fc379546639f\transformed\transition-1.4.1\proguard.txt
|
||||||
|
# Copyright (C) 2017 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
# Keep a field in transition that is used to keep a reference to weakly-referenced object
|
||||||
|
-keepclassmembers class androidx.transition.ChangeBounds$* extends android.animation.AnimatorListenerAdapter {
|
||||||
|
androidx.transition.ChangeBounds$ViewBounds mViewBounds;
|
||||||
|
}
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\2d0bd167b8e4c9403f38fc379546639f\transformed\transition-1.4.1\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\cee8df21fdda9dd7e6106d8566e7a8de\transformed\jetified-facebook-core-15.2.0\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\cee8df21fdda9dd7e6106d8566e7a8de\transformed\jetified-facebook-core-15.2.0\proguard.txt
|
||||||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
@@ -1944,7 +2071,92 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\cee8df21fdda9dd7e6106d8566e7a8de\transformed\jetified-facebook-core-15.2.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\cee8df21fdda9dd7e6106d8566e7a8de\transformed\jetified-facebook-core-15.2.0\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\570c85082e748d036cbe1ff0c9d5e429\transformed\lifecycle-viewmodel-2.5.0\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\3db9f5e64eaa2a61a80545d78dbfe4ed\transformed\jetified-facebook-bolts-15.2.0\proguard.txt
|
||||||
|
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
|
# All rights reserved.
|
||||||
|
#
|
||||||
|
# This source code is licensed under the license found in the
|
||||||
|
# LICENSE file in the root directory of this source tree.
|
||||||
|
|
||||||
|
# To enable ProGuard in your project, edit project.properties
|
||||||
|
# to define the proguard.config property as described in that file.
|
||||||
|
#
|
||||||
|
# Add project specific ProGuard rules here.
|
||||||
|
# By default, the flags in this file are appended to flags specified
|
||||||
|
# in ${sdk.dir}/tools/proguard/proguard-android.txt
|
||||||
|
# You can edit the include path and order by changing the ProGuard
|
||||||
|
# include property in project.properties.
|
||||||
|
#
|
||||||
|
# For more details, see
|
||||||
|
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||||
|
|
||||||
|
# Add any project specific keep options here:
|
||||||
|
|
||||||
|
# If your project uses WebView with JS, uncomment the following
|
||||||
|
# and specify the fully qualified class name to the JavaScript interface
|
||||||
|
# class:
|
||||||
|
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||||
|
# public *;
|
||||||
|
#}
|
||||||
|
|
||||||
|
-keepclassmembers class * implements java.io.Serializable {
|
||||||
|
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
||||||
|
private void writeObject(java.io.ObjectOutputStream);
|
||||||
|
private void readObject(java.io.ObjectInputStream);
|
||||||
|
java.lang.Object writeReplace();
|
||||||
|
java.lang.Object readResolve();
|
||||||
|
}
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\3db9f5e64eaa2a61a80545d78dbfe4ed\transformed\jetified-facebook-bolts-15.2.0\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\13795feba8dd8fc2e0266a202e40730e\transformed\media-1.6.0\proguard.txt
|
||||||
|
# Copyright (C) 2017 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
# Prevent Parcelable objects from being removed or renamed.
|
||||||
|
-keep class android.support.v4.media.** implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator *;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Prevent Parcelable objects from being removed or renamed.
|
||||||
|
-keep class androidx.media.** implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator *;
|
||||||
|
}
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\13795feba8dd8fc2e0266a202e40730e\transformed\media-1.6.0\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\d8c3626714f2e560684e4c222f456210\transformed\core-1.13.0\proguard.txt
|
||||||
|
# Never inline methods, but allow shrinking and obfuscation.
|
||||||
|
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.ViewCompat$Api* {
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.WindowInsetsCompat$*Impl* {
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.app.NotificationCompat$*$Api*Impl {
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.os.UserHandleCompat$Api*Impl {
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.widget.EdgeEffectCompat$Api*Impl {
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\d8c3626714f2e560684e4c222f456210\transformed\core-1.13.0\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\6ece486db0154bb73a7bdce438b43da9\transformed\jetified-lifecycle-process-2.6.2\proguard.txt
|
||||||
|
# this rule is need to work properly when app is compiled with api 28, see b/142778206
|
||||||
|
-keepclassmembers class * extends androidx.lifecycle.EmptyActivityLifecycleCallbacks { *; }
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\6ece486db0154bb73a7bdce438b43da9\transformed\jetified-lifecycle-process-2.6.2\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\8e869a6a6c2530a8e446d599f2764da5\transformed\lifecycle-viewmodel-2.6.2\proguard.txt
|
||||||
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
|
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
|
||||||
<init>();
|
<init>();
|
||||||
}
|
}
|
||||||
@@ -1953,8 +2165,33 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
<init>(android.app.Application);
|
<init>(android.app.Application);
|
||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\570c85082e748d036cbe1ff0c9d5e429\transformed\lifecycle-viewmodel-2.5.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\8e869a6a6c2530a8e446d599f2764da5\transformed\lifecycle-viewmodel-2.6.2\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\badee3548ba9b653d6517fdeb8829767\transformed\jetified-lifecycle-viewmodel-savedstate-2.5.0\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\ce0e6750868f3f66322f188d971f1ef3\transformed\lifecycle-runtime-2.6.2\proguard.txt
|
||||||
|
-keepattributes AnnotationDefault,
|
||||||
|
RuntimeVisibleAnnotations,
|
||||||
|
RuntimeVisibleParameterAnnotations,
|
||||||
|
RuntimeVisibleTypeAnnotations
|
||||||
|
|
||||||
|
-keepclassmembers enum androidx.lifecycle.Lifecycle$Event {
|
||||||
|
<fields>;
|
||||||
|
}
|
||||||
|
|
||||||
|
-keep !interface * implements androidx.lifecycle.LifecycleObserver {
|
||||||
|
}
|
||||||
|
|
||||||
|
-keep class * implements androidx.lifecycle.GeneratedAdapter {
|
||||||
|
<init>(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
-keepclassmembers class ** {
|
||||||
|
@androidx.lifecycle.OnLifecycleEvent *;
|
||||||
|
}
|
||||||
|
|
||||||
|
# this rule is need to work properly when app is compiled with api 28, see b/142778206
|
||||||
|
# Also this rule prevents registerIn from being inlined.
|
||||||
|
-keepclassmembers class androidx.lifecycle.ReportFragment$LifecycleCallbacks { *; }
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\ce0e6750868f3f66322f188d971f1ef3\transformed\lifecycle-runtime-2.6.2\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\bd00b9047184418faa7306a460ee0581\transformed\jetified-lifecycle-viewmodel-savedstate-2.6.2\proguard.txt
|
||||||
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
|
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
|
||||||
<init>(androidx.lifecycle.SavedStateHandle);
|
<init>(androidx.lifecycle.SavedStateHandle);
|
||||||
}
|
}
|
||||||
@@ -1963,8 +2200,28 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
<init>(android.app.Application,androidx.lifecycle.SavedStateHandle);
|
<init>(android.app.Application,androidx.lifecycle.SavedStateHandle);
|
||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\badee3548ba9b653d6517fdeb8829767\transformed\jetified-lifecycle-viewmodel-savedstate-2.5.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\bd00b9047184418faa7306a460ee0581\transformed\jetified-lifecycle-viewmodel-savedstate-2.6.2\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\0e43e19966d3ba7fcce157667e087c7e\transformed\rules\lib\META-INF\com.android.tools\r8\coroutines.pro
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\3ada8249efd76aa45d398a9ccd7df9fd\transformed\jetified-savedstate-1.2.1\proguard.txt
|
||||||
|
# Copyright (C) 2019 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
-keepclassmembers,allowobfuscation class * implements androidx.savedstate.SavedStateRegistry$AutoRecreated {
|
||||||
|
<init>();
|
||||||
|
}
|
||||||
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\3ada8249efd76aa45d398a9ccd7df9fd\transformed\jetified-savedstate-1.2.1\proguard.txt
|
||||||
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\31bdcbe39d5085657b9e9934bb01ff50\transformed\rules\lib\META-INF\com.android.tools\r8\coroutines.pro
|
||||||
# When editing this file, update the following files as well:
|
# When editing this file, update the following files as well:
|
||||||
# - META-INF/proguard/coroutines.pro
|
# - META-INF/proguard/coroutines.pro
|
||||||
# - META-INF/com.android.tools/proguard/coroutines.pro
|
# - META-INF/com.android.tools/proguard/coroutines.pro
|
||||||
@@ -1992,8 +2249,8 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
|
|
||||||
# An annotation used for build tooling, won't be directly accessed.
|
# An annotation used for build tooling, won't be directly accessed.
|
||||||
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
|
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\0e43e19966d3ba7fcce157667e087c7e\transformed\rules\lib\META-INF\com.android.tools\r8\coroutines.pro
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\31bdcbe39d5085657b9e9934bb01ff50\transformed\rules\lib\META-INF\com.android.tools\r8\coroutines.pro
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\039aa78b17fc1889d62d4e8e7d7c1859\transformed\rules\lib\META-INF\com.android.tools\r8-from-1.6.0\coroutines.pro
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\8a5acccede271ffbd4cb8a39c6aa6b22\transformed\rules\lib\META-INF\com.android.tools\r8-from-1.6.0\coroutines.pro
|
||||||
# Allow R8 to optimize away the FastServiceLoader.
|
# Allow R8 to optimize away the FastServiceLoader.
|
||||||
# Together with ServiceLoader optimization in R8
|
# Together with ServiceLoader optimization in R8
|
||||||
# this results in direct instantiation when loading Dispatchers.Main
|
# this results in direct instantiation when loading Dispatchers.Main
|
||||||
@@ -2005,8 +2262,6 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
boolean ANDROID_DETECTED return true;
|
boolean ANDROID_DETECTED return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
-keep class kotlinx.coroutines.android.AndroidDispatcherFactory {*;}
|
|
||||||
|
|
||||||
# Disable support for "Missing Main Dispatcher", since we always have Android main dispatcher
|
# Disable support for "Missing Main Dispatcher", since we always have Android main dispatcher
|
||||||
-assumenosideeffects class kotlinx.coroutines.internal.MainDispatchersKt {
|
-assumenosideeffects class kotlinx.coroutines.internal.MainDispatchersKt {
|
||||||
boolean SUPPORT_MISSING return false;
|
boolean SUPPORT_MISSING return false;
|
||||||
@@ -2018,7 +2273,8 @@ rx.internal.util.atomic.LinkedQueueNode* consumerNode;
|
|||||||
boolean getDEBUG() return false;
|
boolean getDEBUG() return false;
|
||||||
boolean getRECOVER_STACK_TRACES() return false;
|
boolean getRECOVER_STACK_TRACES() return false;
|
||||||
}
|
}
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\039aa78b17fc1889d62d4e8e7d7c1859\transformed\rules\lib\META-INF\com.android.tools\r8-from-1.6.0\coroutines.pro
|
|
||||||
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\8a5acccede271ffbd4cb8a39c6aa6b22\transformed\rules\lib\META-INF\com.android.tools\r8-from-1.6.0\coroutines.pro
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\33f970d366250728877e2f4671336331\transformed\jetified-twitter-core-3.1.1\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\33f970d366250728877e2f4671336331\transformed\jetified-twitter-core-3.1.1\proguard.txt
|
||||||
#GSON
|
#GSON
|
||||||
# Retain Annotations for model objects
|
# Retain Annotations for model objects
|
||||||
@@ -2868,261 +3124,21 @@ native <methods>;
|
|||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\9fef6e1dea59ce01cbe6739f12545786\transformed\jetified-SudASR-1.4.3.1201\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\9fef6e1dea59ce01cbe6739f12545786\transformed\jetified-SudASR-1.4.3.1201\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\d5594233d50b1d727f4630790ca89a13\transformed\jetified-core-8.7.0\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\04cfd08a3f97a34725fadda3af782615\transformed\jetified-startup-runtime-1.1.1\proguard.txt
|
||||||
# Add project specific ProGuard rules here.
|
# It's important that we preserve initializer names, given they are used in the AndroidManifest.xml.
|
||||||
# You can control the set of applied configuration files using the
|
-keepnames class * extends androidx.startup.Initializer
|
||||||
# proguardFiles setting in build.gradle.
|
|
||||||
#
|
|
||||||
# For more details, see
|
|
||||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
|
||||||
|
|
||||||
# If your project uses WebView with JS, uncomment the following
|
# These Proguard rules ensures that ComponentInitializers are are neither shrunk nor obfuscated,
|
||||||
# and specify the fully qualified class name to the JavaScript interface
|
# and are a part of the primary dex file. This is because they are discovered and instantiated
|
||||||
# class:
|
# during application startup.
|
||||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
-keep class * extends androidx.startup.Initializer {
|
||||||
# public *;
|
# Keep the public no-argument constructor while allowing other methods to be optimized.
|
||||||
#}
|
|
||||||
|
|
||||||
# Uncomment this to preserve the line number information for
|
|
||||||
# debugging stack traces.
|
|
||||||
#-keepattributes SourceFile,LineNumberTable
|
|
||||||
|
|
||||||
# If you keep the line number information, uncomment this to
|
|
||||||
# hide the original source file name.
|
|
||||||
#-renamesourcefileattribute SourceFile
|
|
||||||
|
|
||||||
#################### FaceUnity #######################
|
|
||||||
-keep class com.faceunity.wrapper.faceunity {*;}
|
|
||||||
-keep class com.faceunity.wrapper.faceunity$RotatedImage {*;}
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\d5594233d50b1d727f4630790ca89a13\transformed\jetified-core-8.7.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\526e7910eaa433763f36b642f34c1fee\transformed\jetified-exoplayer-core-2.18.2\proguard.txt
|
|
||||||
# Proguard rules specific to the core module.
|
|
||||||
|
|
||||||
# Constructors accessed via reflection in DefaultRenderersFactory
|
|
||||||
-dontnote com.google.android.exoplayer2.ext.vp9.LibvpxVideoRenderer
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.ext.vp9.LibvpxVideoRenderer {
|
|
||||||
<init>(long, android.os.Handler, com.google.android.exoplayer2.video.VideoRendererEventListener, int);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.ext.av1.Libgav1VideoRenderer
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.ext.av1.Libgav1VideoRenderer {
|
|
||||||
<init>(long, android.os.Handler, com.google.android.exoplayer2.video.VideoRendererEventListener, int);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.ext.opus.LibopusAudioRenderer
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.ext.opus.LibopusAudioRenderer {
|
|
||||||
<init>(android.os.Handler, com.google.android.exoplayer2.audio.AudioRendererEventListener, com.google.android.exoplayer2.audio.AudioSink);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.ext.flac.LibflacAudioRenderer
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.ext.flac.LibflacAudioRenderer {
|
|
||||||
<init>(android.os.Handler, com.google.android.exoplayer2.audio.AudioRendererEventListener, com.google.android.exoplayer2.audio.AudioSink);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.ext.ffmpeg.FfmpegAudioRenderer
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.ext.ffmpeg.FfmpegAudioRenderer {
|
|
||||||
<init>(android.os.Handler, com.google.android.exoplayer2.audio.AudioRendererEventListener, com.google.android.exoplayer2.audio.AudioSink);
|
|
||||||
}
|
|
||||||
|
|
||||||
# Constructors accessed via reflection in DefaultDownloaderFactory
|
|
||||||
-dontnote com.google.android.exoplayer2.source.dash.offline.DashDownloader
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.source.dash.offline.DashDownloader {
|
|
||||||
<init>(com.google.android.exoplayer2.MediaItem, com.google.android.exoplayer2.upstream.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.source.hls.offline.HlsDownloader
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.source.hls.offline.HlsDownloader {
|
|
||||||
<init>(com.google.android.exoplayer2.MediaItem, com.google.android.exoplayer2.upstream.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.source.smoothstreaming.offline.SsDownloader
|
|
||||||
-keepclassmembers class com.google.android.exoplayer2.source.smoothstreaming.offline.SsDownloader {
|
|
||||||
<init>(com.google.android.exoplayer2.MediaItem, com.google.android.exoplayer2.upstream.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
|
|
||||||
}
|
|
||||||
|
|
||||||
# Constructors accessed via reflection in DefaultMediaSourceFactory
|
|
||||||
-dontnote com.google.android.exoplayer2.source.dash.DashMediaSource$Factory
|
|
||||||
-keepclasseswithmembers class com.google.android.exoplayer2.source.dash.DashMediaSource$Factory {
|
|
||||||
<init>(com.google.android.exoplayer2.upstream.DataSource$Factory);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.source.hls.HlsMediaSource$Factory
|
|
||||||
-keepclasseswithmembers class com.google.android.exoplayer2.source.hls.HlsMediaSource$Factory {
|
|
||||||
<init>(com.google.android.exoplayer2.upstream.DataSource$Factory);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.source.smoothstreaming.SsMediaSource$Factory
|
|
||||||
-keepclasseswithmembers class com.google.android.exoplayer2.source.smoothstreaming.SsMediaSource$Factory {
|
|
||||||
<init>(com.google.android.exoplayer2.upstream.DataSource$Factory);
|
|
||||||
}
|
|
||||||
-dontnote com.google.android.exoplayer2.source.rtsp.RtspMediaSource$Factory
|
|
||||||
-keepclasseswithmembers class com.google.android.exoplayer2.source.rtsp.RtspMediaSource$Factory {
|
|
||||||
<init>();
|
<init>();
|
||||||
}
|
}
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\526e7910eaa433763f36b642f34c1fee\transformed\jetified-exoplayer-core-2.18.2\proguard.txt
|
-assumenosideeffects class androidx.startup.StartupLogger { public static <methods>; }
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\2d16d937f787a1471d1fcefef8917ded\transformed\jetified-savedstate-1.2.0\proguard.txt
|
|
||||||
# Copyright (C) 2019 The Android Open Source Project
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
-keepclassmembers,allowobfuscation class * implements androidx.savedstate.SavedStateRegistry$AutoRecreated {
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\04cfd08a3f97a34725fadda3af782615\transformed\jetified-startup-runtime-1.1.1\proguard.txt
|
||||||
<init>();
|
|
||||||
}
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\2d16d937f787a1471d1fcefef8917ded\transformed\jetified-savedstate-1.2.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\f55e0290d55f2ec9dfa66384635c714c\transformed\transition-1.2.0\proguard.txt
|
|
||||||
# Copyright (C) 2017 The Android Open Source Project
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
# Keep a field in transition that is used to keep a reference to weakly-referenced object
|
|
||||||
-keepclassmembers class androidx.transition.ChangeBounds$* extends android.animation.AnimatorListenerAdapter {
|
|
||||||
androidx.transition.ChangeBounds$ViewBounds mViewBounds;
|
|
||||||
}
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\f55e0290d55f2ec9dfa66384635c714c\transformed\transition-1.2.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\093cf4894c646f12adcf0608a8578513\transformed\vectordrawable-animated-1.1.0\proguard.txt
|
|
||||||
# Copyright (C) 2016 The Android Open Source Project
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
# keep setters in VectorDrawables so that animations can still work.
|
|
||||||
-keepclassmembers class androidx.vectordrawable.graphics.drawable.VectorDrawableCompat$* {
|
|
||||||
void set*(***);
|
|
||||||
*** get*();
|
|
||||||
}
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\093cf4894c646f12adcf0608a8578513\transformed\vectordrawable-animated-1.1.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\3db9f5e64eaa2a61a80545d78dbfe4ed\transformed\jetified-facebook-bolts-15.2.0\proguard.txt
|
|
||||||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
||||||
# All rights reserved.
|
|
||||||
#
|
|
||||||
# This source code is licensed under the license found in the
|
|
||||||
# LICENSE file in the root directory of this source tree.
|
|
||||||
|
|
||||||
# To enable ProGuard in your project, edit project.properties
|
|
||||||
# to define the proguard.config property as described in that file.
|
|
||||||
#
|
|
||||||
# Add project specific ProGuard rules here.
|
|
||||||
# By default, the flags in this file are appended to flags specified
|
|
||||||
# in ${sdk.dir}/tools/proguard/proguard-android.txt
|
|
||||||
# You can edit the include path and order by changing the ProGuard
|
|
||||||
# include property in project.properties.
|
|
||||||
#
|
|
||||||
# For more details, see
|
|
||||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
|
||||||
|
|
||||||
# Add any project specific keep options here:
|
|
||||||
|
|
||||||
# If your project uses WebView with JS, uncomment the following
|
|
||||||
# and specify the fully qualified class name to the JavaScript interface
|
|
||||||
# class:
|
|
||||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
|
||||||
# public *;
|
|
||||||
#}
|
|
||||||
|
|
||||||
-keepclassmembers class * implements java.io.Serializable {
|
|
||||||
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
|
||||||
private void writeObject(java.io.ObjectOutputStream);
|
|
||||||
private void readObject(java.io.ObjectInputStream);
|
|
||||||
java.lang.Object writeReplace();
|
|
||||||
java.lang.Object readResolve();
|
|
||||||
}
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\3db9f5e64eaa2a61a80545d78dbfe4ed\transformed\jetified-facebook-bolts-15.2.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\13795feba8dd8fc2e0266a202e40730e\transformed\media-1.6.0\proguard.txt
|
|
||||||
# Copyright (C) 2017 The Android Open Source Project
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
# Prevent Parcelable objects from being removed or renamed.
|
|
||||||
-keep class android.support.v4.media.** implements android.os.Parcelable {
|
|
||||||
public static final android.os.Parcelable$Creator *;
|
|
||||||
}
|
|
||||||
|
|
||||||
# Prevent Parcelable objects from being removed or renamed.
|
|
||||||
-keep class androidx.media.** implements android.os.Parcelable {
|
|
||||||
public static final android.os.Parcelable$Creator *;
|
|
||||||
}
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\13795feba8dd8fc2e0266a202e40730e\transformed\media-1.6.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\c6ec9c31a3362678dbcc66f2e9ea7260\transformed\core-1.10.1\proguard.txt
|
|
||||||
# Never inline methods, but allow shrinking and obfuscation.
|
|
||||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.ViewCompat$Api* {
|
|
||||||
<methods>;
|
|
||||||
}
|
|
||||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.WindowInsetsCompat$*Impl* {
|
|
||||||
<methods>;
|
|
||||||
}
|
|
||||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.app.NotificationCompat$*$Api*Impl {
|
|
||||||
<methods>;
|
|
||||||
}
|
|
||||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.os.UserHandleCompat$Api*Impl {
|
|
||||||
<methods>;
|
|
||||||
}
|
|
||||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.widget.EdgeEffectCompat$Api*Impl {
|
|
||||||
<methods>;
|
|
||||||
}
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\c6ec9c31a3362678dbcc66f2e9ea7260\transformed\core-1.10.1\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\2c964f4aa7e08caf6a082be78fa332c4\transformed\lifecycle-runtime-2.5.0\proguard.txt
|
|
||||||
-keepattributes AnnotationDefault,
|
|
||||||
RuntimeVisibleAnnotations,
|
|
||||||
RuntimeVisibleParameterAnnotations,
|
|
||||||
RuntimeVisibleTypeAnnotations
|
|
||||||
|
|
||||||
-keepclassmembers enum androidx.lifecycle.Lifecycle$Event {
|
|
||||||
<fields>;
|
|
||||||
}
|
|
||||||
|
|
||||||
-keep !interface * implements androidx.lifecycle.LifecycleObserver {
|
|
||||||
}
|
|
||||||
|
|
||||||
-keep class * implements androidx.lifecycle.GeneratedAdapter {
|
|
||||||
<init>(...);
|
|
||||||
}
|
|
||||||
|
|
||||||
-keepclassmembers class ** {
|
|
||||||
@androidx.lifecycle.OnLifecycleEvent *;
|
|
||||||
}
|
|
||||||
|
|
||||||
# this rule is need to work properly when app is compiled with api 28, see b/142778206
|
|
||||||
# Also this rule prevents registerIn from being inlined.
|
|
||||||
-keepclassmembers class androidx.lifecycle.ReportFragment$LifecycleCallbacks { *; }
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\2c964f4aa7e08caf6a082be78fa332c4\transformed\lifecycle-runtime-2.5.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\4a3cce138aa30f2fd0df44bf999a62d2\transformed\jetified-exoplayer-datasource-2.18.2\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\4a3cce138aa30f2fd0df44bf999a62d2\transformed\jetified-exoplayer-datasource-2.18.2\proguard.txt
|
||||||
# Proguard rules specific to the DataSource module.
|
# Proguard rules specific to the DataSource module.
|
||||||
|
|
||||||
@@ -3204,17 +3220,6 @@ native <methods>;
|
|||||||
-dontwarn com.google.auto.value.AutoValue$Builder
|
-dontwarn com.google.auto.value.AutoValue$Builder
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\ad1f4a6564b34286db155b9a62614b62\transformed\jetified-transport-api-3.0.0\proguard.txt
|
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\ad1f4a6564b34286db155b9a62614b62\transformed\jetified-transport-api-3.0.0\proguard.txt
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\48f6f745536202396d49c6664e656f00\transformed\jetified-startup-runtime-1.0.0\proguard.txt
|
|
||||||
# This Proguard rule ensures that ComponentInitializers are are neither shrunk nor obfuscated.
|
|
||||||
# This is because they are discovered and instantiated during application initialization.
|
|
||||||
-keep class * extends androidx.startup.Initializer {
|
|
||||||
# Keep the public no-argument constructor while allowing other methods to be optimized.
|
|
||||||
<init>();
|
|
||||||
}
|
|
||||||
|
|
||||||
-assumenosideeffects class androidx.startup.StartupLogger
|
|
||||||
|
|
||||||
# End of content from C:\Users\CVB88\.gradle\caches\transforms-3\48f6f745536202396d49c6664e656f00\transformed\jetified-startup-runtime-1.0.0\proguard.txt
|
|
||||||
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\e1bbd140b52a8e61bea52bf380947059\transformed\jetified-firebase-components-17.0.1\proguard.txt
|
# The proguard configuration file for the following section is C:\Users\CVB88\.gradle\caches\transforms-3\e1bbd140b52a8e61bea52bf380947059\transformed\jetified-firebase-components-17.0.1\proguard.txt
|
||||||
-dontwarn com.google.firebase.components.Component$Instantiation
|
-dontwarn com.google.firebase.components.Component$Instantiation
|
||||||
-dontwarn com.google.firebase.components.Component$ComponentType
|
-dontwarn com.google.firebase.components.Component$ComponentType
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ allprojects {
|
|||||||
ext {
|
ext {
|
||||||
IS_PUBLISH_LOCAL=true
|
IS_PUBLISH_LOCAL=true
|
||||||
LIB_VERSION="1.0.6"
|
LIB_VERSION="1.0.6"
|
||||||
AGORA_RTC_SDK= 'io.agora.rtc:agora-special-full:4.2.6.14'
|
AGORA_RTC_SDK= 'io.agora.rtc:agora-special-full:4.2.6.19'
|
||||||
// AGORA_RTC_SDK= "${rootProject.rootDir.absolutePath}/sdk"
|
// AGORA_RTC_SDK= "${rootProject.rootDir.absolutePath}/sdk"
|
||||||
// AGORA_RTC_SDK="io.agora.rtc:full-sdk:4.2.6"
|
// AGORA_RTC_SDK="io.agora.rtc:full-sdk:4.2.6"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,6 +86,7 @@ dependencies {
|
|||||||
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
|
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
|
||||||
api files('libs/jcc-bate-0.7.3.jar')
|
api files('libs/jcc-bate-0.7.3.jar')
|
||||||
compileOnly fileTree(dir: '../libs', include: ['*.aar'])
|
compileOnly fileTree(dir: '../libs', include: ['*.aar'])
|
||||||
|
api 'androidx.activity:activity:1.9.1'
|
||||||
api rootProject.ext.dependencies["appcompat-androidx"]
|
api rootProject.ext.dependencies["appcompat-androidx"]
|
||||||
api rootProject.ext.dependencies["recyclerview-androidx"]
|
api rootProject.ext.dependencies["recyclerview-androidx"]
|
||||||
api rootProject.ext.dependencies["cardview-androidx"]
|
api rootProject.ext.dependencies["cardview-androidx"]
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
<provider
|
<provider
|
||||||
android:name="androidx.core.content.FileProvider"
|
android:name="androidx.core.content.FileProvider"
|
||||||
android:authorities="com.newpandora.yo.fileprovider"
|
android:authorities="${applicationId}.fileprovider"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:grantUriPermissions="true">
|
android:grantUriPermissions="true">
|
||||||
<meta-data
|
<meta-data
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ import com.yunbao.common.utils.SpUtil;
|
|||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -133,6 +134,7 @@ public class CommonAppConfig {
|
|||||||
private boolean mLaunched;//App是否启动了
|
private boolean mLaunched;//App是否启动了
|
||||||
private String mJPushAppKey;//极光推送的AppKey
|
private String mJPushAppKey;//极光推送的AppKey
|
||||||
private List<UserItemBean> mUserItemList;//个人中心功能列表
|
private List<UserItemBean> mUserItemList;//个人中心功能列表
|
||||||
|
private List<List<UserItemBean>> mYolaUserItemList;//个人中心功能列表
|
||||||
private SparseArray<FansMedalBean> mAnchorFansMedalMap;
|
private SparseArray<FansMedalBean> mAnchorFansMedalMap;
|
||||||
private String mGiftListJson;
|
private String mGiftListJson;
|
||||||
private String mWrapListJson;
|
private String mWrapListJson;
|
||||||
@@ -550,6 +552,37 @@ public class CommonAppConfig {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 个人中心功能列表
|
||||||
|
*/
|
||||||
|
public List<List<UserItemBean>> geYolatUserItemList() {
|
||||||
|
if (mYolaUserItemList == null || mYolaUserItemList.size() == 0) {
|
||||||
|
String userBeanJson = SpUtil.getInstance().getStringValue(SpUtil.USER_INFO);
|
||||||
|
if (!TextUtils.isEmpty(userBeanJson)) {
|
||||||
|
JSONObject obj = JSON.parseObject(userBeanJson);
|
||||||
|
if (obj != null) {
|
||||||
|
setYolatUserItemList(obj.getString("yola_list"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return mYolaUserItemList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setYolatUserItemList(String yola_list) {
|
||||||
|
JSONObject obj = JSON.parseObject(yola_list);
|
||||||
|
List<List<UserItemBean>> newList = new ArrayList<>();
|
||||||
|
if (obj != null) {
|
||||||
|
List<UserItemBean> list1 = JSON.parseArray(obj.getString("user_rights"), UserItemBean.class);
|
||||||
|
newList.add(list1);
|
||||||
|
List<UserItemBean> list2 = JSON.parseArray(obj.getString("creation_center"), UserItemBean.class);
|
||||||
|
newList.add(list2);
|
||||||
|
List<UserItemBean> list3 = JSON.parseArray(obj.getString("other_functions"), UserItemBean.class);
|
||||||
|
newList.add(list3);
|
||||||
|
}
|
||||||
|
mYolaUserItemList = newList;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void setUserItemList(String listString) {
|
public void setUserItemList(String listString) {
|
||||||
UserItemBean[][] arr = JSON.parseObject(listString, UserItemBean[][].class);
|
UserItemBean[][] arr = JSON.parseObject(listString, UserItemBean[][].class);
|
||||||
if (arr != null && arr.length > 0) {
|
if (arr != null && arr.length > 0) {
|
||||||
|
|||||||
@@ -7,12 +7,13 @@ package com.yunbao.common;
|
|||||||
public class HtmlConfig {
|
public class HtmlConfig {
|
||||||
|
|
||||||
//登录即代表同意服务和隐私条款
|
//登录即代表同意服务和隐私条款
|
||||||
public static final String LOGIN_PRIVCAY = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=68";
|
public static final String LOGIN_PRIVCAY = CommonAppConfig.HOST + "/h5/page/index.html?id=733"; //隐私政策
|
||||||
public static final String LOGIN_PRIVCAY1 = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=67";
|
public static final String LOGIN_PRIVCAY1 = CommonAppConfig.HOST + "/h5/page/index.html?id=732";//用户协议
|
||||||
|
|
||||||
//注册用户协议
|
//注册用户协议
|
||||||
public static final String REG_PRIVCAY1 = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=2";
|
public static final String REG_PRIVCAY1 = CommonAppConfig.HOST + "/h5/page/index.html?id=735";//用户服务协议
|
||||||
public static final String REG_PRIVCAY2 = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=3";
|
public static final String REG_PRIVCAY2 = CommonAppConfig.HOST + "/h5/page/index.html?id=733";//隐私政策
|
||||||
|
public static final String ANCHOR_AGREEMENT = CommonAppConfig.HOST + "/h5/page/index.html?id=734";//主播协议
|
||||||
|
|
||||||
//直播间贡献榜
|
//直播间贡献榜
|
||||||
public static final String LIVE_LIST = CommonAppConfig.HOST + "/index.php?g=Appapi&m=contribute&a=index&uid=";
|
public static final String LIVE_LIST = CommonAppConfig.HOST + "/index.php?g=Appapi&m=contribute&a=index&uid=";
|
||||||
@@ -33,7 +34,7 @@ public class HtmlConfig {
|
|||||||
public static final String LUCK_GIFT_TIP = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=26";
|
public static final String LUCK_GIFT_TIP = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=26";
|
||||||
|
|
||||||
//直播间玩家看到的心愿单
|
//直播间玩家看到的心愿单
|
||||||
public static final String WISHLIST_URL = CommonAppConfig.HOST + "/index.php?g=Appapi&m=Wish&a=index";
|
public static final String WISHLIST_URL = CommonAppConfig.HOST + "/h5/wish/index.html?1=1";
|
||||||
|
|
||||||
//直播间玩家看到的转盘
|
//直播间玩家看到的转盘
|
||||||
public static final String TURNTABLE_URL = CommonAppConfig.HOST + "/Appapi/Turntable/index";
|
public static final String TURNTABLE_URL = CommonAppConfig.HOST + "/Appapi/Turntable/index";
|
||||||
@@ -48,7 +49,7 @@ public class HtmlConfig {
|
|||||||
public static final String PERSONAL = CommonAppConfig.HOST + "/h5/shequ/index.html#/h5/shequ/Personal";
|
public static final String PERSONAL = CommonAppConfig.HOST + "/h5/shequ/index.html#/h5/shequ/Personal";
|
||||||
|
|
||||||
//我的徽章 右上角问号
|
//我的徽章 右上角问号
|
||||||
public static final String MEDAL_QUESTION = CommonAppConfig.HOST + "/index.php?g=Appapi&m=Fans&a=rule&isfans=1";
|
public static final String MEDAL_QUESTION = CommonAppConfig.HOST + "/h5/fans/rule.html?isfans=1";
|
||||||
|
|
||||||
//我的明细
|
//我的明细
|
||||||
public static final String DETAIL = CommonAppConfig.HOST + "/index.php?g=Appapi&m=Detail&a=index";
|
public static final String DETAIL = CommonAppConfig.HOST + "/index.php?g=Appapi&m=Detail&a=index";
|
||||||
@@ -58,4 +59,7 @@ public class HtmlConfig {
|
|||||||
//充值说明
|
//充值说明
|
||||||
public static final String CHARGE_EXPLAIN = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=41";
|
public static final String CHARGE_EXPLAIN = CommonAppConfig.HOST + "/index.php?g=portal&m=page&a=index&id=41";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -297,11 +297,19 @@ public class WebViewActivity extends AbsActivity {
|
|||||||
mIsLive = isLive;
|
mIsLive = isLive;
|
||||||
if (Constants.LoginKefu) {
|
if (Constants.LoginKefu) {
|
||||||
if (addArgs) {
|
if (addArgs) {
|
||||||
url += "&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&isZh=" + (WordUtil.isNewZh() ? "1" : 0);
|
if (url.contains("?")) {
|
||||||
|
url += "&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
|
||||||
|
} else {
|
||||||
|
url += "?uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
|
||||||
|
}}
|
||||||
}
|
}
|
||||||
|
if (url.contains("?")) {
|
||||||
|
url += "&isZh=" + ((IMLoginManager.get(CommonAppContext.sInstance.getBaseContext()).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE) ? "1" : "0");
|
||||||
|
} else {
|
||||||
|
url += "?isZh=" + ((IMLoginManager.get(CommonAppContext.sInstance.getBaseContext()).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE) ? "1" : "0");
|
||||||
}
|
}
|
||||||
Intent intent = new Intent(context, WebViewActivity.class);
|
Intent intent = new Intent(context, WebViewActivity.class);
|
||||||
intent.putExtra(Constants.URL, url + "&isZh=" + ((IMLoginManager.get(CommonAppContext.sInstance.getBaseContext()).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE) ? "1" : "0"));
|
intent.putExtra(Constants.URL, url);
|
||||||
context.startActivity(intent);
|
context.startActivity(intent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -149,6 +149,7 @@ public class CommentAdapter extends RecyclerView.Adapter {
|
|||||||
replyTextView.setTag(bean);
|
replyTextView.setTag(bean);
|
||||||
ImgLoader.display(itemView.getContext(), bean.getUser_avatar(), mAvatar);
|
ImgLoader.display(itemView.getContext(), bean.getUser_avatar(), mAvatar);
|
||||||
name.setText(bean.getUser_name());
|
name.setText(bean.getUser_name());
|
||||||
|
report.setVisibility(bean.getUid().equals(myUid)?View.GONE: View.VISIBLE);
|
||||||
content.setText(bean.getContent());
|
content.setText(bean.getContent());
|
||||||
if (bean.getUser_id().equals(authorId)) {
|
if (bean.getUser_id().equals(authorId)) {
|
||||||
author.setVisibility(View.VISIBLE);
|
author.setVisibility(View.VISIBLE);
|
||||||
@@ -164,6 +165,7 @@ public class CommentAdapter extends RecyclerView.Adapter {
|
|||||||
replyCount.setText(String.format(mContext.getResources().getString(R.string.active_count), String.valueOf(bean.getReplyCommentList().size())));
|
replyCount.setText(String.format(mContext.getResources().getString(R.string.active_count), String.valueOf(bean.getReplyCommentList().size())));
|
||||||
if (bean.getReplyCommentList().size() > 0) {
|
if (bean.getReplyCommentList().size() > 0) {
|
||||||
report1.setTag(bean.getReplyCommentList().get(0));
|
report1.setTag(bean.getReplyCommentList().get(0));
|
||||||
|
report1.setVisibility( bean.getReplyCommentList().get(0).getUid().equals(myUid)?View.GONE: View.VISIBLE);
|
||||||
del1.setTag(bean.getReplyCommentList().get(0));
|
del1.setTag(bean.getReplyCommentList().get(0));
|
||||||
replyContent.setText(bean.getReplyCommentList().get(0).getContent());
|
replyContent.setText(bean.getReplyCommentList().get(0).getContent());
|
||||||
ImgLoader.display(itemView.getContext(), bean.getReplyCommentList().get(0).getUser_avatar(), mAvatar01);
|
ImgLoader.display(itemView.getContext(), bean.getReplyCommentList().get(0).getUser_avatar(), mAvatar01);
|
||||||
|
|||||||
@@ -94,6 +94,7 @@ public class CommentReplyAdapter extends RecyclerView.Adapter {
|
|||||||
ImgLoader.display(itemView.getContext(), bean.getUser_avatar(), mAvatar01);
|
ImgLoader.display(itemView.getContext(), bean.getUser_avatar(), mAvatar01);
|
||||||
name.setText(bean.getUser_name());
|
name.setText(bean.getUser_name());
|
||||||
replyContent.setText(bean.getContent());
|
replyContent.setText(bean.getContent());
|
||||||
|
report.setVisibility(bean.getUid().equals(myUid)?View.GONE: View.VISIBLE);
|
||||||
if (bean.getUser_id().equals(authorId)) {
|
if (bean.getUser_id().equals(authorId)) {
|
||||||
author.setVisibility(View.VISIBLE);
|
author.setVisibility(View.VISIBLE);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -0,0 +1,137 @@
|
|||||||
|
package com.yunbao.common.adapter;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.graphics.Typeface;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.View;
|
||||||
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.ImageView;
|
||||||
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.core.content.ContextCompat;
|
||||||
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
|
import com.yunbao.common.R;
|
||||||
|
import com.yunbao.common.bean.CustomSidebarChildModel;
|
||||||
|
import com.yunbao.common.bean.GameTypeItemBean;
|
||||||
|
import com.yunbao.common.bean.UserItemBean;
|
||||||
|
import com.yunbao.common.event.SudGameListEvent;
|
||||||
|
import com.yunbao.common.glide.ImgLoader;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
|
import com.yunbao.common.views.SudTitleSelectViewHolder;
|
||||||
|
|
||||||
|
import net.lucode.hackware.magicindicator.buildins.UIUtil;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class GameTypeItemAdapter extends RecyclerView.Adapter<GameTypeItemAdapter.GameTypeViewHolder> implements View.OnClickListener {
|
||||||
|
|
||||||
|
private List<CustomSidebarChildModel> itemList;
|
||||||
|
private Context mContext;
|
||||||
|
private int mChoice;
|
||||||
|
// public GameTypeItemAdapter(List<GameTypeItemBean> itemList, Context context) {
|
||||||
|
// this.itemList = itemList;
|
||||||
|
// mContext=context;
|
||||||
|
// }
|
||||||
|
|
||||||
|
public GameTypeItemAdapter(List<CustomSidebarChildModel> customSidebarChildModels, Context context) {
|
||||||
|
this.itemList = customSidebarChildModels;
|
||||||
|
mContext = context;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
Object object =v.getTag();
|
||||||
|
if (object!=null && object instanceof Integer){
|
||||||
|
if (mChoice != (int) object) {
|
||||||
|
mChoice = (int) object;
|
||||||
|
notifyDataSetChanged();
|
||||||
|
if (mChoice == 0){
|
||||||
|
Bus.get().post(new SudGameListEvent()
|
||||||
|
.setInteractionID(0L)
|
||||||
|
.setId("0")
|
||||||
|
.setTitle(mContext.getString(R.string.interactive_game_room_all)));
|
||||||
|
}else {
|
||||||
|
Bus.get().post(new SudGameListEvent()
|
||||||
|
.setInteractionID(Long.parseLong(itemList.get(mChoice-1).getSrc()))
|
||||||
|
.setId(itemList.get(mChoice-1).getId())
|
||||||
|
.setTitle(itemList.get(mChoice-1).getTitle()));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@NonNull
|
||||||
|
@Override
|
||||||
|
public GameTypeViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||||
|
View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_game_type_select_view, parent, false);
|
||||||
|
UIUtil.getScreenWidth(mContext);
|
||||||
|
itemView.setLayoutParams(new ViewGroup.LayoutParams(UIUtil.getScreenWidth(mContext) / 4, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||||
|
itemView.setOnClickListener(this);
|
||||||
|
return new GameTypeViewHolder(itemView);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onBindViewHolder(@NonNull GameTypeViewHolder holder, int position) {
|
||||||
|
holder.itemView.setTag(position);
|
||||||
|
if (position == 0) {
|
||||||
|
holder.gameBg.setImageResource(getGameBgResId(position));
|
||||||
|
holder.gameName.setText(R.string.interactive_game_room_all);
|
||||||
|
holder.gameIcon.setImageResource(R.mipmap.ic_yola_game_1);
|
||||||
|
} else {
|
||||||
|
CustomSidebarChildModel item = itemList.get(position - 1);
|
||||||
|
holder.gameBg.setImageResource(getGameBgResId(position));
|
||||||
|
ImgLoader.display(holder.gameIcon.getContext(), item.getIcon(), holder.gameIcon);
|
||||||
|
holder.gameName.setText(item.getTitle());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mChoice == position) {
|
||||||
|
holder.gameName.setTypeface(null, Typeface.BOLD);
|
||||||
|
holder.gameName.setTextColor(ContextCompat.getColor(mContext,R.color.color_111111));
|
||||||
|
}else {
|
||||||
|
holder.gameName.setTypeface(null, Typeface.NORMAL);
|
||||||
|
holder.gameName.setTextColor(ContextCompat.getColor(mContext,R.color.color_605c58));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int getGameBgResId(int position) {
|
||||||
|
Integer p = position % 4;
|
||||||
|
switch (p) {
|
||||||
|
case 0:
|
||||||
|
return R.mipmap.ic_yola_game_bg_1;
|
||||||
|
case 1:
|
||||||
|
return R.mipmap.ic_yola_game_bg_2;
|
||||||
|
case 2:
|
||||||
|
return R.mipmap.ic_yola_game_bg_3;
|
||||||
|
case 3:
|
||||||
|
return R.mipmap.ic_yola_game_bg_4;
|
||||||
|
default:
|
||||||
|
return R.mipmap.ic_yola_game_bg_1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getItemCount() {
|
||||||
|
return itemList.size() + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public class GameTypeViewHolder extends RecyclerView.ViewHolder {
|
||||||
|
|
||||||
|
public ImageView gameBg;
|
||||||
|
public ImageView gameIcon;
|
||||||
|
public TextView gameName;
|
||||||
|
|
||||||
|
public GameTypeViewHolder(@NonNull View itemView) {
|
||||||
|
super(itemView);
|
||||||
|
gameBg = itemView.findViewById(R.id.gameBg);
|
||||||
|
gameIcon = itemView.findViewById(R.id.gameIcon);
|
||||||
|
gameName = itemView.findViewById(R.id.gameName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -132,11 +132,13 @@ public class MainConversationListAdapter extends ConversationListAdapter {
|
|||||||
int type = super.getItemViewType(position);
|
int type = super.getItemViewType(position);
|
||||||
if (mDataList.size() > position) {
|
if (mDataList.size() > position) {
|
||||||
String objectName = mDataList.get(position).mCore.getObjectName();
|
String objectName = mDataList.get(position).mCore.getObjectName();
|
||||||
|
Log.i("聊天数据源发现","objectName::"+objectName);
|
||||||
if (!StringUtil.isEmpty(objectName) && objectName.startsWith("SEARCH_USER")) {
|
if (!StringUtil.isEmpty(objectName) && objectName.startsWith("SEARCH_USER")) {
|
||||||
type = TYPE_SEARCH_USER;
|
type = TYPE_SEARCH_USER;
|
||||||
} else if (!StringUtil.isEmpty(objectName) && objectName.startsWith("SEARCH_CHAT")) {
|
} else if (!StringUtil.isEmpty(objectName) && objectName.startsWith("SEARCH_CHAT")) {
|
||||||
type = TYPE_SEARCH_CHAT;
|
type = TYPE_SEARCH_CHAT;
|
||||||
} else if (!StringUtil.isEmpty(objectName) && objectName.startsWith("SEARCH_TITLE")) {
|
} else if (!StringUtil.isEmpty(objectName) && objectName.startsWith("SEARCH_TITLE")) {
|
||||||
|
Log.i("聊天数据源发现 ","getItemViewTypeSEARCH_TITLE");
|
||||||
type = TYPE_SEARCH_TITLE;
|
type = TYPE_SEARCH_TITLE;
|
||||||
}
|
}
|
||||||
} else if (mDataList.isEmpty() || isEmpty() || srcList.isEmpty()) {
|
} else if (mDataList.isEmpty() || isEmpty() || srcList.isEmpty()) {
|
||||||
@@ -156,7 +158,9 @@ public class MainConversationListAdapter extends ConversationListAdapter {
|
|||||||
} else if (getItemViewType(position) == TYPE_SEARCH_CHAT) {
|
} else if (getItemViewType(position) == TYPE_SEARCH_CHAT) {
|
||||||
bindChat(holder, position);
|
bindChat(holder, position);
|
||||||
} else if (getItemViewType(position) == TYPE_SEARCH_TITLE) {
|
} else if (getItemViewType(position) == TYPE_SEARCH_TITLE) {
|
||||||
|
Log.i("聊天数据源设置标题头","SEARCH_TITLE::"+position);
|
||||||
bindTitle(holder, position);
|
bindTitle(holder, position);
|
||||||
|
return;
|
||||||
} else if (getItemViewType(position) != -200) {
|
} else if (getItemViewType(position) != -200) {
|
||||||
bindChatNew(holder, position);
|
bindChatNew(holder, position);
|
||||||
super.onBindViewHolder(holder, position);
|
super.onBindViewHolder(holder, position);
|
||||||
@@ -297,7 +301,8 @@ public class MainConversationListAdapter extends ConversationListAdapter {
|
|||||||
if (mContext == null)
|
if (mContext == null)
|
||||||
mContext = AppManager.getInstance().getLastActivity();
|
mContext = AppManager.getInstance().getLastActivity();
|
||||||
for (BaseUiConversation item : data) {
|
for (BaseUiConversation item : data) {
|
||||||
if (urls.contains(item.mCore.getTargetId())) continue;
|
if (urls.contains(item.mCore.getTargetId()) && item.mCore.getTargetId()!=null) continue;
|
||||||
|
// if ( item.mCore.getConversationTitle()==null || item.mCore.getTargetId()==null) continue;
|
||||||
if (item.mConversationContent != null && item.mConversationContent.toString().contains("_method_")) {
|
if (item.mConversationContent != null && item.mConversationContent.toString().contains("_method_")) {
|
||||||
IMCenter.getInstance().deleteMessages(Conversation.ConversationType.PRIVATE,
|
IMCenter.getInstance().deleteMessages(Conversation.ConversationType.PRIVATE,
|
||||||
item.mCore.getTargetId(),
|
item.mCore.getTargetId(),
|
||||||
@@ -316,7 +321,8 @@ public class MainConversationListAdapter extends ConversationListAdapter {
|
|||||||
IMCenter.getInstance().clearMessagesUnreadStatus(Conversation.ConversationType.PRIVATE, item.mCore.getTargetId(), null);
|
IMCenter.getInstance().clearMessagesUnreadStatus(Conversation.ConversationType.PRIVATE, item.mCore.getTargetId(), null);
|
||||||
}
|
}
|
||||||
urls.add(item.mCore.getTargetId());
|
urls.add(item.mCore.getTargetId());
|
||||||
Log.i("聊天数据源", item.mCore.getConversationTitle() + "|" + item.mCore.getPortraitUrl() + "|" + item.mCore.getTargetId());
|
Log.i("聊天数据源", item.mCore.getConversationTitle() + "|" + item.mCore.getPortraitUrl() + "|" + item.mCore.getTargetId() +"|"+item.mCore.getObjectName());
|
||||||
|
|
||||||
if (!tmpUids.contains(item.mCore.getTargetId())) {
|
if (!tmpUids.contains(item.mCore.getTargetId())) {
|
||||||
BaseUiConversation cn = new SingleConversation(mContext, item.mCore);
|
BaseUiConversation cn = new SingleConversation(mContext, item.mCore);
|
||||||
srcList.add(cn);
|
srcList.add(cn);
|
||||||
@@ -332,21 +338,21 @@ public class MainConversationListAdapter extends ConversationListAdapter {
|
|||||||
}
|
}
|
||||||
List<BaseUiConversation> showData = null;
|
List<BaseUiConversation> showData = null;
|
||||||
if (isSearch) {
|
if (isSearch) {
|
||||||
Log.i("聊天数据源", "FilterData isSearch");
|
// Log.i("聊天数据源", "FilterData isSearch");
|
||||||
showData = UiConversationCodeUtil.FilterData(mFilter, tmp, allDataList);
|
showData = tmp ;//UiConversationCodeUtil.FilterData(mFilter, tmp, allDataList);
|
||||||
} else {
|
} else {
|
||||||
allDataList = tmp;
|
allDataList = tmp;
|
||||||
if (mFilter != FILTER_OFFLINE && mFilter != FILTER_ONLINE )
|
if (mFilter != FILTER_OFFLINE && mFilter != FILTER_ONLINE )
|
||||||
{
|
{
|
||||||
Log.i("聊天数据源", "FilterData notSearch");
|
// Log.i("聊天数据源", "FilterData notSearch");
|
||||||
showData = UiConversationCodeUtil.FilterData(mFilter, allDataList);
|
showData = UiConversationCodeUtil.FilterData(mFilter, allDataList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (showData != null && !UiConversationCodeUtil.checkIsSame(showData, mDataList)) {
|
if (showData != null && !UiConversationCodeUtil.checkIsSame(showData, mDataList)) {
|
||||||
Log.i("聊天数据源", "数据源有变化" + showData.size());
|
// Log.i("聊天数据源", "数据源有变化" + showData.size());
|
||||||
super.setDataCollection(showData);
|
super.setDataCollection(showData);
|
||||||
} else {
|
} else {
|
||||||
Log.i("聊天数据源", "数据源无变化");
|
// Log.i("聊天数据源", "数据源无变化");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ public class MsgRecommendAdapter extends RecyclerView.Adapter<MsgRecommendAdapte
|
|||||||
ImgLoader.display(holder.itemView.getContext(), mList.get(position).getAvatar(), holder.mAvatar);
|
ImgLoader.display(holder.itemView.getContext(), mList.get(position).getAvatar(), holder.mAvatar);
|
||||||
holder.rc_conversation_title.setText(mList.get(position).getUser_nicename());
|
holder.rc_conversation_title.setText(mList.get(position).getUser_nicename());
|
||||||
holder.sayHi.setText(mList.get(position).isSayHi()? (WordUtil.isNewZh()?"已打招呼":"Said Hallo"):(WordUtil.isNewZh()?"打招呼":"Greet"));
|
holder.sayHi.setText(mList.get(position).isSayHi()? (WordUtil.isNewZh()?"已打招呼":"Said Hallo"):(WordUtil.isNewZh()?"打招呼":"Greet"));
|
||||||
holder.sayHi.setBackground(mList.get(position).isSayHi()? mContext.getDrawable(R.drawable.bg_msg_recommended):mContext.getDrawable(R.drawable.bg_msg_recommend));
|
holder.sayHi.setBackground(mList.get(position).isSayHi()? mContext.getDrawable(R.drawable.bg_msg_recommended):mContext.getDrawable(R.drawable.bg_msg_yola_recommend));
|
||||||
holder.sayHi.setOnClickListener(new View.OnClickListener() {
|
holder.sayHi.setOnClickListener(new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
import com.yunbao.common.R;
|
import com.yunbao.common.R;
|
||||||
import com.yunbao.common.bean.SudRoomListModel;
|
import com.yunbao.common.bean.SudRoomListModel;
|
||||||
import com.yunbao.common.views.SudGameListViewHolder;
|
import com.yunbao.common.views.SudGameListViewHolder;
|
||||||
|
import com.yunbao.common.views.SudGameListViewHolder2;
|
||||||
|
|
||||||
public class SudGameListAdapter extends RefreshAdapter<SudRoomListModel> {
|
public class SudGameListAdapter extends RefreshAdapter<SudRoomListModel> {
|
||||||
private boolean isHome = false;
|
private boolean isHome = false;
|
||||||
@@ -22,7 +23,7 @@ public class SudGameListAdapter extends RefreshAdapter<SudRoomListModel> {
|
|||||||
@Override
|
@Override
|
||||||
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||||
if (isHome){
|
if (isHome){
|
||||||
return new SudGameListViewHolder(mInflater.inflate(R.layout.item_home_sud_game_list, parent, false));
|
return new SudGameListViewHolder2(mInflater.inflate(R.layout.item_home_sud_game_list2, parent, false));
|
||||||
}else {
|
}else {
|
||||||
return new SudGameListViewHolder(mInflater.inflate(R.layout.item_sud_game_list, parent, false));
|
return new SudGameListViewHolder(mInflater.inflate(R.layout.item_sud_game_list, parent, false));
|
||||||
}
|
}
|
||||||
@@ -30,7 +31,13 @@ public class SudGameListAdapter extends RefreshAdapter<SudRoomListModel> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
|
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
|
||||||
|
if (isHome){
|
||||||
|
SudGameListViewHolder2 sudGameListViewHolder = (SudGameListViewHolder2) holder;
|
||||||
|
sudGameListViewHolder.setData(mList.get(position));
|
||||||
|
}else {
|
||||||
SudGameListViewHolder sudGameListViewHolder = (SudGameListViewHolder) holder;
|
SudGameListViewHolder sudGameListViewHolder = (SudGameListViewHolder) holder;
|
||||||
sudGameListViewHolder.setData(mList.get(position),isHome);
|
sudGameListViewHolder.setData(mList.get(position),isHome);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ public class ConfigBean extends BaseModel {
|
|||||||
private String google_isup;
|
private String google_isup;
|
||||||
|
|
||||||
private String sud_game_speech;
|
private String sud_game_speech;
|
||||||
|
private int pay_type = 0;
|
||||||
|
|
||||||
@SerializedName("is_return_user")//是否需要弹窗(0否,1是)
|
@SerializedName("is_return_user")//是否需要弹窗(0否,1是)
|
||||||
private String isReturnUser="";
|
private String isReturnUser="";
|
||||||
@@ -72,6 +73,14 @@ public class ConfigBean extends BaseModel {
|
|||||||
@SerializedName("jump_h5_url")//点击跳转H5页面地址
|
@SerializedName("jump_h5_url")//点击跳转H5页面地址
|
||||||
private String jumpH5Url="";
|
private String jumpH5Url="";
|
||||||
|
|
||||||
|
public int getPay_type() {
|
||||||
|
return pay_type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPay_type(int pay_type) {
|
||||||
|
this.pay_type = pay_type;
|
||||||
|
}
|
||||||
|
|
||||||
@JSONField(name = "is_return_user")
|
@JSONField(name = "is_return_user")
|
||||||
public String getIsReturnUser() {
|
public String getIsReturnUser() {
|
||||||
return isReturnUser;
|
return isReturnUser;
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
package com.yunbao.common.bean;
|
||||||
|
|
||||||
|
public class GameTypeItemBean {
|
||||||
|
|
||||||
|
private String gameName;
|
||||||
|
private String iconUrl;
|
||||||
|
private int iconId=-1;
|
||||||
|
private int gameBgResId;
|
||||||
|
|
||||||
|
public GameTypeItemBean(String gameName, String gameIconUrl, int gameBgResId) {
|
||||||
|
this.gameName = gameName;
|
||||||
|
this.iconUrl = gameIconUrl;
|
||||||
|
this.gameBgResId = gameBgResId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getIconId() {
|
||||||
|
return iconId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIconId(int iconId) {
|
||||||
|
this.iconId = iconId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGameName() {
|
||||||
|
return gameName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIconUrl() {
|
||||||
|
return iconUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getGameBgResId() {
|
||||||
|
return gameBgResId;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -54,6 +54,7 @@ public class UserBean implements Parcelable {
|
|||||||
private String token_rong = "";
|
private String token_rong = "";
|
||||||
private String noble_end_time;
|
private String noble_end_time;
|
||||||
private String slide;
|
private String slide;
|
||||||
|
private String slide_pic;
|
||||||
private String users_type;
|
private String users_type;
|
||||||
private String is_bind;
|
private String is_bind;
|
||||||
private String mobile;
|
private String mobile;
|
||||||
@@ -272,6 +273,14 @@ public class UserBean implements Parcelable {
|
|||||||
return slide;
|
return slide;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getSlide_pic() {
|
||||||
|
return slide_pic;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSlide_pic(String slide_pic) {
|
||||||
|
this.slide_pic = slide_pic;
|
||||||
|
}
|
||||||
|
|
||||||
public void setSlide(String slide) {
|
public void setSlide(String slide) {
|
||||||
this.slide = slide;
|
this.slide = slide;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -411,7 +411,9 @@ public class CommonRefreshView extends FrameLayout implements View.OnClickListen
|
|||||||
refresh();
|
refresh();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public RecyclerView getRefreshView() {
|
||||||
|
return mRecyclerView;
|
||||||
|
}
|
||||||
public interface DataHelperNew {
|
public interface DataHelperNew {
|
||||||
void loadData(int p);
|
void loadData(int p);
|
||||||
|
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ public class GiftWallRuleDialog extends AbsDialogPopupWindow {
|
|||||||
} else {
|
} else {
|
||||||
mIvBg.setScaleType(ImageView.ScaleType.FIT_XY);
|
mIvBg.setScaleType(ImageView.ScaleType.FIT_XY);
|
||||||
}
|
}
|
||||||
ImgLoader.displayDrawable(mContext, WordUtil.isNewZh() ? "https://downs.yaoulive.com/%E4%B8%AD%E6%96%87%E8%A7%84%E5%88%99.png" : "https://downs.yaoulive.com/%E8%8B%B1%E6%96%87%E8%A7%84%E5%88%99.png", -1, -1, new ImgLoader.DrawableCallback() {
|
ImgLoader.displayDrawable(mContext, WordUtil.isNewZh() ? "https://downs.yaoulive.com/%E4%B8%AD%E6%96%87.png" : "https://downs.yaoulive.com/%E8%8B%B1%E6%96%87.png", -1, -1, new ImgLoader.DrawableCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onLoadSuccess(Drawable drawable) {
|
public void onLoadSuccess(Drawable drawable) {
|
||||||
iv_rule.setImageDrawable(drawable);
|
iv_rule.setImageDrawable(drawable);
|
||||||
|
|||||||
@@ -127,14 +127,14 @@ public class SudGameListSelectPopup extends AttachPopupView {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else if (mType == 1) {
|
} else if (mType == 1) {
|
||||||
selectString.add(getContext().getString(R.string.interactive_game_create_unlimited));
|
selectString.add(getContext().getString(R.string.unlimited_threshold));
|
||||||
selectString.add(getContext().getString(R.string.interactive_game_create_0_1));
|
selectString.add(getContext().getString(R.string.interactive_game_create_0_1));
|
||||||
selectString.add(getContext().getString(R.string.interactive_game_create_1_2));
|
selectString.add(getContext().getString(R.string.interactive_game_create_1_2));
|
||||||
selectString.add(getContext().getString(R.string.interactive_game_create_5));
|
selectString.add(getContext().getString(R.string.interactive_game_create_5));
|
||||||
selectString.add(getContext().getString(R.string.room_sill0_100));
|
selectString.add(getContext().getString(R.string.room_sill0_100));
|
||||||
selectString.add(getContext().getString(R.string.room_sill100_500));
|
selectString.add(getContext().getString(R.string.room_sill100_500));
|
||||||
selectString.add(getContext().getString(R.string.room_sill500_m));
|
selectString.add(getContext().getString(R.string.room_sill500_m));
|
||||||
selectSill.put(getContext().getString(R.string.interactive_game_create_unlimited), "0,0,0");
|
selectSill.put(getContext().getString(R.string.unlimited_threshold), "0,0,0");
|
||||||
selectSill.put(getContext().getString(R.string.interactive_game_create_0_1), "0,1,3");
|
selectSill.put(getContext().getString(R.string.interactive_game_create_0_1), "0,1,3");
|
||||||
selectSill.put(getContext().getString(R.string.interactive_game_create_1_2), "1,5,3");
|
selectSill.put(getContext().getString(R.string.interactive_game_create_1_2), "1,5,3");
|
||||||
selectSill.put(getContext().getString(R.string.interactive_game_create_5), "5,0,3");
|
selectSill.put(getContext().getString(R.string.interactive_game_create_5), "5,0,3");
|
||||||
@@ -161,10 +161,10 @@ public class SudGameListSelectPopup extends AttachPopupView {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else if (mType == 2) {
|
} else if (mType == 2) {
|
||||||
selectString.add(getContext().getString(R.string.interactive_game_create_unlimited));
|
selectString.add(getContext().getString(R.string.unrestricted_players));
|
||||||
selectString.add(getContext().getString(R.string.live_anchor));
|
selectString.add(getContext().getString(R.string.live_anchor));
|
||||||
selectString.add(getContext().getString(R.string.interactive_game_player));
|
selectString.add(getContext().getString(R.string.interactive_game_player));
|
||||||
selectSill.put(getContext().getString(R.string.interactive_game_create_unlimited), "0");
|
selectSill.put(getContext().getString(R.string.unrestricted_players), "0");
|
||||||
selectSill.put(getContext().getString(R.string.live_anchor), "1");
|
selectSill.put(getContext().getString(R.string.live_anchor), "1");
|
||||||
selectSill.put(getContext().getString(R.string.interactive_game_player), "2");
|
selectSill.put(getContext().getString(R.string.interactive_game_player), "2");
|
||||||
index = 0;
|
index = 0;
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package com.yunbao.common.fragment;
|
package com.yunbao.common.fragment;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.os.Parcel;
|
||||||
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
@@ -28,6 +30,8 @@ import io.rong.imkit.conversationlist.model.SingleConversation;
|
|||||||
import io.rong.imkit.event.Event;
|
import io.rong.imkit.event.Event;
|
||||||
import io.rong.imlib.RongIMClient;
|
import io.rong.imlib.RongIMClient;
|
||||||
import io.rong.imlib.model.Conversation;
|
import io.rong.imlib.model.Conversation;
|
||||||
|
import io.rong.imlib.model.Message;
|
||||||
|
import io.rong.imlib.model.MessageContent;
|
||||||
import io.rong.imlib.model.SearchConversationResult;
|
import io.rong.imlib.model.SearchConversationResult;
|
||||||
|
|
||||||
public class MainMessageChatFragment extends ConversationListFragment {
|
public class MainMessageChatFragment extends ConversationListFragment {
|
||||||
@@ -50,7 +54,7 @@ public class MainMessageChatFragment extends ConversationListFragment {
|
|||||||
mConversationListViewModel.getConversationListLiveData().observe(this.getViewLifecycleOwner(), new Observer<List<BaseUiConversation>>() {
|
mConversationListViewModel.getConversationListLiveData().observe(this.getViewLifecycleOwner(), new Observer<List<BaseUiConversation>>() {
|
||||||
@Override
|
@Override
|
||||||
public void onChanged(List<BaseUiConversation> uiConversations) {
|
public void onChanged(List<BaseUiConversation> uiConversations) {
|
||||||
int hashCode = UiConversationCodeUtil.getListHasCode(uiConversations);
|
int hashCode = uiConversations.hashCode();
|
||||||
if (listHashCode != hashCode) {
|
if (listHashCode != hashCode) {
|
||||||
Log.i("nwq", "刷新数据");
|
Log.i("nwq", "刷新数据");
|
||||||
listHashCode = hashCode;
|
listHashCode = hashCode;
|
||||||
@@ -82,6 +86,10 @@ public class MainMessageChatFragment extends ConversationListFragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void search(String search) {
|
public void search(String search) {
|
||||||
|
if (TextUtils.isEmpty(search)){
|
||||||
|
mRefreshLayout.autoRefresh();
|
||||||
|
return;
|
||||||
|
}
|
||||||
((MainConversationListAdapter) mAdapter).setSearch();
|
((MainConversationListAdapter) mAdapter).setSearch();
|
||||||
getContactsList(search);
|
getContactsList(search);
|
||||||
}
|
}
|
||||||
@@ -95,10 +103,11 @@ public class MainMessageChatFragment extends ConversationListFragment {
|
|||||||
List<String> uidList = new ArrayList<>();
|
List<String> uidList = new ArrayList<>();
|
||||||
|
|
||||||
BaseUiConversation conversation = new SingleConversation(getContext(), new Conversation());
|
BaseUiConversation conversation = new SingleConversation(getContext(), new Conversation());
|
||||||
|
conversation.mCore.setMessage(new Message());
|
||||||
conversation.mCore.setObjectName("SEARCH_TITLE" + WordUtil.getNewString(R.string.activity_msg_list_title_contacts));
|
conversation.mCore.setObjectName("SEARCH_TITLE" + WordUtil.getNewString(R.string.activity_msg_list_title_contacts));
|
||||||
|
Log.i("聊天数据源设置数据", "聊天数据源: " + conversation.mCore.getObjectName());
|
||||||
conversation.mCore.setConversationType(Conversation.ConversationType.PRIVATE);
|
conversation.mCore.setConversationType(Conversation.ConversationType.PRIVATE);
|
||||||
list.add(conversation);
|
list.add(conversation);
|
||||||
|
|
||||||
List<BaseUiConversation> data = new ArrayList<>();
|
List<BaseUiConversation> data = new ArrayList<>();
|
||||||
System.err.println(" ----------------------->" + mAdapter.getData().size());
|
System.err.println(" ----------------------->" + mAdapter.getData().size());
|
||||||
for (BaseUiConversation cn : ((MainConversationListAdapter) mAdapter).getSrcList()) {
|
for (BaseUiConversation cn : ((MainConversationListAdapter) mAdapter).getSrcList()) {
|
||||||
@@ -137,7 +146,9 @@ public class MainMessageChatFragment extends ConversationListFragment {
|
|||||||
@Override
|
@Override
|
||||||
public void onSuccess(List<SearchConversationResult> searchConversationResults) {
|
public void onSuccess(List<SearchConversationResult> searchConversationResults) {
|
||||||
BaseUiConversation conversation = new SingleConversation(getContext(), new Conversation());
|
BaseUiConversation conversation = new SingleConversation(getContext(), new Conversation());
|
||||||
|
conversation.mCore.setMessage(new Message());
|
||||||
conversation.mCore.setObjectName("SEARCH_TITLE" + WordUtil.getNewString(R.string.activity_msg_list_title_chat_records));
|
conversation.mCore.setObjectName("SEARCH_TITLE" + WordUtil.getNewString(R.string.activity_msg_list_title_chat_records));
|
||||||
|
Log.i("聊天数据源设置数据", "聊天数据源: " + conversation.mCore.getObjectName());
|
||||||
conversation.mCore.setConversationType(Conversation.ConversationType.PRIVATE);
|
conversation.mCore.setConversationType(Conversation.ConversationType.PRIVATE);
|
||||||
list.add(conversation);
|
list.add(conversation);
|
||||||
List<BaseUiConversation> data = new ArrayList<>();
|
List<BaseUiConversation> data = new ArrayList<>();
|
||||||
@@ -155,6 +166,9 @@ public class MainMessageChatFragment extends ConversationListFragment {
|
|||||||
list.remove(list.size() - 1);
|
list.remove(list.size() - 1);
|
||||||
}
|
}
|
||||||
list.addAll(data);
|
list.addAll(data);
|
||||||
|
for (BaseUiConversation cn : list){
|
||||||
|
Log.i("聊天数据源搜索前的", cn.mCore.getConversationTitle() + "|" + cn.mCore.getPortraitUrl() + "|" + cn.mCore.getTargetId());
|
||||||
|
}
|
||||||
((MainConversationListAdapter) mAdapter).setDataCollectionV2(list,true);
|
((MainConversationListAdapter) mAdapter).setDataCollectionV2(list,true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -172,7 +186,7 @@ public class MainMessageChatFragment extends ConversationListFragment {
|
|||||||
((MainConversationListAdapter) mAdapter).clear();
|
((MainConversationListAdapter) mAdapter).clear();
|
||||||
System.out.println(">!>!>!>!!>" + mConversationListViewModel);
|
System.out.println(">!>!>!>!!>" + mConversationListViewModel);
|
||||||
subscribeUi();
|
subscribeUi();
|
||||||
|
mRefreshLayout.autoRefresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ public class API extends BaseApi {
|
|||||||
.addInterceptor(initQuery(isNeedUid, isNeedToken, CommonAppContext.sInstance.getApplicationContext()))
|
.addInterceptor(initQuery(isNeedUid, isNeedToken, CommonAppContext.sInstance.getApplicationContext()))
|
||||||
.addInterceptor(loggingInterceptor);
|
.addInterceptor(loggingInterceptor);
|
||||||
return create(builder.build(),
|
return create(builder.build(),
|
||||||
GsonConverterFactory.create(gson), RxJava2CallAdapterFactory.create(), CommonAppConfig.HOST, PDLiveApi.class);
|
JavaConverterFactory.create(gson), RxJava2CallAdapterFactory.create(), CommonAppConfig.HOST, PDLiveApi.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
//公共参数
|
//公共参数
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ public class CommonHttpConsts {
|
|||||||
public static final String GET_BALANCE = "getBalance";
|
public static final String GET_BALANCE = "getBalance";
|
||||||
public static final String CHECK_TOKEN_INVALID = "checkTokenInvalid";
|
public static final String CHECK_TOKEN_INVALID = "checkTokenInvalid";
|
||||||
public static final String NOTIFY_GOOGLE = "Charge.goole_validate_panduola";
|
public static final String NOTIFY_GOOGLE = "Charge.goole_validate_panduola";
|
||||||
public static final String COMMUNITY_SETREPORT = "Community.setReport";
|
public static final String COMMUNITY_SETREPORT = "ylapyonghushequdongtaijubao";
|
||||||
|
|
||||||
public static final String GET_USER_HOME = "getUserHome";
|
public static final String GET_USER_HOME = "getUserHome";
|
||||||
public static final String GET_USER_BASEINFO = "getUserBaseinfo";
|
public static final String GET_USER_BASEINFO = "getUserBaseinfo";
|
||||||
|
|||||||
@@ -176,7 +176,7 @@ public class CommonHttpUtil {
|
|||||||
}
|
}
|
||||||
Log.i("来了", lang);
|
Log.i("来了", lang);
|
||||||
//或者仅仅使用 locale = Locale.getDefault(); 不需要考虑接口 deprecated(弃用)问题
|
//或者仅仅使用 locale = Locale.getDefault(); 不需要考虑接口 deprecated(弃用)问题
|
||||||
HttpClient.getInstance().get("Home.getConfig", CommonHttpConsts.GET_CONFIG)
|
HttpClient.getInstance().get("ylahuoquzhuyepeizhixinxi", CommonHttpConsts.GET_CONFIG)
|
||||||
.params("langue", lang)
|
.params("langue", lang)
|
||||||
.params("version", "" + VersionUtil.getVersion())
|
.params("version", "" + VersionUtil.getVersion())
|
||||||
.params("from", "android")
|
.params("from", "android")
|
||||||
@@ -243,7 +243,7 @@ public class CommonHttpUtil {
|
|||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
String error = "info[0]:" + info[0] + "\n\n\n" + "Exception:" + e.getClass() + "---message--->" + e.getMessage();
|
String error = "info[0]:" + info[0] + "\n\n" + "Exception:" + e.getClass() + "---message--->" + e.getMessage();
|
||||||
ErrorActivity.forward("GetConfig接口返回数据异常", error);
|
ErrorActivity.forward("GetConfig接口返回数据异常", error);
|
||||||
}
|
}
|
||||||
} else if (code == 1000) {
|
} else if (code == 1000) {
|
||||||
@@ -313,7 +313,7 @@ public class CommonHttpUtil {
|
|||||||
ToastUtil.show(WordUtil.getString(R.string.cannot_follow_self));
|
ToastUtil.show(WordUtil.getString(R.string.cannot_follow_self));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
HttpClient.getInstance().get("User.setAttents", tag)
|
HttpClient.getInstance().get("ylashezhiguanzhu", tag)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
@@ -347,7 +347,7 @@ public class CommonHttpUtil {
|
|||||||
} else {
|
} else {
|
||||||
isGoogle = "-1";
|
isGoogle = "-1";
|
||||||
}
|
}
|
||||||
HttpClient.getInstance().get("User.getBalance", CommonHttpConsts.GET_BALANCE)
|
HttpClient.getInstance().get("ylahuoquwodezuanshi", CommonHttpConsts.GET_BALANCE)
|
||||||
.params("type", 0)
|
.params("type", 0)
|
||||||
.params("isGooglePay", isGoogle)
|
.params("isGooglePay", isGoogle)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -404,7 +404,7 @@ public class CommonHttpUtil {
|
|||||||
* 检查token是否失效
|
* 检查token是否失效
|
||||||
*/
|
*/
|
||||||
public static void checkTokenInvalid() {
|
public static void checkTokenInvalid() {
|
||||||
HttpClient.getInstance().get("User.ifToken", CommonHttpConsts.CHECK_TOKEN_INVALID)
|
HttpClient.getInstance().get("ylashezhijiaoyouzhaopianzhuangtai", CommonHttpConsts.CHECK_TOKEN_INVALID)
|
||||||
.execute(NO_CALLBACK);
|
.execute(NO_CALLBACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -417,7 +417,7 @@ public class CommonHttpUtil {
|
|||||||
.params("purchaseToken", purchaseToken)
|
.params("purchaseToken", purchaseToken)
|
||||||
.params("productId", productId)
|
.params("productId", productId)
|
||||||
.params("orderno", orderno)
|
.params("orderno", orderno)
|
||||||
.params("package_name", "com.newpandora.yo")
|
.params("package_name", CommonAppContext.sInstance.getPackageName())
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -425,16 +425,16 @@ public class CommonHttpUtil {
|
|||||||
HttpClient.getInstance().get(CommonHttpConsts.NOTIFY_GOOGLE, CommonHttpConsts.NOTIFY_GOOGLE)
|
HttpClient.getInstance().get(CommonHttpConsts.NOTIFY_GOOGLE, CommonHttpConsts.NOTIFY_GOOGLE)
|
||||||
.params("purchaseToken", purchaseToken)
|
.params("purchaseToken", purchaseToken)
|
||||||
.params("productId", productId)
|
.params("productId", productId)
|
||||||
.params("package_name", "com.newpandora.yo")
|
.params("package_name", CommonAppContext.sInstance.getPackageName())
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Google_sec_pay(String purchaseToken, String orderNo, String tradeNo, HttpCallback callback) {
|
public static void Google_sec_pay(String purchaseToken, String orderNo, String tradeNo, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Charge.Google_sec_pay", "Charge.Google_sec_pay")
|
HttpClient.getInstance().get("ylagugedingdanyanzheng", "Charge.Google_sec_pay")
|
||||||
.params("purchaseToken", purchaseToken)
|
.params("purchaseToken", purchaseToken)
|
||||||
.params("orderno", orderNo)
|
.params("orderno", orderNo)
|
||||||
.params("trade_no", tradeNo)
|
.params("trade_no", tradeNo)
|
||||||
.params("package_name", "com.newpandora.yo")
|
.params("package_name", CommonAppContext.sInstance.getPackageName())
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -483,7 +483,7 @@ public class CommonHttpUtil {
|
|||||||
* 用户个人主页信息
|
* 用户个人主页信息
|
||||||
*/
|
*/
|
||||||
public static void getUserBaseinfo(String touid, HttpCallback callback) {
|
public static void getUserBaseinfo(String touid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.getUserBaseinfo", CommonHttpConsts.GET_USER_BASEINFO)
|
HttpClient.getInstance().get("ylahuoquyonghujichuxinxi", CommonHttpConsts.GET_USER_BASEINFO)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
} /**
|
} /**
|
||||||
@@ -494,21 +494,14 @@ public class CommonHttpUtil {
|
|||||||
if(StringUtil.isEmpty(uid)){
|
if(StringUtil.isEmpty(uid)){
|
||||||
uid="NotLogin_"+ DeviceUtils.getUniqueDeviceId();
|
uid="NotLogin_"+ DeviceUtils.getUniqueDeviceId();
|
||||||
}
|
}
|
||||||
HttpClient.getInstance().get("Pdluserhome.getQiNiuToken3", "Pdluserhome.getQiNiuToken3")
|
HttpClient.getInstance().get("ylahuoquqiniushangchuanlingpaiv3", "Pdluserhome.getQiNiuToken3")
|
||||||
.params("uid",uid)
|
.params("uid",uid)
|
||||||
.params("token", CommonAppConfig.getInstance().getToken())
|
.params("token", CommonAppConfig.getInstance().getToken())
|
||||||
.params("file_name", fileName)
|
.params("file_name", fileName)
|
||||||
.params("ext", ".zip")
|
.params("ext", ".zip")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
//
|
|
||||||
// //埋点唯一性
|
|
||||||
// public static void setAdvertisingChannels(String operation, HttpCallback callback) {
|
|
||||||
// HttpClient.getInstance().get("Tx.setAdvertisingChannels", CommonHttpConsts.GET_USER_BASEINFO)
|
|
||||||
// .params("operation", operation)
|
|
||||||
// .params("marking", Adjust.getAdid())
|
|
||||||
// .execute(callback);
|
|
||||||
// }
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发送动态
|
* 发送动态
|
||||||
@@ -521,7 +514,7 @@ public class CommonHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void pushCommunity(boolean isImgOrVideo, String content, String talkId, String fileAry, String videoUrl, String createAt, HttpCallback callback) {
|
public static void pushCommunity(boolean isImgOrVideo, String content, String talkId, String fileAry, String videoUrl, String createAt, HttpCallback callback) {
|
||||||
HttpClient.getInstance().post("Pdlcommunity.sendDynamic", CommonHttpConsts.GET_USER_BASEINFO)
|
HttpClient.getInstance().post("ylapfabudongtai", CommonHttpConsts.GET_USER_BASEINFO)
|
||||||
.params("img_or_video", isImgOrVideo ? 1 : 2)
|
.params("img_or_video", isImgOrVideo ? 1 : 2)
|
||||||
.params("content", content)
|
.params("content", content)
|
||||||
.params("talk_id", talkId)
|
.params("talk_id", talkId)
|
||||||
@@ -537,7 +530,7 @@ public class CommonHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void getCommunityHotList(int p, HttpCallback callback) {
|
public static void getCommunityHotList(int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.getHotDynamicList", "Pdlcommunity.getHotDynamicList")
|
HttpClient.getInstance().get("ylaphuoquremendongtai", "Pdlcommunity.getHotDynamicList")
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -548,7 +541,7 @@ public class CommonHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void getCommunityComment(String dynamic_id, String dynamic_uid, int p, HttpCallback callback) {
|
public static void getCommunityComment(String dynamic_id, String dynamic_uid, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.getDynamicCommentList", "Pdlcommunity.getDynamicCommentList")
|
HttpClient.getInstance().get("ylaphuoqudongtaipinglunliebiao", "Pdlcommunity.getDynamicCommentList")
|
||||||
.params("dynamic_id", dynamic_id)
|
.params("dynamic_id", dynamic_id)
|
||||||
.params("dynamic_uid", dynamic_uid)
|
.params("dynamic_uid", dynamic_uid)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
@@ -561,7 +554,7 @@ public class CommonHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void dynamicLove(String dynamic_id, HttpCallback callback) {
|
public static void dynamicLove(String dynamic_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.dynamicLove", "Pdlcommunity.dynamicLove")
|
HttpClient.getInstance().get("ylaphuoqudongtaidianzan", "Pdlcommunity.dynamicLove")
|
||||||
.params("dynamic_id", dynamic_id)
|
.params("dynamic_id", dynamic_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -572,7 +565,7 @@ public class CommonHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void dynamicReply(String dynamic_id, String to_comment_id, String content, HttpCallback callback) {
|
public static void dynamicReply(String dynamic_id, String to_comment_id, String content, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.sendDynamicComment", "Pdlcommunity.sendDynamicComment")
|
HttpClient.getInstance().get("ylapfabudongtaipinglun", "Pdlcommunity.sendDynamicComment")
|
||||||
.params("dynamic_id", dynamic_id)
|
.params("dynamic_id", dynamic_id)
|
||||||
.params("content", content)
|
.params("content", content)
|
||||||
.params("to_comment_id", to_comment_id)
|
.params("to_comment_id", to_comment_id)
|
||||||
@@ -583,7 +576,7 @@ public class CommonHttpUtil {
|
|||||||
* 获取动态-发现
|
* 获取动态-发现
|
||||||
*/
|
*/
|
||||||
public static void getCommunityFind(int p, HttpCallback callback) {
|
public static void getCommunityFind(int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.getFindDynamicList", "Pdlcommunity.getFindDynamicList")
|
HttpClient.getInstance().get("ylaphuoqufaxiandongtai", "Pdlcommunity.getFindDynamicList")
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -592,7 +585,7 @@ public class CommonHttpUtil {
|
|||||||
* 获取动态-关注
|
* 获取动态-关注
|
||||||
*/
|
*/
|
||||||
public static void getCommunityFollow(int p, HttpCallback callback) {
|
public static void getCommunityFollow(int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.getAttentionDynamicList", "Pdlcommunity.getAttentionDynamicList")
|
HttpClient.getInstance().get("ylaphuoquguanzhudongtai", "Pdlcommunity.getAttentionDynamicList")
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -601,19 +594,19 @@ public class CommonHttpUtil {
|
|||||||
* 获取动态-分类
|
* 获取动态-分类
|
||||||
*/
|
*/
|
||||||
public static void getTag(HttpCallback callback) {
|
public static void getTag(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.getHotTalk", "Pdlcommunity.getHotTalk")
|
HttpClient.getInstance().get("ylahuoquzuixinhuati", "Pdlcommunity.getHotTalk")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void getTalkHotDynamicList(int talkId, int p, HttpCallback callback) {
|
public static void getTalkHotDynamicList(int talkId, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.getTalkHotDynamicList", "Pdlcommunity.getTalkHotDynamicList")
|
HttpClient.getInstance().get("ylaphuoquremenhuatidongtai", "Pdlcommunity.getTalkHotDynamicList")
|
||||||
.params("talk_id", talkId)
|
.params("talk_id", talkId)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void getOtherDynamicList(String toUid, HttpCallback callback) {
|
public static void getOtherDynamicList(String toUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.getOtherDynamicList", "Pdlcommunity.getOtherDynamicList")
|
HttpClient.getInstance().get("ylaphuoquqitadongtai", "Pdlcommunity.getOtherDynamicList")
|
||||||
.params("tuid", toUid)
|
.params("tuid", toUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -622,7 +615,7 @@ public class CommonHttpUtil {
|
|||||||
* 动态-评论-删除
|
* 动态-评论-删除
|
||||||
*/
|
*/
|
||||||
public static void delCom(String comment_id, HttpCallback callback) {
|
public static void delCom(String comment_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.delComment", "Pdlcommunity.delComment")
|
HttpClient.getInstance().get("ylapshanchuzijidongtaizijipinglun", "Pdlcommunity.delComment")
|
||||||
.params("comment_id", comment_id)
|
.params("comment_id", comment_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -631,7 +624,7 @@ public class CommonHttpUtil {
|
|||||||
* 动态-不感兴趣
|
* 动态-不感兴趣
|
||||||
*/
|
*/
|
||||||
public static void noInterest(String uid, HttpCallback callback) {
|
public static void noInterest(String uid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdluser.setBlack", "User.setBlack")
|
HttpClient.getInstance().get("ylaquxiaolahei", "User.setBlack")
|
||||||
.params("touid", uid)
|
.params("touid", uid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -640,7 +633,7 @@ public class CommonHttpUtil {
|
|||||||
* 用户主页-用户数据
|
* 用户主页-用户数据
|
||||||
*/
|
*/
|
||||||
public static void getUserInfoTop(String uid, HttpCallback callback) {
|
public static void getUserInfoTop(String uid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdluserhome.getUserHomeTopInfo", "Pdluserhome.getUserHomeTopInfo")
|
HttpClient.getInstance().get("ylahuoqugerenzhuyetoubuxinxi", "Pdluserhome.getUserHomeTopInfo")
|
||||||
.params("select_uid", uid)
|
.params("select_uid", uid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -649,7 +642,7 @@ public class CommonHttpUtil {
|
|||||||
* 上传文件 获取七牛云token的接口
|
* 上传文件 获取七牛云token的接口
|
||||||
*/
|
*/
|
||||||
public static void getUploadQiNiuToken(HttpCallback callback, boolean isImg) {
|
public static void getUploadQiNiuToken(HttpCallback callback, boolean isImg) {
|
||||||
HttpClient.getInstance().get("Pdluserhome.getQiNiuToken", "Pdluserhome.getQiNiuToken")
|
HttpClient.getInstance().get("ylahuoquqiniushangchuanlingpai", "Pdluserhome.getQiNiuToken")
|
||||||
.params("uid", CommonAppConfig.getInstance().getUid())
|
.params("uid", CommonAppConfig.getInstance().getUid())
|
||||||
.params("token", CommonAppConfig.getInstance().getToken())
|
.params("token", CommonAppConfig.getInstance().getToken())
|
||||||
.params("ext", isImg ? ".jpeg" : ".mp4")
|
.params("ext", isImg ? ".jpeg" : ".mp4")
|
||||||
@@ -659,7 +652,7 @@ public class CommonHttpUtil {
|
|||||||
* 上传文件 获取七牛云token的接口
|
* 上传文件 获取七牛云token的接口
|
||||||
*/
|
*/
|
||||||
public static void getUploadQiNiuTokenNew(HttpCallback callback, boolean isImg) {
|
public static void getUploadQiNiuTokenNew(HttpCallback callback, boolean isImg) {
|
||||||
HttpClient.getInstance().get("Pdluserhome.getQiNiuToken2", "Pdluserhome.getQiNiuToken2")
|
HttpClient.getInstance().get("ylahuoquqiniushangchuanlingpaiv2", "Pdluserhome.getQiNiuToken2")
|
||||||
.params("uid", CommonAppConfig.getInstance().getUid())
|
.params("uid", CommonAppConfig.getInstance().getUid())
|
||||||
.params("token", CommonAppConfig.getInstance().getToken())
|
.params("token", CommonAppConfig.getInstance().getToken())
|
||||||
.params("ext", isImg ? ".jpeg" : ".mp4")
|
.params("ext", isImg ? ".jpeg" : ".mp4")
|
||||||
@@ -669,7 +662,7 @@ public class CommonHttpUtil {
|
|||||||
* 修改用户背景墙
|
* 修改用户背景墙
|
||||||
*/
|
*/
|
||||||
public static void uploadUserInfoImg(String imgs, HttpCallback callback) {
|
public static void uploadUserInfoImg(String imgs, HttpCallback callback) {
|
||||||
HttpClient.getInstance().post("Pdluserhome.saveUserHomeBanner", "Userhome.saveUserHomeBanner")
|
HttpClient.getInstance().post("ylabaocungerenzhuyebanner", "Userhome.saveUserHomeBanner")
|
||||||
.params("home_banner_url_ary", imgs)
|
.params("home_banner_url_ary", imgs)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -678,7 +671,7 @@ public class CommonHttpUtil {
|
|||||||
* 动态-删除
|
* 动态-删除
|
||||||
*/
|
*/
|
||||||
public static void delActive(String dynamic_id, HttpCallback callback) {
|
public static void delActive(String dynamic_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdlcommunity.delDynamic", "Pdlcommunity.delDynamic")
|
HttpClient.getInstance().get("ylapyonghushanchudongtai", "Pdlcommunity.delDynamic")
|
||||||
.params("dynamic_id", dynamic_id)
|
.params("dynamic_id", dynamic_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -687,7 +680,7 @@ public class CommonHttpUtil {
|
|||||||
* 获取打招呼推荐列表
|
* 获取打招呼推荐列表
|
||||||
*/
|
*/
|
||||||
public static void getMainMsgRecommend(HttpCallback callback) {
|
public static void getMainMsgRecommend(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdluser.getRecommendUser", "Pdluser.getRecommendUser")
|
HttpClient.getInstance().get("ylazhubotuijianye", "Pdluser.getRecommendUser")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -697,13 +690,13 @@ public class CommonHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void sayHi(String toUid,HttpCallback callback) {
|
public static void sayHi(String toUid,HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdluser.liveCall", "Pdluser.liveCall")
|
HttpClient.getInstance().get("ylazhubodazhaohu", "Pdluser.liveCall")
|
||||||
.params("target_uid",toUid)
|
.params("target_uid",toUid)
|
||||||
.params("behavior_type","5")
|
.params("behavior_type","5")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
public static void sayHi(String toUid,String type,HttpCallback callback) {
|
public static void sayHi(String toUid,String type,HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdluser.liveCall", "Pdluser.liveCall")
|
HttpClient.getInstance().get("ylazhubodazhaohu", "Pdluser.liveCall")
|
||||||
.params("target_uid",toUid)
|
.params("target_uid",toUid)
|
||||||
.params("behavior_type",type)
|
.params("behavior_type",type)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -715,7 +708,7 @@ public class CommonHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void getUserOnline(String toUid,HttpCallback callback) {
|
public static void getUserOnline(String toUid,HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Pdluser.getUserOnline", "Pdluser.getUserOnline")
|
HttpClient.getInstance().get("ylahuoquyonghuzaixianzhuangtai", "Pdluser.getUserOnline")
|
||||||
.params("uids",toUid)
|
.params("uids",toUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ public class HttpClient {
|
|||||||
private String mUrl;
|
private String mUrl;
|
||||||
|
|
||||||
private HttpClient() {
|
private HttpClient() {
|
||||||
mUrl = CommonAppConfig.HOST + "/api/public/?service=";
|
mUrl = CommonAppConfig.HOST + "/";//去掉 api/public/?service="
|
||||||
}
|
}
|
||||||
|
|
||||||
public static HttpClient getInstance() {
|
public static HttpClient getInstance() {
|
||||||
|
|||||||
@@ -0,0 +1,97 @@
|
|||||||
|
package com.yunbao.common.http;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import com.google.gson.TypeAdapter;
|
||||||
|
import com.google.gson.reflect.TypeToken;
|
||||||
|
import com.yunbao.common.utils.AesUtils;
|
||||||
|
import com.yunbao.common.utils.L;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.lang.annotation.Annotation;
|
||||||
|
import java.lang.reflect.Type;
|
||||||
|
import java.util.Base64;
|
||||||
|
|
||||||
|
import okhttp3.RequestBody;
|
||||||
|
import okhttp3.ResponseBody;
|
||||||
|
import retrofit2.Converter;
|
||||||
|
import retrofit2.Retrofit;
|
||||||
|
|
||||||
|
public final class JavaConverterFactory extends Converter.Factory {
|
||||||
|
/**
|
||||||
|
* Create an instance using a default {@link Gson} instance for conversion. Encoding to JSON and
|
||||||
|
* decoding from JSON (when no charset is specified by a header) will use UTF-8.
|
||||||
|
*/
|
||||||
|
public static JavaConverterFactory create() {
|
||||||
|
return create(new Gson());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create an instance using {@code gson} for conversion. Encoding to JSON and
|
||||||
|
* decoding from JSON (when no charset is specified by a header) will use UTF-8.
|
||||||
|
*/
|
||||||
|
public static JavaConverterFactory create(Gson gson) {
|
||||||
|
return new JavaConverterFactory(gson);
|
||||||
|
}
|
||||||
|
|
||||||
|
private final Gson gson;
|
||||||
|
|
||||||
|
private JavaConverterFactory(Gson gson) {
|
||||||
|
if (gson == null) throw new NullPointerException("gson == null");
|
||||||
|
this.gson = gson;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Converter<ResponseBody, ?> responseBodyConverter(Type type, Annotation[] annotations, Retrofit retrofit) {
|
||||||
|
TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type));
|
||||||
|
return new JsonResponseBodyConverter<>(gson, adapter);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Converter<?, RequestBody> requestBodyConverter(Type type, Annotation[] parameterAnnotations, Annotation[] methodAnnotations, Retrofit retrofit) {
|
||||||
|
return super.requestBodyConverter(type, parameterAnnotations, methodAnnotations, retrofit);
|
||||||
|
}
|
||||||
|
|
||||||
|
final class JsonResponseBodyConverter<T> implements Converter<ResponseBody, T> {
|
||||||
|
private final Gson gson;
|
||||||
|
private final TypeAdapter<T> adapter;
|
||||||
|
|
||||||
|
JsonResponseBodyConverter(Gson gson, TypeAdapter<T> adapter) {
|
||||||
|
this.gson = gson;
|
||||||
|
this.adapter = adapter;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public T convert(ResponseBody value) throws IOException {
|
||||||
|
String response = value.string();
|
||||||
|
String allResponseData;
|
||||||
|
L.e("解密前::" + response);
|
||||||
|
JSONObject jsonObject = JSONObject.parseObject(response);
|
||||||
|
allResponseData = jsonObject.getString("data");
|
||||||
|
if (allResponseData.indexOf(":") <= 0) {
|
||||||
|
byte[] decodedData = null;
|
||||||
|
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
|
||||||
|
decodedData = Base64.getDecoder().decode(allResponseData);
|
||||||
|
}
|
||||||
|
response = AesUtils.decryptToString(decodedData);
|
||||||
|
jsonObject.put("data", JSONObject.parseObject(response));
|
||||||
|
|
||||||
|
response = JSON.toJSONString(jsonObject);
|
||||||
|
L.e("解密后::" + response);
|
||||||
|
//获取加密数据,解密,之后再让adapter去处理json串,解析具体的数据就可以了
|
||||||
|
try {
|
||||||
|
return adapter.fromJson(response);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} finally {
|
||||||
|
value.close();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return adapter.fromJson(response);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,5 +1,18 @@
|
|||||||
package com.yunbao.common.http;
|
package com.yunbao.common.http;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONException;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.blankj.utilcode.util.GsonUtils;
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import com.yunbao.common.bean.AdBean;
|
||||||
|
import com.yunbao.common.utils.AesUtils;
|
||||||
|
import com.yunbao.common.utils.L;
|
||||||
|
|
||||||
|
import java.util.Base64;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2017/8/5.
|
* Created by cxf on 2017/8/5.
|
||||||
*/
|
*/
|
||||||
@@ -7,7 +20,7 @@ package com.yunbao.common.http;
|
|||||||
public class JsonBean {
|
public class JsonBean {
|
||||||
private int ret;
|
private int ret;
|
||||||
private String msg;
|
private String msg;
|
||||||
private Data data;
|
private String data;
|
||||||
|
|
||||||
public int getRet() {
|
public int getRet() {
|
||||||
return ret;
|
return ret;
|
||||||
@@ -26,10 +39,47 @@ public class JsonBean {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Data getData() {
|
public Data getData() {
|
||||||
return data;
|
L.e("data:" + data);
|
||||||
|
if (data.indexOf(":") > 0) {
|
||||||
|
L.e("未加密::" + data);
|
||||||
|
return JSON.parseObject(data, Data.class);
|
||||||
|
//return GsonUtils.fromJson(data, Data.class);
|
||||||
|
} else {
|
||||||
|
Data resultData = new Data();
|
||||||
|
byte[] decodedData = null;
|
||||||
|
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
|
||||||
|
decodedData = Base64.getDecoder().decode(data);
|
||||||
|
}
|
||||||
|
String decryptedText = AesUtils.decryptToString(decodedData);
|
||||||
|
L.e("解码前:" + data);
|
||||||
|
L.e("解码前-转成base64:" + decodedData);
|
||||||
|
L.e("解码前-解密後:" + decryptedText);
|
||||||
|
JSONObject object = JSON.parseObject(decryptedText);
|
||||||
|
try {
|
||||||
|
JSONArray jsonArray = object.getJSONArray("info");
|
||||||
|
String[] array = new String[jsonArray.size()];
|
||||||
|
for (int i = 0; i < array.length; i++) {
|
||||||
|
array[i] = jsonArray.getString(i);
|
||||||
|
}
|
||||||
|
resultData.setInfo(array);
|
||||||
|
resultData.setCode(object.getInteger("code"));
|
||||||
|
resultData.setMsg(object.getString("msg"));
|
||||||
|
} catch (Exception e) {
|
||||||
|
try {
|
||||||
|
String[] array = new String[1];
|
||||||
|
array[0] = object.getString("info");
|
||||||
|
resultData.setInfo(array);
|
||||||
|
resultData.setCode(object.getInteger("code"));
|
||||||
|
resultData.setMsg(object.getString("msg"));
|
||||||
|
} catch (JSONException ex) {
|
||||||
|
L.e("字符串格式错误");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return resultData;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setData(Data data) {
|
public void setData(String data) {
|
||||||
this.data = data;
|
this.data = data;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取当前直播间的用户列表
|
* 获取当前直播间的用户列表
|
||||||
*/
|
*/
|
||||||
public static void getUserList(String liveuid, String stream, String type, int p, HttpCallback callback) {
|
public static void getUserList(String liveuid, String stream, String type, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getUserLists", LiveHttpConsts.GET_USER_LIST)
|
HttpClient.getInstance().get("ylazhibojianyonghuliebiao", LiveHttpConsts.GET_USER_LIST)
|
||||||
.params("liveuid", liveuid)
|
.params("liveuid", liveuid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("type", type)
|
.params("type", type)
|
||||||
@@ -51,7 +51,7 @@ public class LiveHttpUtil {
|
|||||||
* @param callback 回调
|
* @param callback 回调
|
||||||
*/
|
*/
|
||||||
public static void getUserRankList(String liveUid, HttpCallback callback) {
|
public static void getUserRankList(String liveUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Contribute.index", LiveHttpConsts.GET_USER_LIST)
|
HttpClient.getInstance().get("ylaxiaofeitongji", LiveHttpConsts.GET_USER_LIST)
|
||||||
.params("uid", liveUid)
|
.params("uid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -60,7 +60,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取当前直播间的连麦用户列表
|
* 获取当前直播间的连麦用户列表
|
||||||
*/
|
*/
|
||||||
public static void getMicList(String liveuid, int p, HttpCallback callback) {
|
public static void getMicList(String liveuid, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getDrLm", "Live.getDrLm")
|
HttpClient.getInstance().get("ylahuoqulianmaizhuangtai", "ylahuoqulianmaizhuangtai")
|
||||||
.params("uid", liveuid, true)
|
.params("uid", liveuid, true)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -69,7 +69,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取活动列表
|
* 获取活动列表
|
||||||
*/
|
*/
|
||||||
public static void getHDList(HttpCallback callback) {
|
public static void getHDList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Active.getActiveList", "Active.getActiveList")
|
HttpClient.getInstance().get("ylahuoquhuodongliebiao", "ylahuoquhuodongliebiao")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -80,7 +80,7 @@ public class LiveHttpUtil {
|
|||||||
* @param stream 主播的stream
|
* @param stream 主播的stream
|
||||||
*/
|
*/
|
||||||
public static void roomCharge(String liveUid, String stream, HttpCallback callback) {
|
public static void roomCharge(String liveUid, String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.roomCharge", LiveHttpConsts.ROOM_CHARGE)
|
HttpClient.getInstance().get("ylafangjiankoufei", LiveHttpConsts.ROOM_CHARGE)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -94,7 +94,7 @@ public class LiveHttpUtil {
|
|||||||
* @param stream 主播的stream
|
* @param stream 主播的stream
|
||||||
*/
|
*/
|
||||||
public static void timeCharge(String liveUid, String stream, HttpCallback callback) {
|
public static void timeCharge(String liveUid, String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.timeCharge", LiveHttpConsts.TIME_CHARGE)
|
HttpClient.getInstance().get("ylafangjianjishikoufei", LiveHttpConsts.TIME_CHARGE)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -105,7 +105,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取用户余额
|
* 获取用户余额
|
||||||
*/
|
*/
|
||||||
public static void getCoin(HttpCallback callback) {
|
public static void getCoin(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getCoin", LiveHttpConsts.GET_COIN)
|
HttpClient.getInstance().get("ylazhibojianhuoquyonghuyue", LiveHttpConsts.GET_COIN)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,7 +115,7 @@ public class LiveHttpUtil {
|
|||||||
* @param touid 对方的uid
|
* @param touid 对方的uid
|
||||||
*/
|
*/
|
||||||
public static void getLiveRecord(String touid, int p, HttpCallback callback) {
|
public static void getLiveRecord(String touid, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.getLiverecord", LiveHttpConsts.GET_LIVE_RECORD)
|
HttpClient.getInstance().get("ylahuoquzhibojilu", LiveHttpConsts.GET_LIVE_RECORD)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -127,7 +127,7 @@ public class LiveHttpUtil {
|
|||||||
* @param recordId 视频的id
|
* @param recordId 视频的id
|
||||||
*/
|
*/
|
||||||
public static void getAliCdnRecord(String recordId, HttpCallback callback) {
|
public static void getAliCdnRecord(String recordId, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.getAliCdnRecord", LiveHttpConsts.GET_ALI_CDN_RECORD)
|
HttpClient.getInstance().get("ylahuoqulubojilu", LiveHttpConsts.GET_ALI_CDN_RECORD)
|
||||||
.params("id", recordId)
|
.params("id", recordId)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -137,7 +137,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取主播印象列表
|
* 获取主播印象列表
|
||||||
*/
|
*/
|
||||||
public static void getAllImpress(String touid, HttpCallback callback) {
|
public static void getAllImpress(String touid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.getUserLabel", LiveHttpConsts.GET_ALL_IMPRESS)
|
HttpClient.getInstance().get("ylahuoquyonghuyingxiangbiaoqian", LiveHttpConsts.GET_ALL_IMPRESS)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -146,7 +146,7 @@ public class LiveHttpUtil {
|
|||||||
* 给主播设置印象
|
* 给主播设置印象
|
||||||
*/
|
*/
|
||||||
public static void setImpress(String touid, String ImpressIDs, HttpCallback callback) {
|
public static void setImpress(String touid, String ImpressIDs, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.setUserLabel", LiveHttpConsts.SET_IMPRESS)
|
HttpClient.getInstance().get("ylashezhiyonghuyingxiangbiaoqian", LiveHttpConsts.SET_IMPRESS)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.params("labels", ImpressIDs)
|
.params("labels", ImpressIDs)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -157,7 +157,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取当前直播间的管理员列表
|
* 获取当前直播间的管理员列表
|
||||||
*/
|
*/
|
||||||
public static void getAdminList(String liveUid, HttpCallback callback) {
|
public static void getAdminList(String liveUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getAdminList", LiveHttpConsts.GET_ADMIN_LIST)
|
HttpClient.getInstance().get("ylahuoquguanliyuanliebiao", LiveHttpConsts.GET_ADMIN_LIST)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -166,7 +166,7 @@ public class LiveHttpUtil {
|
|||||||
* 主播设置或取消直播间的管理员
|
* 主播设置或取消直播间的管理员
|
||||||
*/
|
*/
|
||||||
public static void setAdmin(String liveUid, String touid, HttpCallback callback) {
|
public static void setAdmin(String liveUid, String touid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.setAdmin", LiveHttpConsts.SET_ADMIN)
|
HttpClient.getInstance().get("ylashezhiguanliyuanzhuangtai", LiveHttpConsts.SET_ADMIN)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -176,7 +176,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取直播间的禁言列表
|
* 获取直播间的禁言列表
|
||||||
*/
|
*/
|
||||||
public static void getLiveShutUpList(String liveUid, int p, HttpCallback callback) {
|
public static void getLiveShutUpList(String liveUid, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Livemanage.getShutList", LiveHttpConsts.GET_LIVE_SHUT_UP_LIST)
|
HttpClient.getInstance().get("ylajinyanyonghu", LiveHttpConsts.GET_LIVE_SHUT_UP_LIST)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -186,7 +186,7 @@ public class LiveHttpUtil {
|
|||||||
* 直播间解除禁言
|
* 直播间解除禁言
|
||||||
*/
|
*/
|
||||||
public static void liveCancelShutUp(String liveUid, String toUid, HttpCallback callback) {
|
public static void liveCancelShutUp(String liveUid, String toUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Livemanage.cancelShut", LiveHttpConsts.LIVE_CANCEL_SHUT_UP)
|
HttpClient.getInstance().get("ylajiechujinyan", LiveHttpConsts.LIVE_CANCEL_SHUT_UP)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("touid", toUid)
|
.params("touid", toUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -196,7 +196,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取直播间的拉黑列表
|
* 获取直播间的拉黑列表
|
||||||
*/
|
*/
|
||||||
public static void getLiveBlackList(String liveUid, int p, HttpCallback callback) {
|
public static void getLiveBlackList(String liveUid, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Livemanage.getKickList", LiveHttpConsts.GET_LIVE_BLACK_LIST)
|
HttpClient.getInstance().get("ylatichuyonghu", LiveHttpConsts.GET_LIVE_BLACK_LIST)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -206,7 +206,7 @@ public class LiveHttpUtil {
|
|||||||
* 直播间解除拉黑
|
* 直播间解除拉黑
|
||||||
*/
|
*/
|
||||||
public static void liveCancelBlack(String liveUid, String toUid, HttpCallback callback) {
|
public static void liveCancelBlack(String liveUid, String toUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Livemanage.cancelKick", LiveHttpConsts.LIVE_CANCEL_BLACK)
|
HttpClient.getInstance().get("ylajiechutichu", LiveHttpConsts.LIVE_CANCEL_BLACK)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("touid", toUid)
|
.params("touid", toUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -217,7 +217,7 @@ public class LiveHttpUtil {
|
|||||||
* 直播结束后,获取直播收益,观看人数,时长等信息
|
* 直播结束后,获取直播收益,观看人数,时长等信息
|
||||||
*/
|
*/
|
||||||
public static void getLiveEndInfo(String stream, HttpCallback callback) {
|
public static void getLiveEndInfo(String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.stopInfo", LiveHttpConsts.GET_LIVE_END_INFO)
|
HttpClient.getInstance().get("ylazhibojieshuxinxi", LiveHttpConsts.GET_LIVE_END_INFO)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -226,7 +226,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取直播间举报内容列表
|
* 获取直播间举报内容列表
|
||||||
*/
|
*/
|
||||||
public static void getLiveReportList(HttpCallback callback) {
|
public static void getLiveReportList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getReportClass", LiveHttpConsts.GET_LIVE_REPORT_LIST)
|
HttpClient.getInstance().get("ylahuoqujubaopeizhixinxi", LiveHttpConsts.GET_LIVE_REPORT_LIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -234,7 +234,7 @@ public class LiveHttpUtil {
|
|||||||
* 举报用户
|
* 举报用户
|
||||||
*/
|
*/
|
||||||
public static void setReport(String touid, String content, HttpCallback callback) {
|
public static void setReport(String touid, String content, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.setReport", LiveHttpConsts.SET_REPORT)
|
HttpClient.getInstance().get("ylayonghujubao", LiveHttpConsts.SET_REPORT)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.params("content", content)
|
.params("content", content)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -244,7 +244,7 @@ public class LiveHttpUtil {
|
|||||||
* 举报用户 + 图片
|
* 举报用户 + 图片
|
||||||
*/
|
*/
|
||||||
public static void setReport(String touid,String report_argument, String content, File file1, File file2, File file3, String videoId, HttpCallback callback) {
|
public static void setReport(String touid,String report_argument, String content, File file1, File file2, File file3, String videoId, HttpCallback callback) {
|
||||||
PostRequest<JsonBean> request = HttpClient.getInstance().post("Live.setReport", LiveHttpConsts.SET_REPORT)
|
PostRequest<JsonBean> request = HttpClient.getInstance().post("ylayonghujubao", LiveHttpConsts.SET_REPORT)
|
||||||
.isMultipart(true)
|
.isMultipart(true)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.params("report_argument", report_argument)
|
.params("report_argument", report_argument)
|
||||||
@@ -268,7 +268,7 @@ public class LiveHttpUtil {
|
|||||||
* 直播间点击聊天列表和头像出现的弹窗
|
* 直播间点击聊天列表和头像出现的弹窗
|
||||||
*/
|
*/
|
||||||
public static void getLiveUser(String touid, String liveUid, HttpCallback callback) {
|
public static void getLiveUser(String touid, String liveUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getPop", LiveHttpConsts.GET_LIVE_USER)
|
HttpClient.getInstance().get("ylazhibojiantanchuangxinxi", LiveHttpConsts.GET_LIVE_USER)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -278,7 +278,7 @@ public class LiveHttpUtil {
|
|||||||
* 主播或管理员踢人
|
* 主播或管理员踢人
|
||||||
*/
|
*/
|
||||||
public static void kicking(String liveUid, String touid, HttpCallback callback) {
|
public static void kicking(String liveUid, String touid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.kicking", LiveHttpConsts.KICKING)
|
HttpClient.getInstance().get("ylazhibojiantiren", LiveHttpConsts.KICKING)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -294,7 +294,7 @@ public class LiveHttpUtil {
|
|||||||
* @param time 禁言时间 (分)
|
* @param time 禁言时间 (分)
|
||||||
*/
|
*/
|
||||||
public static void setShutUp(String liveUid, String stream, int type, String touid, String time, HttpCallback callback) {
|
public static void setShutUp(String liveUid, String stream, int type, String touid, String time, HttpCallback callback) {
|
||||||
GetRequest<JsonBean> request = HttpClient.getInstance().get("Live.setShutUp", LiveHttpConsts.SET_SHUT_UP)
|
GetRequest<JsonBean> request = HttpClient.getInstance().get("ylazhibojianjinyan", LiveHttpConsts.SET_SHUT_UP)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("type", type)
|
.params("type", type)
|
||||||
@@ -312,7 +312,7 @@ public class LiveHttpUtil {
|
|||||||
* @param type 0表示关闭当前直播 1表示禁播,2表示封禁账号
|
* @param type 0表示关闭当前直播 1表示禁播,2表示封禁账号
|
||||||
*/
|
*/
|
||||||
public static void superCloseRoom(String liveUid, int type, HttpCallback callback) {
|
public static void superCloseRoom(String liveUid, int type, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.superStopRoom", LiveHttpConsts.SUPER_CLOSE_ROOM)
|
HttpClient.getInstance().get("ylachaoguanguanbo", LiveHttpConsts.SUPER_CLOSE_ROOM)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("type", type)
|
.params("type", type)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -323,7 +323,7 @@ public class LiveHttpUtil {
|
|||||||
* 守护商品类型列表
|
* 守护商品类型列表
|
||||||
*/
|
*/
|
||||||
public static void getGuardBuyList(HttpCallback callback) {
|
public static void getGuardBuyList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Guard.getList", LiveHttpConsts.GET_GUARD_BUY_LIST)
|
HttpClient.getInstance().get("ylashouhuliebiaov2", LiveHttpConsts.GET_GUARD_BUY_LIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -331,7 +331,7 @@ public class LiveHttpUtil {
|
|||||||
* 购买守护接口
|
* 购买守护接口
|
||||||
*/
|
*/
|
||||||
public static void buyGuard(String liveUid, String stream, int guardId, int cid, HttpCallback callback) {
|
public static void buyGuard(String liveUid, String stream, int guardId, int cid, HttpCallback callback) {
|
||||||
GetRequest<JsonBean> request = HttpClient.getInstance().get("Guard.buyGuard", LiveHttpConsts.BUY_GUARD)
|
GetRequest<JsonBean> request = HttpClient.getInstance().get("ylagoumaishouhu", LiveHttpConsts.BUY_GUARD)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("guardid", guardId);
|
.params("guardid", guardId);
|
||||||
@@ -347,14 +347,13 @@ public class LiveHttpUtil {
|
|||||||
* 查看主播的守护列表
|
* 查看主播的守护列表
|
||||||
*/
|
*/
|
||||||
public static void getGuardList(String liveUid, int p, HttpCallback callback) {
|
public static void getGuardList(String liveUid, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Guard.getGuardList", LiveHttpConsts.GET_GUARD_LIST)
|
HttpClient.getInstance().get("ylashouhuliebiao", LiveHttpConsts.GET_GUARD_LIST)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void getContactMsg(int page, HttpCallback callback) {
|
public static void getContactMsg(int page, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getContactMsg", "getContactMsg")
|
HttpClient.getInstance().get("ylahuoqulianxifangshixiaoxi", "huoqulianxifangshixiaoxi")
|
||||||
.params("p", page)
|
.params("p", page)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -363,7 +362,7 @@ public class LiveHttpUtil {
|
|||||||
* 观众跟主播连麦时,获取自己的流地址
|
* 观众跟主播连麦时,获取自己的流地址
|
||||||
*/
|
*/
|
||||||
public static void getLinkMicStream(HttpCallback callback) {
|
public static void getLinkMicStream(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Linkmic.requestLVBAddrForLinkMic", LiveHttpConsts.GET_LINK_MIC_STREAM)
|
HttpClient.getInstance().get("ylalianmaituilaliudizhi", LiveHttpConsts.GET_LINK_MIC_STREAM)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -374,7 +373,7 @@ public class LiveHttpUtil {
|
|||||||
* @param pull_url 连麦用户播流地址
|
* @param pull_url 连麦用户播流地址
|
||||||
*/
|
*/
|
||||||
public static void linkMicShowVideo(String touid, String pull_url) {
|
public static void linkMicShowVideo(String touid, String pull_url) {
|
||||||
HttpClient.getInstance().get("Live.showVideo", LiveHttpConsts.LINK_MIC_SHOW_VIDEO)
|
HttpClient.getInstance().get("ylalianmaixinxi", LiveHttpConsts.LINK_MIC_SHOW_VIDEO)
|
||||||
.params("liveuid", CommonAppConfig.getInstance().getUid())
|
.params("liveuid", CommonAppConfig.getInstance().getUid())
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.params("pull_url", pull_url)
|
.params("pull_url", pull_url)
|
||||||
@@ -390,7 +389,7 @@ public class LiveHttpUtil {
|
|||||||
* 主播设置是否允许观众发起连麦
|
* 主播设置是否允许观众发起连麦
|
||||||
*/
|
*/
|
||||||
public static void setLinkMicEnable(boolean linkMicEnable, HttpCallback callback) {
|
public static void setLinkMicEnable(boolean linkMicEnable, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Linkmic.setMic", LiveHttpConsts.SET_LINK_MIC_ENABLE)
|
HttpClient.getInstance().get("ylashezhilianmaikaiguan", LiveHttpConsts.SET_LINK_MIC_ENABLE)
|
||||||
.params("ismic", linkMicEnable ? 1 : 0)
|
.params("ismic", linkMicEnable ? 1 : 0)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -400,7 +399,7 @@ public class LiveHttpUtil {
|
|||||||
* 观众检查主播是否允许连麦
|
* 观众检查主播是否允许连麦
|
||||||
*/
|
*/
|
||||||
public static void checkLinkMicEnable(String liveUid, HttpCallback callback) {
|
public static void checkLinkMicEnable(String liveUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Linkmic.isMic", LiveHttpConsts.CHECK_LINK_MIC_ENABLE)
|
HttpClient.getInstance().get("ylapanduanzhubaoshifoukaiqilianmai", LiveHttpConsts.CHECK_LINK_MIC_ENABLE)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -409,7 +408,7 @@ public class LiveHttpUtil {
|
|||||||
* 连麦pk检查对方主播在线状态
|
* 连麦pk检查对方主播在线状态
|
||||||
*/
|
*/
|
||||||
public static void livePkCheckLive(String liveUid, String stream, String uidStream, HttpCallback callback) {
|
public static void livePkCheckLive(String liveUid, String stream, String uidStream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Home.getisPk", "Home.getisPk")
|
HttpClient.getInstance().get("ylahuoqupkzhuangtai", "huoqupkzhuangtai")
|
||||||
.params("uid", liveUid, true)
|
.params("uid", liveUid, true)
|
||||||
// .params("token", CommonAppConfig.getInstance().getToken())
|
// .params("token", CommonAppConfig.getInstance().getToken())
|
||||||
// .params("liveuid", liveUid)
|
// .params("liveuid", liveUid)
|
||||||
@@ -474,7 +473,7 @@ public class LiveHttpUtil {
|
|||||||
* 发送弹幕
|
* 发送弹幕
|
||||||
*/
|
*/
|
||||||
public static void sendDanmu(String content, String liveUid, String stream, HttpCallback callback) {
|
public static void sendDanmu(String content, String liveUid, String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.sendBarrage", LiveHttpConsts.SEND_DANMU)
|
HttpClient.getInstance().get("ylafasongdanmu", LiveHttpConsts.SEND_DANMU)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("giftid", "1")
|
.params("giftid", "1")
|
||||||
@@ -490,7 +489,7 @@ public class LiveHttpUtil {
|
|||||||
* @param stream 主播的stream
|
* @param stream 主播的stream
|
||||||
*/
|
*/
|
||||||
public static void checkLive(String liveUid, String stream, HttpCallback callback) {
|
public static void checkLive(String liveUid, String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.checkLive", LiveHttpConsts.CHECK_LIVE)
|
HttpClient.getInstance().get("ylajianchazhibo", LiveHttpConsts.CHECK_LIVE)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -501,33 +500,13 @@ public class LiveHttpUtil {
|
|||||||
* 观众进入直播间
|
* 观众进入直播间
|
||||||
*/
|
*/
|
||||||
public static void enterRoom(String liveUid, String stream, HttpCallback callback) {
|
public static void enterRoom(String liveUid, String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.enterRoom", LiveHttpConsts.ENTER_ROOM)
|
HttpClient.getInstance().get("ylajinruzhibojian", LiveHttpConsts.ENTER_ROOM)
|
||||||
.params("city", CommonAppConfig.getInstance().getCity())
|
.params("city", CommonAppConfig.getInstance().getCity())
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 观众进入直播间后,还要请求一次
|
|
||||||
*/
|
|
||||||
public static void enterBackRoom(String liveUid, String stream, HttpCallback callback) {
|
|
||||||
HttpClient.getInstance().get("Tx.userjoinroom", "Tx.userjoinroom")
|
|
||||||
.params("GroupId", "g" + liveUid)
|
|
||||||
.params("stream", stream)
|
|
||||||
.execute(callback);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 观众退出直播间后,还要请求一次
|
|
||||||
*/
|
|
||||||
public static void qBackRoom(String liveUid, String stream, HttpCallback callback) {
|
|
||||||
HttpClient.getInstance().get("Tx.leave_room", "Tx.leave_room")
|
|
||||||
.params("GroupId", "g" + liveUid)
|
|
||||||
.params("stream", stream)
|
|
||||||
.execute(callback);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取礼物列表,同时会返回剩余的钱
|
* 获取礼物列表,同时会返回剩余的钱
|
||||||
*/
|
*/
|
||||||
@@ -540,14 +519,14 @@ public class LiveHttpUtil {
|
|||||||
* 获取礼物列表,同时会返回剩余的钱(新版)
|
* 获取礼物列表,同时会返回剩余的钱(新版)
|
||||||
*/
|
*/
|
||||||
public static void getNewGiftList(HttpCallback callback) {
|
public static void getNewGiftList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getGiftListApp", LiveHttpConsts.GET_GIFT_LIST)
|
HttpClient.getInstance().get("ylazhibojianliwuxinxi", LiveHttpConsts.GET_GIFT_LIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 获取礼物列表,同时会返回剩余的钱(新版) -用于获取联系方式时的礼物设置
|
* 获取礼物列表,同时会返回剩余的钱(新版) -用于获取联系方式时的礼物设置
|
||||||
*/
|
*/
|
||||||
public static void getHotGiftList(HttpCallback callback) {
|
public static void getHotGiftList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Gift.getHotGiftList", LiveHttpConsts.GET_GIFT_LIST)
|
HttpClient.getInstance().get("ylahuoqusuoyouremenliwu", LiveHttpConsts.GET_GIFT_LIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -555,7 +534,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取包裹列表
|
* 获取包裹列表
|
||||||
*/
|
*/
|
||||||
public static void getWrapList(HttpCallback callback) {
|
public static void getWrapList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getPackList", LiveHttpConsts.GET_WRAP_LIST)
|
HttpClient.getInstance().get("ylazhibojianbaoguoxinxi", LiveHttpConsts.GET_WRAP_LIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -563,7 +542,7 @@ public class LiveHttpUtil {
|
|||||||
* 主播获取心愿单列表
|
* 主播获取心愿单列表
|
||||||
*/
|
*/
|
||||||
public static void getWishList(HttpCallback callback) {
|
public static void getWishList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Guide.getWishlist", LiveHttpConsts.GET_WISH_LIST)
|
HttpClient.getInstance().get("ylahuoquxinyuandan", LiveHttpConsts.GET_WISH_LIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -571,7 +550,7 @@ public class LiveHttpUtil {
|
|||||||
* 用户获取主播的心愿单列表
|
* 用户获取主播的心愿单列表
|
||||||
*/
|
*/
|
||||||
public static void getWishList(String liveId, HttpCallback callback) {
|
public static void getWishList(String liveId, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Guide.getWishlist", LiveHttpConsts.GET_WISH_LIST)
|
HttpClient.getInstance().get("ylahuoquxinyuandan", LiveHttpConsts.GET_WISH_LIST)
|
||||||
.params("uid", liveId, true)
|
.params("uid", liveId, true)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -582,7 +561,7 @@ public class LiveHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void getFrontTask(HttpCallback callback) {
|
public static void getFrontTask(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.getFrontTask", "User.getFrontTask")
|
HttpClient.getInstance().get("ylahuoquxinshouyindaozhuangtai", "huoquxinshouyindaozhuangtai")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -592,7 +571,7 @@ public class LiveHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void getFrontTask(String Token, String uid, HttpCallback callback) {
|
public static void getFrontTask(String Token, String uid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.getFrontTask", "User.getFrontTask")
|
HttpClient.getInstance().get("ylahuoquxinshouyindaozhuangtai", "huoquxinshouyindaozhuangtai")
|
||||||
.params("token", Token, true)
|
.params("token", Token, true)
|
||||||
.params("uid", uid, true)
|
.params("uid", uid, true)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -602,7 +581,7 @@ public class LiveHttpUtil {
|
|||||||
* 完成新手任務
|
* 完成新手任務
|
||||||
*/
|
*/
|
||||||
public static void setFrontTask(String type, HttpCallback callback) {
|
public static void setFrontTask(String type, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.setFrontTask", "User.setFrontTask")
|
HttpClient.getInstance().get("ylashezhixinshouyindaozhuangtai", "shezhixinshouyindaozhuangtai")
|
||||||
.params("type", type)
|
.params("type", type)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -611,7 +590,7 @@ public class LiveHttpUtil {
|
|||||||
* 完成新手任務
|
* 完成新手任務
|
||||||
*/
|
*/
|
||||||
public static void setFrontTask(String type, String liveuid, HttpCallback callback) {
|
public static void setFrontTask(String type, String liveuid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.setFrontTask", "User.setFrontTask")
|
HttpClient.getInstance().get("ylashezhixinshouyindaozhuangtai", "shezhixinshouyindaozhuangtai")
|
||||||
.params("type", type)
|
.params("type", type)
|
||||||
.params("liveuid", liveuid)
|
.params("liveuid", liveuid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -621,7 +600,7 @@ public class LiveHttpUtil {
|
|||||||
* 修改心愿单列表
|
* 修改心愿单列表
|
||||||
*/
|
*/
|
||||||
public static void modifyWishList(String list, HttpCallback callback) {
|
public static void modifyWishList(String list, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Guide.setWishlist", LiveHttpConsts.SET_WISH_LIST)
|
HttpClient.getInstance().get("ylashezhixinyuandan", LiveHttpConsts.SET_WISH_LIST)
|
||||||
.params("list", list)
|
.params("list", list)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -643,7 +622,7 @@ public class LiveHttpUtil {
|
|||||||
* @param isContactGift 是否为联系方式礼物
|
* @param isContactGift 是否为联系方式礼物
|
||||||
*/
|
*/
|
||||||
public static void sendGift(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, boolean isFansGroupGift, HttpCallback callback) {
|
public static void sendGift(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, boolean isFansGroupGift, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.sendGift", LiveHttpConsts.SEND_GIFT)
|
HttpClient.getInstance().get("ylazhibojianzengsongliwu", LiveHttpConsts.SEND_GIFT)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("giftid", giftId)
|
.params("giftid", giftId)
|
||||||
@@ -654,14 +633,13 @@ public class LiveHttpUtil {
|
|||||||
.params("appVersion", CommonAppConfig.getInstance().getVersion())
|
.params("appVersion", CommonAppConfig.getInstance().getVersion())
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 观众给主播送礼物 - 包裹
|
* 观众给主播送礼物 - 包裹
|
||||||
*
|
*
|
||||||
* @param isContactGift 是否为联系方式礼物
|
* @param isContactGift 是否为联系方式礼物
|
||||||
*/
|
*/
|
||||||
public static void sendGiftForPage(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, boolean isFansGroupGift, HttpCallback callback) {
|
public static void sendGiftForPage(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, boolean isFansGroupGift, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.sendPackGift", LiveHttpConsts.SEND_GIFT)
|
HttpClient.getInstance().get("ylazhibojianzengsongbaoguoliwu", LiveHttpConsts.SEND_GIFT)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("giftid", giftId)
|
.params("giftid", giftId)
|
||||||
@@ -672,14 +650,13 @@ public class LiveHttpUtil {
|
|||||||
.params("appVersion", CommonAppConfig.getInstance().getVersion())
|
.params("appVersion", CommonAppConfig.getInstance().getVersion())
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 观众给主播送礼物 - 粉丝团
|
* 观众给主播送礼物 - 粉丝团
|
||||||
*
|
*
|
||||||
* @param isContactGift 是否为联系方式礼物
|
* @param isContactGift 是否为联系方式礼物
|
||||||
*/
|
*/
|
||||||
public static void sendGiftForFansGroup(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, boolean isFansGroupGift, HttpCallback callback) {
|
public static void sendGiftForFansGroup(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, boolean isFansGroupGift, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.fansExclusivePack", LiveHttpConsts.SEND_GIFT)
|
HttpClient.getInstance().get("ylazengsongfensituanbaoguoliwu", LiveHttpConsts.SEND_GIFT)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("giftid", giftId)
|
.params("giftid", giftId)
|
||||||
@@ -690,9 +667,8 @@ public class LiveHttpUtil {
|
|||||||
.params("appVersion", CommonAppConfig.getInstance().getVersion())
|
.params("appVersion", CommonAppConfig.getInstance().getVersion())
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void sendBlindBoxTicket(String by, String liveUid, String stream, int giftId, HttpCallback callback) {
|
public static void sendBlindBoxTicket(String by, String liveUid, String stream, int giftId, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.sendBlindBoxTicket", LiveHttpConsts.SEND_GIFT)
|
HttpClient.getInstance().get("ylamangheshiyongquan", LiveHttpConsts.SEND_GIFT)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("giftid", giftId)
|
.params("giftid", giftId)
|
||||||
@@ -721,7 +697,7 @@ public class LiveHttpUtil {
|
|||||||
* 点亮發IM
|
* 点亮發IM
|
||||||
*/
|
*/
|
||||||
public static void sendZAN(String liveUid, HttpCallback callback) {
|
public static void sendZAN(String liveUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Fans.doubleClickLight", "Fans.DoubleClickLight")
|
HttpClient.getInstance().get("ylashuangjidianliang", "shuangjidianliang")
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -730,7 +706,7 @@ public class LiveHttpUtil {
|
|||||||
* 连麦pk搜索主播
|
* 连麦pk搜索主播
|
||||||
*/
|
*/
|
||||||
public static void livePkSearchAnchor(String key, int p, HttpCallback callback) {
|
public static void livePkSearchAnchor(String key, int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Livepk.search", LiveHttpConsts.LIVE_PK_SEARCH_ANCHOR)
|
HttpClient.getInstance().get("ylasousuozhiboyonghu", LiveHttpConsts.LIVE_PK_SEARCH_ANCHOR)
|
||||||
.params("key", key)
|
.params("key", key)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -741,7 +717,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取主播连麦pk列表
|
* 获取主播连麦pk列表
|
||||||
*/
|
*/
|
||||||
public static void getLivePkList(int p, HttpCallback callback) {
|
public static void getLivePkList(int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Livepk.getLiveList", LiveHttpConsts.GET_LIVE_PK_LIST)
|
HttpClient.getInstance().get("ylahuoquzhiboyonghuliebiao", LiveHttpConsts.GET_LIVE_PK_LIST)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -778,7 +754,7 @@ public class LiveHttpUtil {
|
|||||||
*/
|
*/
|
||||||
public static void newcreateRoom(String title, int liveClassId, int type, int typeVal, File file, int clarityType,boolean isSw, HttpCallback callback) {
|
public static void newcreateRoom(String title, int liveClassId, int type, int typeVal, File file, int clarityType,boolean isSw, HttpCallback callback) {
|
||||||
|
|
||||||
PostRequest<JsonBean> request = HttpClient.getInstance().post("Live.createRoom2", LiveHttpConsts.CREATE_ROOM)
|
PostRequest<JsonBean> request = HttpClient.getInstance().post("ylachuangjianzhibov2", LiveHttpConsts.CREATE_ROOM)
|
||||||
.params("title", title)
|
.params("title", title)
|
||||||
.params("liveclassid", liveClassId)
|
.params("liveclassid", liveClassId)
|
||||||
.params("type", type)
|
.params("type", type)
|
||||||
@@ -797,7 +773,7 @@ public class LiveHttpUtil {
|
|||||||
* 修改直播状态
|
* 修改直播状态
|
||||||
*/
|
*/
|
||||||
public static void changeLive(String stream) {
|
public static void changeLive(String stream) {
|
||||||
HttpClient.getInstance().get("Live.changeLive", LiveHttpConsts.CHANGE_LIVE)
|
HttpClient.getInstance().get("ylaxiugaizhibozhuangtai", LiveHttpConsts.CHANGE_LIVE)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.params("status", "1")
|
.params("status", "1")
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@@ -812,7 +788,7 @@ public class LiveHttpUtil {
|
|||||||
* 主播结束直播
|
* 主播结束直播
|
||||||
*/
|
*/
|
||||||
public static void stopLive(String stream, HttpCallback callback) {
|
public static void stopLive(String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.stopRoom", LiveHttpConsts.STOP_LIVE)
|
HttpClient.getInstance().get("ylaguanbizhibo", LiveHttpConsts.STOP_LIVE)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -821,12 +797,12 @@ public class LiveHttpUtil {
|
|||||||
* 主播开播前获取sdk类型 0金山 1腾讯
|
* 主播开播前获取sdk类型 0金山 1腾讯
|
||||||
*/
|
*/
|
||||||
public static void getLiveSdk(HttpCallback callback) {
|
public static void getLiveSdk(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getSDK", LiveHttpConsts.GET_LIVE_SDK)
|
HttpClient.getInstance().get("ylahuoqusdk", LiveHttpConsts.GET_LIVE_SDK)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void getisRong(HttpCallback callback) {
|
public static void getisRong(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.isRong", "Live.isRong")
|
HttpClient.getInstance().get("ylashifouweirongyunzhubo", "shifouweirongyunzhubo")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -835,7 +811,7 @@ public class LiveHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void getIsSw(HttpCallback callback) {
|
public static void getIsSw(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Tx.setRtcFirm", "Tx.setRtcFirm")
|
HttpClient.getInstance().get("ylashezhiyuanshengduanshengwangpeizhi", "shezhiyuanshengduanshengwangpeizhi")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -843,7 +819,7 @@ public class LiveHttpUtil {
|
|||||||
* 腾讯sdk 跟主播连麦时,获取主播的低延时流
|
* 腾讯sdk 跟主播连麦时,获取主播的低延时流
|
||||||
*/
|
*/
|
||||||
public static void getTxLinkMicAccUrl(String originStreamUrl, HttpCallback callback) {
|
public static void getTxLinkMicAccUrl(String originStreamUrl, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Linkmic.requestPlayUrlWithSignForLinkMic", LiveHttpConsts.GET_TX_LINK_MIC_ACC_URL)
|
HttpClient.getInstance().get("ylajianquanliudizhi", LiveHttpConsts.GET_TX_LINK_MIC_ACC_URL)
|
||||||
.params("originStreamUrl", originStreamUrl)
|
.params("originStreamUrl", originStreamUrl)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -853,7 +829,7 @@ public class LiveHttpUtil {
|
|||||||
* 连麦时候 主播混流
|
* 连麦时候 主播混流
|
||||||
*/
|
*/
|
||||||
public static void linkMicTxMixStream(String mergeparams) {
|
public static void linkMicTxMixStream(String mergeparams) {
|
||||||
HttpClient.getInstance().get("Linkmic.mergeVideoStream", LiveHttpConsts.LINK_MIC_TX_MIX_STREAM)
|
HttpClient.getInstance().get("ylalianmaihunliu", LiveHttpConsts.LINK_MIC_TX_MIX_STREAM)
|
||||||
.params("mergeparams", mergeparams)
|
.params("mergeparams", mergeparams)
|
||||||
.execute(CommonHttpUtil.NO_CALLBACK);
|
.execute(CommonHttpUtil.NO_CALLBACK);
|
||||||
}
|
}
|
||||||
@@ -863,7 +839,7 @@ public class LiveHttpUtil {
|
|||||||
* 我是哪些直播间的管理员,返回这些直播间列表
|
* 我是哪些直播间的管理员,返回这些直播间列表
|
||||||
*/
|
*/
|
||||||
public static void getMyAdminRoomList(int p, HttpCallback callback) {
|
public static void getMyAdminRoomList(int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Livemanage.getRoomList", LiveHttpConsts.GET_MY_ADMIN_ROOM_LIST)
|
HttpClient.getInstance().get("ylahuoquwodefangjian", LiveHttpConsts.GET_MY_ADMIN_ROOM_LIST)
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -873,7 +849,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取直播间奖池等级
|
* 获取直播间奖池等级
|
||||||
*/
|
*/
|
||||||
public static void getLiveGiftPrizePool(String liveUid, String stream, HttpCallback callback) {
|
public static void getLiveGiftPrizePool(String liveUid, String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Jackpot.getJackpot", LiveHttpConsts.GET_LIVE_GIFT_PRIZE_POOL)
|
HttpClient.getInstance().get("ylahuoquyindaoyexinxi", LiveHttpConsts.GET_LIVE_GIFT_PRIZE_POOL)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -883,7 +859,7 @@ public class LiveHttpUtil {
|
|||||||
* 主播checkLive
|
* 主播checkLive
|
||||||
*/
|
*/
|
||||||
public static void anchorCheckLive(String liveUid, String stream, HttpCallback callback) {
|
public static void anchorCheckLive(String liveUid, String stream, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.checkLiveing", LiveHttpConsts.ANCHOR_CHECK_LIVE)
|
HttpClient.getInstance().get("ylajiancefangjiangzhuangtai", LiveHttpConsts.ANCHOR_CHECK_LIVE)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.params("stream", stream)
|
.params("stream", stream)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -894,7 +870,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取直播间信息
|
* 获取直播间信息
|
||||||
*/
|
*/
|
||||||
public static void getLiveInfo(String liveUid, HttpCallback callback) {
|
public static void getLiveInfo(String liveUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getLiveInfo", LiveHttpConsts.GET_LIVE_INFO)
|
HttpClient.getInstance().get("ylahuoquzhiboxinxi", LiveHttpConsts.GET_LIVE_INFO)
|
||||||
.params("liveuid", liveUid)
|
.params("liveuid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -905,7 +881,7 @@ public class LiveHttpUtil {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
public static void getHcGiftList(HttpCallback callback) {
|
public static void getHcGiftList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getSvgaList", LiveHttpConsts.GET_GIFT_LIST)
|
HttpClient.getInstance().get("ylahuoquliwudonghualiebiao", LiveHttpConsts.GET_GIFT_LIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -915,7 +891,7 @@ public class LiveHttpUtil {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
public static void getHczGiftList(HttpCallback callback) {
|
public static void getHczGiftList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Home.aoto_load", "Home.aoto_load")
|
HttpClient.getInstance().get("ylayuxiazai", "yuxiazai")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -924,29 +900,21 @@ public class LiveHttpUtil {
|
|||||||
* 获取活动
|
* 获取活动
|
||||||
*/
|
*/
|
||||||
public static void geteEvent(String anchor_id, HttpCallback callback) {
|
public static void geteEvent(String anchor_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Rank.isActivity", LiveHttpConsts.GET_EVENT)
|
HttpClient.getInstance().get("ylahuodongpeizhixinxi", LiveHttpConsts.GET_EVENT)
|
||||||
.params("anchorUid", anchor_id)
|
.params("anchorUid", anchor_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
public static void getAnchorActiveImgStatus(String anchor_id, HttpCallback callback) {
|
public static void getAnchorActiveImgStatus(String anchor_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.getAnchorActiveImgStatus", LiveHttpConsts.GET_EVENT)
|
HttpClient.getInstance().get("ylahuoquzhuboxunfuchuangzhuangtai", LiveHttpConsts.GET_EVENT)
|
||||||
.params("anchorUid", anchor_id)
|
.params("anchorUid", anchor_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 重置活动
|
|
||||||
*/
|
|
||||||
public static void setEvent(String anchor_id, HttpCallback callback) {
|
|
||||||
HttpClient.getInstance().get("Rank.crystalTimeEnd", LiveHttpConsts.GET_EVENT)
|
|
||||||
.params("anchor_id", anchor_id)
|
|
||||||
.execute(callback);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 整蛊转盘拯救主播
|
* 整蛊转盘拯救主播
|
||||||
*/
|
*/
|
||||||
public static void userHopePrankTurntable(String anchor_id, String prankid, HttpCallback callback) {
|
public static void userHopePrankTurntable(String anchor_id, String prankid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Prank.userHopePrankTurntable", LiveHttpConsts.USERHOPEPRANKTURNTABLE)
|
HttpClient.getInstance().get("ylayonghuzhengjiuzhubo", LiveHttpConsts.USERHOPEPRANKTURNTABLE)
|
||||||
.params("prankid", prankid)
|
.params("prankid", prankid)
|
||||||
.params("anchor_id", anchor_id)
|
.params("anchor_id", anchor_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -956,7 +924,7 @@ public class LiveHttpUtil {
|
|||||||
* 倒计时结束
|
* 倒计时结束
|
||||||
*/
|
*/
|
||||||
public static void endPrankTurntable(String anchor_id, HttpCallback callback) {
|
public static void endPrankTurntable(String anchor_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Prank.endPrankTurntable", LiveHttpConsts.ENDPRANKTURNTABLE)
|
HttpClient.getInstance().get("ylazhenggudaojishijieshu", LiveHttpConsts.ENDPRANKTURNTABLE)
|
||||||
.params("anchor_id", anchor_id)
|
.params("anchor_id", anchor_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -965,7 +933,7 @@ public class LiveHttpUtil {
|
|||||||
* 周星榜数据
|
* 周星榜数据
|
||||||
*/
|
*/
|
||||||
public static void getAnchorLastWeekList(HttpCallback callback) {
|
public static void getAnchorLastWeekList(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("WeekStar.getAnchorLastWeekList", LiveHttpConsts.GETANCHORLASTWEEKLIST)
|
HttpClient.getInstance().get("ylahuoqushangzhouzhouxingbangzhubo", LiveHttpConsts.GETANCHORLASTWEEKLIST)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -973,7 +941,7 @@ public class LiveHttpUtil {
|
|||||||
* 热度加成列表
|
* 热度加成列表
|
||||||
*/
|
*/
|
||||||
public static void useHotCardUserList(String anchor_id, HttpCallback callback) {
|
public static void useHotCardUserList(String anchor_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.useHotCardUserList", LiveHttpConsts.USEHOTCARDUSERLIST)
|
HttpClient.getInstance().get("ylaredukayonghuliebiao", LiveHttpConsts.USEHOTCARDUSERLIST)
|
||||||
.params("anchor_id", anchor_id)
|
.params("anchor_id", anchor_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -982,7 +950,7 @@ public class LiveHttpUtil {
|
|||||||
* 是否有热度加成
|
* 是否有热度加成
|
||||||
*/
|
*/
|
||||||
public static void isHotCard(String anchor_id, HttpCallback callback) {
|
public static void isHotCard(String anchor_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Live.isHotCard", LiveHttpConsts.ISHOTCARD)
|
HttpClient.getInstance().get("ylazhibozhongshifoushiyongreduka", LiveHttpConsts.ISHOTCARD)
|
||||||
.params("anchor_id", anchor_id)
|
.params("anchor_id", anchor_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -991,7 +959,7 @@ public class LiveHttpUtil {
|
|||||||
* 修改im备注信息
|
* 修改im备注信息
|
||||||
*/
|
*/
|
||||||
public static void setInstructorRemark(String touid, String remark, HttpCallback callback) {
|
public static void setInstructorRemark(String touid, String remark, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("User.setInstructorRemark", LiveHttpConsts.SETINSTRUCTORREMARK)
|
HttpClient.getInstance().get("ylashezhiyonghubeizhuming", LiveHttpConsts.SETINSTRUCTORREMARK)
|
||||||
.params("touid", touid)
|
.params("touid", touid)
|
||||||
.params("remark", remark)
|
.params("remark", remark)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -1001,7 +969,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取用户贵族喇叭的数量
|
* 获取用户贵族喇叭的数量
|
||||||
*/
|
*/
|
||||||
public static void getNobleTrumpetNum(HttpCallback callback) {
|
public static void getNobleTrumpetNum(HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Noble.getNobleTrumpetNum", "getNobleTrumpetNum")
|
HttpClient.getInstance().get("ylahuoquguizulabashuliang", "huoquguizulabashuliang")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1009,7 +977,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取用户贵族喇叭的数量
|
* 获取用户贵族喇叭的数量
|
||||||
*/
|
*/
|
||||||
public static void nobleUseTrumpet(String trumpet_msg, String anchor_id, HttpCallback callback) {
|
public static void nobleUseTrumpet(String trumpet_msg, String anchor_id, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Noble.nobleUseTrumpet", "nobleUseTrumpet")
|
HttpClient.getInstance().get("ylaguizushiyonglaba", "guizushiyonglaba")
|
||||||
.params("", trumpet_msg)
|
.params("", trumpet_msg)
|
||||||
.params("", anchor_id)
|
.params("", anchor_id)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
@@ -1019,7 +987,7 @@ public class LiveHttpUtil {
|
|||||||
* 获取用户贵族喇叭的数量
|
* 获取用户贵族喇叭的数量
|
||||||
*/
|
*/
|
||||||
public static void getStarChallengeStatus(String liveUid, HttpCallback callback) {
|
public static void getStarChallengeStatus(String liveUid, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("StarChallenge.getStarChallengeStatus", "StarChallengeStatus")
|
HttpClient.getInstance().get("ylahuoquxingjitiaozhanzhuangtai", "huoquxingjitiaozhanzhuangtai")
|
||||||
.params("liveUid", liveUid)
|
.params("liveUid", liveUid)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
@@ -1028,14 +996,14 @@ public class LiveHttpUtil {
|
|||||||
* 首页关注直播
|
* 首页关注直播
|
||||||
*/
|
*/
|
||||||
public static void getHomeFollow(int p, HttpCallback callback) {
|
public static void getHomeFollow(int p, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Home.getFollow", "Home.getFollow")
|
HttpClient.getInstance().get("ylahuoquguanzhuzhuboliebiao", "huoquguanzhuzhuboliebiao")
|
||||||
.params("p", p)
|
.params("p", p)
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void getRoomList(String sudGameId, String threshold, String roomHolderType, String liveUid, String currencyType, int page, HttpCallback callback) {
|
public static void getRoomList(String sudGameId, String threshold, String roomHolderType, String liveUid, String currencyType, int page, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Sudgameserver.getRoomList", "Sudgameserver.getRoomList")
|
HttpClient.getInstance().get("ylahuoquyouxiliebiao", "huoquyouxiliebiao")
|
||||||
.params("sud_game_id", sudGameId)
|
.params("sud_game_id", sudGameId)
|
||||||
.params("threshold", threshold)
|
.params("threshold", threshold)
|
||||||
.params("room_holder_type", roomHolderType)
|
.params("room_holder_type", roomHolderType)
|
||||||
@@ -1055,7 +1023,7 @@ public class LiveHttpUtil {
|
|||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public static void gameRecord(String sudGameId, String currencyType, String dateType, int page, HttpCallback callback) {
|
public static void gameRecord(String sudGameId, String currencyType, String dateType, int page, HttpCallback callback) {
|
||||||
HttpClient.getInstance().get("Sudgameserver.gameRecord", "Sudgameserver.gameRecord")
|
HttpClient.getInstance().get("ylachaxunyouxijilu", "chaxunyouxijilu")
|
||||||
.params("sud_game_id", sudGameId)
|
.params("sud_game_id", sudGameId)
|
||||||
.params("currency_type", currencyType)
|
.params("currency_type", currencyType)
|
||||||
.params("date_type", dateType)
|
.params("date_type", dateType)
|
||||||
@@ -1066,9 +1034,10 @@ public class LiveHttpUtil {
|
|||||||
/**
|
/**
|
||||||
* 获取短剧Url
|
* 获取短剧Url
|
||||||
*/
|
*/
|
||||||
public static void getCoolydrama(HttpCallback callback) {
|
public static void getCoolydrama(HttpCallback callback){
|
||||||
HttpClient.getInstance().get("cool.register", "Home.getFollow")
|
HttpClient.getInstance().get("yladuanjuzhanghaozhuce", "duanjuzhanghaozhuce")
|
||||||
.params("lang", WordUtil.isNewZh() ? "zh_CN" : "en")
|
.params("lang", WordUtil.isNewZh()?"zh_CN":"en")
|
||||||
.execute(callback);
|
.execute(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2358,6 +2358,7 @@ public class LiveNetManager {
|
|||||||
}).isDisposed();
|
}).isDisposed();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//TODO 合并后有POPO了一个参数
|
||||||
public void createSudRoom(String roomName, String goldenBeanNumber, String currencyType, String gameId, HttpCallback<CreateSudRoomModel> callback) {
|
public void createSudRoom(String roomName, String goldenBeanNumber, String currencyType, String gameId, HttpCallback<CreateSudRoomModel> callback) {
|
||||||
API.get().pdLiveApi(mContext)
|
API.get().pdLiveApi(mContext)
|
||||||
.createSudRoom(roomName, goldenBeanNumber, currencyType, gameId)
|
.createSudRoom(roomName, goldenBeanNumber, currencyType, gameId)
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import com.yunbao.common.http.API;
|
|||||||
import com.yunbao.common.http.ResponseData;
|
import com.yunbao.common.http.ResponseData;
|
||||||
import com.yunbao.common.http.ResponseModel;
|
import com.yunbao.common.http.ResponseModel;
|
||||||
import com.yunbao.common.http.base.HttpCallback;
|
import com.yunbao.common.http.base.HttpCallback;
|
||||||
|
import com.yunbao.common.manager.imrongcloud.RongcloudIMManager;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
@@ -55,7 +56,7 @@ public class MainNetManager {
|
|||||||
* @param callback 网络请求回调
|
* @param callback 网络请求回调
|
||||||
*/
|
*/
|
||||||
public void login(String phoneNum, String pwd, String uuid, HttpCallback<IMLoginModel> callback) {
|
public void login(String phoneNum, String pwd, String uuid, HttpCallback<IMLoginModel> callback) {
|
||||||
API.get().pdLiveApi(mContext).loginByManager(phoneNum, pwd, uuid, "", "Android", WordUtil.isNewZh()?"chinese":"english")
|
API.get().pdLiveApi(mContext).loginByManager(phoneNum, pwd, uuid, "", "Android", WordUtil.isNewZh()?"chinese":"english",RongcloudIMManager.RONG_IM_KEY)
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(new Consumer<ResponseModel<IMLoginModel>>() {
|
.subscribe(new Consumer<ResponseModel<IMLoginModel>>() {
|
||||||
|
|||||||
@@ -457,7 +457,7 @@ public class IMLoginManager extends BaseCacheManager {
|
|||||||
private Runnable isInstructorRunnable = new Runnable() {
|
private Runnable isInstructorRunnable = new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
HttpClient.getInstance().get("User.isInstructor", "isInstructor")
|
HttpClient.getInstance().get("ylashifouweituiguangzhanghao", "ylashifouweituiguangzhanghao\n")
|
||||||
.params("uid", userInfo.getId(), true)
|
.params("uid", userInfo.getId(), true)
|
||||||
.params("token", userInfo.getToken(), true)
|
.params("token", userInfo.getToken(), true)
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@@ -533,9 +533,10 @@ public class IMLoginManager extends BaseCacheManager {
|
|||||||
String uid = uidAndToken[0];
|
String uid = uidAndToken[0];
|
||||||
String token = uidAndToken[1];
|
String token = uidAndToken[1];
|
||||||
if (TextUtils.isEmpty(token)) return;
|
if (TextUtils.isEmpty(token)) return;
|
||||||
HttpClient.getInstance().get("User.getBaseInfos", "getBaseInfo")
|
HttpClient.getInstance().get("ylahuoquyonghujibenxinxiv2", "ylahuoquyonghujibenxinxiv2")
|
||||||
.params("uid", uid)
|
.params("uid", uid)
|
||||||
.params("token", token)
|
.params("token", token)
|
||||||
|
.params("key1", RongcloudIMManager.RONG_IM_KEY)
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
@@ -554,7 +555,7 @@ public class IMLoginManager extends BaseCacheManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void updateUserCoin() {
|
public void updateUserCoin() {
|
||||||
HttpClient.getInstance().get("User.getUserBalance", "User.getUserBalance")
|
HttpClient.getInstance().get("ylachaxunyonghuyue", "ylachaxunyonghuyue")
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
@@ -572,7 +573,7 @@ public class IMLoginManager extends BaseCacheManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void updateUserCoin(OnItemClickListener<JSONObject> listener) {
|
public void updateUserCoin(OnItemClickListener<JSONObject> listener) {
|
||||||
HttpClient.getInstance().get("User.getUserBalance", "User.getUserBalance")
|
HttpClient.getInstance().get("ylachaxunyonghuyue", "ylachaxunyonghuyue")
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ public class InstructorRemarkManager extends BaseCacheManager {
|
|||||||
public void run() {
|
public void run() {
|
||||||
IMLoginModel userInfo = IMLoginManager.get(context).getUserInfo();
|
IMLoginModel userInfo = IMLoginManager.get(context).getUserInfo();
|
||||||
if(userInfo==null)return;
|
if(userInfo==null)return;
|
||||||
HttpClient.getInstance().get("User.getInstructorRemark", "getInstructorRemark")
|
HttpClient.getInstance().get("ylahuoqutuiguangbeizhumingliebiao", "ylahuoqutuiguangbeizhumingliebiao")
|
||||||
.params("uid", userInfo.getId(), true)
|
.params("uid", userInfo.getId(), true)
|
||||||
.params("token", userInfo.getToken(), true)
|
.params("token", userInfo.getToken(), true)
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.yunbao.common.manager;
|
package com.yunbao.common.manager;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.google.gson.reflect.TypeToken;
|
import com.google.gson.reflect.TypeToken;
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ public class NoviceInstructorManager extends BaseCacheManager {
|
|||||||
IMLoginModel userModel = new Gson().fromJson(model1.getExtra(), IMLoginModel.class);
|
IMLoginModel userModel = new Gson().fromJson(model1.getExtra(), IMLoginModel.class);
|
||||||
if (userModel != null && TextUtils.equals(userModel.getIsAdmin(), "1")) {
|
if (userModel != null && TextUtils.equals(userModel.getIsAdmin(), "1")) {
|
||||||
IMLoginModel userInfo = IMLoginManager.get(context).getUserInfo();
|
IMLoginModel userInfo = IMLoginManager.get(context).getUserInfo();
|
||||||
HttpClient.getInstance().get("Message.setZdyMsg", "setZdyMsg")
|
HttpClient.getInstance().get("ylashezhizhidaoyuanxiaoxizhuangtai", "ylashezhizhidaoyuanxiaoxizhuangtai")
|
||||||
.params("uid", userInfo.getId(), true)
|
.params("uid", userInfo.getId(), true)
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -131,7 +131,7 @@ public class MessageIMManager {
|
|||||||
if (userInfo == null) {
|
if (userInfo == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
HttpClient.getInstance().get("Message.getLists", "getImUserInfo")
|
HttpClient.getInstance().get("ylahuoquxitongxiaoxiliebiaov2", "ylahuoquxitongxiaoxiliebiaov2")
|
||||||
.params("uid", userInfo.getId())
|
.params("uid", userInfo.getId())
|
||||||
.params("token", userInfo.getToken())
|
.params("token", userInfo.getToken())
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@@ -195,7 +195,7 @@ public class MessageIMManager {
|
|||||||
public void getSystemMessages(SystemMessagesHttpCallback callback) {
|
public void getSystemMessages(SystemMessagesHttpCallback callback) {
|
||||||
systemNumber = 0;
|
systemNumber = 0;
|
||||||
IMLoginModel userInfo = IMLoginManager.get(mContext).getUserInfo();
|
IMLoginModel userInfo = IMLoginManager.get(mContext).getUserInfo();
|
||||||
HttpClient.getInstance().get("Message.getLists", "getImUserInfo")
|
HttpClient.getInstance().get("ylahuoquxitongxiaoxiliebiaov2", "ylahuoquxitongxiaoxiliebiaov2")
|
||||||
.params("uid", userInfo.getId())
|
.params("uid", userInfo.getId())
|
||||||
.params("token", userInfo.getToken())
|
.params("token", userInfo.getToken())
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ public class RongcloudIMManager {
|
|||||||
if (CommonAppConfig.HOST.contains("ceshi")) {
|
if (CommonAppConfig.HOST.contains("ceshi")) {
|
||||||
RONG_IM_KEY = "pvxdm17jpd3hr"; //测试服key
|
RONG_IM_KEY = "pvxdm17jpd3hr"; //测试服key
|
||||||
} else {
|
} else {
|
||||||
RONG_IM_KEY = "uwd1c0sxu1p71"; //正式服key
|
RONG_IM_KEY = "6tnym1br6lhu7"; //正式服key //上一个Key值uwd1c0sxu1p71
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import android.util.Log;
|
|||||||
|
|
||||||
import com.blankj.utilcode.util.LogUtils;
|
import com.blankj.utilcode.util.LogUtils;
|
||||||
import com.yunbao.common.event.CheckRemainingBalanceEvent;
|
import com.yunbao.common.event.CheckRemainingBalanceEvent;
|
||||||
|
import com.yunbao.common.sud.decorator.game.JumpEvent;
|
||||||
import com.yunbao.common.sud.state.SudMGPMGState;
|
import com.yunbao.common.sud.state.SudMGPMGState;
|
||||||
import com.yunbao.common.utils.Bus;
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.ISudFSMStateHandleUtils;
|
import com.yunbao.common.utils.ISudFSMStateHandleUtils;
|
||||||
@@ -372,6 +373,7 @@ public class SudFSMMGDecorator implements ISudFSMMG {
|
|||||||
} else {
|
} else {
|
||||||
listener.onGameMGCommonGameCreateOrder(handle, mgCommonGameCreateOrder);
|
listener.onGameMGCommonGameCreateOrder(handle, mgCommonGameCreateOrder);
|
||||||
}
|
}
|
||||||
|
JumpEvent.hit(mgCommonGameCreateOrder);
|
||||||
break;
|
break;
|
||||||
case SudMGPMGState.MG_COMMON_PLAYER_ROLE_ID: // 26. 游戏通知app玩家角色(仅对狼人杀有效)
|
case SudMGPMGState.MG_COMMON_PLAYER_ROLE_ID: // 26. 游戏通知app玩家角色(仅对狼人杀有效)
|
||||||
SudMGPMGState.MGCommonPlayerRoleId mgCommonPlayerRoleId = SudJsonUtils.fromJson(dataJson, SudMGPMGState.MGCommonPlayerRoleId.class);
|
SudMGPMGState.MGCommonPlayerRoleId mgCommonPlayerRoleId = SudJsonUtils.fromJson(dataJson, SudMGPMGState.MGCommonPlayerRoleId.class);
|
||||||
|
|||||||
@@ -54,14 +54,29 @@ public class UploadQnImpl implements UploadStrategy {
|
|||||||
public void complete(String key, ResponseInfo info, JSONObject response) {
|
public void complete(String key, ResponseInfo info, JSONObject response) {
|
||||||
System.out.println("UploadQnImpl 上传-----ok----> " + info.isOK() + "--key---> " + "---response---> " + (response != null ? response.toString() : null));
|
System.out.println("UploadQnImpl 上传-----ok----> " + info.isOK() + "--key---> " + "---response---> " + (response != null ? response.toString() : null));
|
||||||
//L.e("UploadQnImpl 上传-----ok----> " + info.isOK() + "--key---> " + "---response---> " + (response != null ? response.toString() : null));
|
//L.e("UploadQnImpl 上传-----ok----> " + info.isOK() + "--key---> " + "---response---> " + (response != null ? response.toString() : null));
|
||||||
try {
|
/* try {
|
||||||
assert response != null;
|
assert response != null;
|
||||||
mList.get(mIndex).setRemoteAccessUrl(response.getString("key"));
|
mList.get(mIndex).setRemoteAccessUrl(response.getString("key"));
|
||||||
} catch (JSONException e) {
|
} catch (JSONException e) {
|
||||||
// throw new RuntimeException(e);
|
// throw new RuntimeException(e);
|
||||||
L.e(e);
|
L.e(e);
|
||||||
return;
|
return;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
if (response == null) {
|
||||||
|
// Handle the null case, e.g., log an error, throw a specific exception, etc.
|
||||||
|
L.e("Response is null");
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
try {
|
||||||
|
mList.get(mIndex).setRemoteAccessUrl(response.getString("key"));
|
||||||
|
} catch (JSONException e) {
|
||||||
|
L.e(e);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (mList == null || mList.size() == 0) {
|
if (mList == null || mList.size() == 0) {
|
||||||
if (mUploadCallback != null) {
|
if (mUploadCallback != null) {
|
||||||
mUploadCallback.onFinish(mList, false);
|
mUploadCallback.onFinish(mList, false);
|
||||||
@@ -144,7 +159,7 @@ public class UploadQnImpl implements UploadStrategy {
|
|||||||
if (isLog) {
|
if (isLog) {
|
||||||
CommonHttpUtil.getUploadQiNiuTokenLog(mGetUploadTokenCallback, list.get(0).getOriginFile().getName());
|
CommonHttpUtil.getUploadQiNiuTokenLog(mGetUploadTokenCallback, list.get(0).getOriginFile().getName());
|
||||||
} else {
|
} else {
|
||||||
CommonHttpUtil.getUploadQiNiuToken(mGetUploadTokenCallback, isImg);
|
CommonHttpUtil.getUploadQiNiuTokenNew(mGetUploadTokenCallback, isImg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
74
common/src/main/java/com/yunbao/common/utils/AesUtils.java
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
package com.yunbao.common.utils;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
|
||||||
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import javax.crypto.Cipher;
|
||||||
|
import javax.crypto.spec.SecretKeySpec;
|
||||||
|
|
||||||
|
public class AesUtils {
|
||||||
|
/**
|
||||||
|
* 使用AES/ECB/PKCS5Padding模式解密数据
|
||||||
|
*
|
||||||
|
* @param encryptedData 加密后的字节数组(Base64解码后的结果,如果原始数据是Base64编码的话)
|
||||||
|
* @param keyBytes AES密钥(16/24/32字节长,对应AES-128/192/256)
|
||||||
|
* @return 解密后的明文字节数组,如果解密失败则返回null
|
||||||
|
*/
|
||||||
|
public static byte[] decrypt(byte[] encryptedData, byte[] keyBytes) {
|
||||||
|
try {
|
||||||
|
// 创建密钥规格
|
||||||
|
SecretKeySpec keySpec = new SecretKeySpec(keyBytes, "AES-128-ECB");
|
||||||
|
|
||||||
|
// 获取Cipher实例并初始化为解密模式
|
||||||
|
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
|
||||||
|
cipher.init(Cipher.DECRYPT_MODE, keySpec);
|
||||||
|
// 执行解密
|
||||||
|
byte[] decryptedBytes = cipher.doFinal(encryptedData);
|
||||||
|
// 返回解密后的字节数组
|
||||||
|
return decryptedBytes;
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
return null; // 解密失败时返回null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 如果需要将解密后的字节数组转换为字符串(注意:这可能会导致数据丢失或乱码)
|
||||||
|
*
|
||||||
|
* @param encryptedData 加密后的字节数组(或Base64解码后的结果)
|
||||||
|
* @return 解密后的字符串,如果解密失败则返回null
|
||||||
|
*/
|
||||||
|
public static String decryptToString(byte[] encryptedData) {
|
||||||
|
byte[] decryptedBytes = decrypt(encryptedData,"LhHBfcsN2VmBpHCn".getBytes());
|
||||||
|
if (decryptedBytes != null) {
|
||||||
|
// 尝试将字节数组转换为字符串(使用指定的字符集)
|
||||||
|
try {
|
||||||
|
return decodeUnicode(new String(decryptedBytes, "UTF-8"));
|
||||||
|
} catch (UnsupportedEncodingException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String decodeUnicode(String unicode) {
|
||||||
|
/* StringBuilder sb = new StringBuilder();
|
||||||
|
for (int i = 0; i < unicode.length();) {
|
||||||
|
if (unicode.charAt(i) == '\\') {
|
||||||
|
if (i + 5 < unicode.length()) {
|
||||||
|
String codePointStr = unicode.substring(i + 2, i + 6);
|
||||||
|
try {
|
||||||
|
int codePoint = Integer.parseInt(codePointStr, 16);
|
||||||
|
sb.append((char) codePoint);
|
||||||
|
i += 6;
|
||||||
|
continue;
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
// Handle format error
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sb.append(unicode.charAt(i++));
|
||||||
|
}*/
|
||||||
|
return JSON.parseObject(unicode).toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -38,6 +38,7 @@ import com.yunbao.common.http.HttpClient;
|
|||||||
import com.yunbao.common.http.LiveHttpUtil;
|
import com.yunbao.common.http.LiveHttpUtil;
|
||||||
import com.yunbao.common.interfaces.CommonCallback;
|
import com.yunbao.common.interfaces.CommonCallback;
|
||||||
import com.yunbao.common.manager.IMLoginManager;
|
import com.yunbao.common.manager.IMLoginManager;
|
||||||
|
import com.yunbao.common.manager.imrongcloud.RongcloudIMManager;
|
||||||
|
|
||||||
import org.greenrobot.eventbus.EventBus;
|
import org.greenrobot.eventbus.EventBus;
|
||||||
|
|
||||||
@@ -618,7 +619,7 @@ public class JavascriptInterfaceUtils {
|
|||||||
@JavascriptInterface
|
@JavascriptInterface
|
||||||
public void androidClickToTaskPage() {
|
public void androidClickToTaskPage() {
|
||||||
ARouter.getInstance().build(PATH_REWARD).withString("url",
|
ARouter.getInstance().build(PATH_REWARD).withString("url",
|
||||||
CommonAppConfig.HOST + "/index.php?g=Appapi&m=task&a=index" + "&uid=" + CommonAppConfig.getInstance().getUid()
|
CommonAppConfig.HOST + "/h5/task/index.html?uid=" + CommonAppConfig.getInstance().getUid()
|
||||||
+ "&token=" + CommonAppConfig.getInstance().getToken() + "&tabIndex=1" + "&isZh=" + (WordUtil.isNewZh() ? "1" : "0")).navigation();
|
+ "&token=" + CommonAppConfig.getInstance().getToken() + "&tabIndex=1" + "&isZh=" + (WordUtil.isNewZh() ? "1" : "0")).navigation();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -656,9 +657,10 @@ public class JavascriptInterfaceUtils {
|
|||||||
|
|
||||||
@JavascriptInterface
|
@JavascriptInterface
|
||||||
public void wearOrCancelFanMedal() {
|
public void wearOrCancelFanMedal() {
|
||||||
HttpClient.getInstance().get("User.getBaseInfos", "getBaseInfo")
|
HttpClient.getInstance().get("ylahuoquyonghujibenxinxiv2", "ylahuoquyonghujibenxinxiv2")
|
||||||
.params("uid", IMLoginManager.get(mContext).getUserInfo().getId())
|
.params("uid", IMLoginManager.get(mContext).getUserInfo().getId())
|
||||||
.params("token", IMLoginManager.get(mContext).getUserInfo().getToken())
|
.params("token", IMLoginManager.get(mContext).getUserInfo().getToken())
|
||||||
|
.params("key1", RongcloudIMManager.RONG_IM_KEY)
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ public class MicStatusManager {
|
|||||||
* 断开连麦
|
* 断开连麦
|
||||||
*/
|
*/
|
||||||
public void downMic() {
|
public void downMic() {
|
||||||
HttpClient.getInstance().get("live.leaveDrLm", "live.leaveDrLm")
|
HttpClient.getInstance().get("ylatuichuduorenlianmai", "ylatuichuduorenlianmai")
|
||||||
.params("roomid", micLiveId)
|
.params("roomid", micLiveId)
|
||||||
.params("uid", CommonAppConfig.getInstance().getUid())
|
.params("uid", CommonAppConfig.getInstance().getUid())
|
||||||
.execute(new HttpCallback() {
|
.execute(new HttpCallback() {
|
||||||
|
|||||||
@@ -3,13 +3,22 @@ package com.yunbao.common.utils;
|
|||||||
import android.Manifest;
|
import android.Manifest;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
import android.graphics.Bitmap;
|
||||||
|
import android.graphics.ImageDecoder;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.provider.MediaStore;
|
import android.provider.MediaStore;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
|
|
||||||
|
import androidx.activity.result.ActivityResultLauncher;
|
||||||
|
import androidx.activity.result.PickVisualMediaRequest;
|
||||||
|
import androidx.activity.result.contract.ActivityResultContracts;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
import androidx.fragment.app.FragmentActivity;
|
import androidx.fragment.app.FragmentActivity;
|
||||||
import androidx.core.content.FileProvider;
|
import androidx.core.content.FileProvider;
|
||||||
|
|
||||||
|
import com.blankj.utilcode.util.LogUtils;
|
||||||
import com.yalantis.ucrop.UCrop;
|
import com.yalantis.ucrop.UCrop;
|
||||||
import com.yalantis.ucrop.util.FileUtils;
|
import com.yalantis.ucrop.util.FileUtils;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
@@ -39,6 +48,7 @@ public class ProcessImageUtil extends ProcessResultUtil {
|
|||||||
private ImageResultCallback mResultCallback;
|
private ImageResultCallback mResultCallback;
|
||||||
private boolean mNeedCrop;//是否需要裁剪
|
private boolean mNeedCrop;//是否需要裁剪
|
||||||
private boolean mNeedGif;//允许gif图
|
private boolean mNeedGif;//允许gif图
|
||||||
|
ActivityResultLauncher<PickVisualMediaRequest> launcher;
|
||||||
|
|
||||||
public void setNeedGif(boolean mNeedGif) {
|
public void setNeedGif(boolean mNeedGif) {
|
||||||
this.mNeedGif = mNeedGif;
|
this.mNeedGif = mNeedGif;
|
||||||
@@ -83,7 +93,7 @@ public class ProcessImageUtil extends ProcessResultUtil {
|
|||||||
if (mNeedCrop) {
|
if (mNeedCrop) {
|
||||||
Uri uri = null;
|
Uri uri = null;
|
||||||
if (Build.VERSION.SDK_INT >= 24) {
|
if (Build.VERSION.SDK_INT >= 24) {
|
||||||
uri = FileProvider.getUriForFile(mContext, "com.newpandora.yo.fileprovider", mCameraResult);
|
uri = FileProvider.getUriForFile(mContext, mContext.getPackageName() +".fileprovider", mCameraResult);
|
||||||
} else {
|
} else {
|
||||||
uri = Uri.fromFile(mCameraResult);
|
uri = Uri.fromFile(mCameraResult);
|
||||||
}
|
}
|
||||||
@@ -117,6 +127,19 @@ public class ProcessImageUtil extends ProcessResultUtil {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
String path = FileUtils.getPath(mContext, intent.getData());
|
String path = FileUtils.getPath(mContext, intent.getData());
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
|
||||||
|
ImageDecoder.Source source = ImageDecoder.createSource(mContext.getContentResolver(), intent.getData());
|
||||||
|
try {
|
||||||
|
Bitmap bitmap = ImageDecoder.decodeBitmap(source);
|
||||||
|
path=BitmapUtil.getInstance().saveBitmap(bitmap);
|
||||||
|
bitmap.recycle();
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
mResultCallback.onFailure();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
File file = new File(path);
|
File file = new File(path);
|
||||||
if (file.exists()) {
|
if (file.exists()) {
|
||||||
mResultCallback.onSuccess(file);
|
mResultCallback.onSuccess(file);
|
||||||
@@ -153,6 +176,19 @@ public class ProcessImageUtil extends ProcessResultUtil {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
launcher = ((AppCompatActivity) mContext).registerForActivityResult(new ActivityResultContracts.PickVisualMedia(), new androidx.activity.result.ActivityResultCallback<Uri>() {
|
||||||
|
@Override
|
||||||
|
public void onActivityResult(Uri result) {
|
||||||
|
LogUtils.e("result:" + result);
|
||||||
|
if (result == null) {
|
||||||
|
mAlumbResultCallback.onFailure();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Intent intent = new Intent();
|
||||||
|
intent.setData(result);
|
||||||
|
mAlumbResultCallback.onSuccess(intent);
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -173,15 +209,28 @@ public class ProcessImageUtil extends ProcessResultUtil {
|
|||||||
/**
|
/**
|
||||||
* 相册获取图片
|
* 相册获取图片
|
||||||
*/
|
*/
|
||||||
public void getImageByAlumb() {
|
public void getImageByAlbum() {
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
|
||||||
|
showSystemPick();
|
||||||
|
return;
|
||||||
|
}
|
||||||
requestPermissions(mAlumbPermissions, mAlumbPermissionCallback);
|
requestPermissions(mAlumbPermissions, mAlumbPermissionCallback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void getImageByAlumb(boolean needCrop) {
|
public void getImageByAlbum(boolean needCrop) {
|
||||||
this.mNeedCrop = needCrop;
|
this.mNeedCrop = needCrop;
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
|
||||||
|
showSystemPick();
|
||||||
|
return;
|
||||||
|
}
|
||||||
requestPermissions(mAlumbPermissions, mAlumbPermissionCallback);
|
requestPermissions(mAlumbPermissions, mAlumbPermissionCallback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void showSystemPick() {
|
||||||
|
PickVisualMediaRequest.Builder builder = new PickVisualMediaRequest.Builder()
|
||||||
|
.setMediaType(ActivityResultContracts.PickVisualMedia.ImageOnly.INSTANCE);
|
||||||
|
launcher.launch(builder.build());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 开启摄像头,执行照相
|
* 开启摄像头,执行照相
|
||||||
@@ -195,7 +244,7 @@ public class ProcessImageUtil extends ProcessResultUtil {
|
|||||||
mCameraResult = getNewFile();
|
mCameraResult = getNewFile();
|
||||||
Uri uri = null;
|
Uri uri = null;
|
||||||
if (Build.VERSION.SDK_INT >= 24) {
|
if (Build.VERSION.SDK_INT >= 24) {
|
||||||
uri = FileProvider.getUriForFile(mContext, "com.newpandora.yo.fileprovider", mCameraResult);
|
uri = FileProvider.getUriForFile(mContext, mContext.getPackageName()+".fileprovider", mCameraResult);
|
||||||
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
|
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
|
||||||
} else {
|
} else {
|
||||||
uri = Uri.fromFile(mCameraResult);
|
uri = Uri.fromFile(mCameraResult);
|
||||||
@@ -255,7 +304,7 @@ public class ProcessImageUtil extends ProcessResultUtil {
|
|||||||
startActivityForResult(intent, mCropResultCallback);
|
startActivityForResult(intent, mCropResultCallback);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
try {
|
try {
|
||||||
Uri resultUri = FileProvider.getUriForFile(mContext, "com.newpandora.yo.fileprovider", mCorpResult);
|
Uri resultUri = FileProvider.getUriForFile(mContext, mContext.getPackageName()+".fileprovider", mCorpResult);
|
||||||
if (resultUri == null || mFragment == null || mContext == null) {
|
if (resultUri == null || mFragment == null || mContext == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -272,7 +272,7 @@ public class RouteUtil {
|
|||||||
* 跳转到充值页面
|
* 跳转到充值页面
|
||||||
*/
|
*/
|
||||||
public static void forwardMyCoin(Context context) {
|
public static void forwardMyCoin(Context context) {
|
||||||
String url = CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=zhifu&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&isZh=" + (WordUtil.isNewZh() ? "1" : 0);
|
String url = CommonAppConfig.HOST + "/h5/Mall/zhifu.html?uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&isZh=" + (WordUtil.isNewZh() ? "1" : 0);
|
||||||
ARouter.getInstance().build(PATH_COIN).withString("url", url).navigation();
|
ARouter.getInstance().build(PATH_COIN).withString("url", url).navigation();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,9 @@ public class UiConversationCodeUtil {
|
|||||||
|
|
||||||
|
|
||||||
public static boolean checkIsSame(List<BaseUiConversation> list1, List<BaseUiConversation> list2) {
|
public static boolean checkIsSame(List<BaseUiConversation> list1, List<BaseUiConversation> list2) {
|
||||||
|
if (list1.isEmpty()){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
if (list1.size() != list2.size()) return false;
|
if (list1.size() != list2.size()) return false;
|
||||||
int hashCode1 = getListHasCode(list1);
|
int hashCode1 = getListHasCode(list1);
|
||||||
int hashCode2 = getListHasCode(list2);
|
int hashCode2 = getListHasCode(list2);
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ public class VersionUtil {
|
|||||||
@Override
|
@Override
|
||||||
public void onConfirmClick(Dialog dialog, String content) {
|
public void onConfirmClick(Dialog dialog, String content) {
|
||||||
Intent i = new Intent(android.content.Intent.ACTION_VIEW);
|
Intent i = new Intent(android.content.Intent.ACTION_VIEW);
|
||||||
i.setData(Uri.parse("https://play.google.com/store/apps/details?id=com.newpandora.yo"));
|
i.setData(Uri.parse("https://play.google.com/store/apps/details?id="+context.getPackageName()));
|
||||||
context.startActivity(i);
|
context.startActivity(i);
|
||||||
context.finish();
|
context.finish();
|
||||||
}
|
}
|
||||||
@@ -85,7 +85,7 @@ public class VersionUtil {
|
|||||||
@Override
|
@Override
|
||||||
public void onConfirmClick(Dialog dialog, String content) {
|
public void onConfirmClick(Dialog dialog, String content) {
|
||||||
Intent i = new Intent(android.content.Intent.ACTION_VIEW);
|
Intent i = new Intent(android.content.Intent.ACTION_VIEW);
|
||||||
i.setData(Uri.parse("https://play.google.com/store/apps/details?id=com.newpandora.yo"));
|
i.setData(Uri.parse("https://play.google.com/store/apps/details?id="+context.getPackageName()));
|
||||||
context.startActivity(i);
|
context.startActivity(i);
|
||||||
context.finish();
|
context.finish();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,9 @@ public class WordUtil {
|
|||||||
|
|
||||||
public static boolean isNewZh() {
|
public static boolean isNewZh() {
|
||||||
return IMLoginManager.get(CommonAppContext.sInstance).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE
|
return IMLoginManager.get(CommonAppContext.sInstance).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE
|
||||||
|| IMLoginManager.get(CommonAppContext.sInstance).getLocaleLanguage() == Locale.TRADITIONAL_CHINESE ;
|
|| IMLoginManager.get(CommonAppContext.sInstance).getLocaleLanguage() == Locale.TRADITIONAL_CHINESE
|
||||||
|
|| IMLoginManager.get(CommonAppContext.sInstance).getLocaleLanguage() == Locale.CHINESE
|
||||||
|
|| IMLoginManager.get(CommonAppContext.sInstance).getLocaleLanguage() == Locale.CHINA;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getNewString(int res) {
|
public static String getNewString(int res) {
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ public class APKUpdateCustomPopup extends CenterPopupView {
|
|||||||
public void onViewClicks() {
|
public void onViewClicks() {
|
||||||
if (CommonAppConfig.IS_GOOGLE_PLAY == 1) {
|
if (CommonAppConfig.IS_GOOGLE_PLAY == 1) {
|
||||||
Intent i = new Intent(android.content.Intent.ACTION_VIEW);
|
Intent i = new Intent(android.content.Intent.ACTION_VIEW);
|
||||||
i.setData(Uri.parse("https://play.google.com/store/apps/details?id=com.newpandora.yo"));
|
i.setData(Uri.parse("https://play.google.com/store/apps/details?id="+mContext.getPackageName()));
|
||||||
mContext.startActivity(i);
|
mContext.startActivity(i);
|
||||||
mContext.finish();
|
mContext.finish();
|
||||||
} else if (CommonAppConfig.IS_GOOGLE_PLAY == 2) {
|
} else if (CommonAppConfig.IS_GOOGLE_PLAY == 2) {
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import java.util.List;
|
|||||||
public class NineGridLayout extends FrameLayout {
|
public class NineGridLayout extends FrameLayout {
|
||||||
|
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
|
private int fullWidth1;
|
||||||
private int mWidth1;
|
private int mWidth1;
|
||||||
private int mWidth2;
|
private int mWidth2;
|
||||||
private int mWidth3;
|
private int mWidth3;
|
||||||
@@ -33,7 +34,11 @@ public class NineGridLayout extends FrameLayout {
|
|||||||
private LayoutParams[] mLayoutParamsArray;
|
private LayoutParams[] mLayoutParamsArray;
|
||||||
private OnClickListener mOnClickListener;
|
private OnClickListener mOnClickListener;
|
||||||
private List<?> mDataList;
|
private List<?> mDataList;
|
||||||
|
private Boolean onIsFUll = false;
|
||||||
|
|
||||||
|
public void setOnIsFUll(Boolean onIsFUll) {
|
||||||
|
this.onIsFUll = onIsFUll;
|
||||||
|
}
|
||||||
|
|
||||||
public NineGridLayout(Context context) {
|
public NineGridLayout(Context context) {
|
||||||
this(context, null);
|
this(context, null);
|
||||||
@@ -57,8 +62,13 @@ public class NineGridLayout extends FrameLayout {
|
|||||||
DisplayMetrics dm = context.getResources().getDisplayMetrics();
|
DisplayMetrics dm = context.getResources().getDisplayMetrics();
|
||||||
float scale = dm.density;
|
float scale = dm.density;
|
||||||
int width = dm.widthPixels - space;
|
int width = dm.widthPixels - space;
|
||||||
|
fullWidth1= width;
|
||||||
|
|
||||||
mDividerWidth = dividerWidth;
|
mDividerWidth = dividerWidth;
|
||||||
|
|
||||||
mWidth1 = (int) (scale * 220 + 0.5f);
|
mWidth1 = (int) (scale * 220 + 0.5f);
|
||||||
|
|
||||||
|
|
||||||
mWidth2 = (width - dividerWidth) / 2;
|
mWidth2 = (width - dividerWidth) / 2;
|
||||||
mWidth3 = (width - dividerWidth * 2) / 3;
|
mWidth3 = (width - dividerWidth * 2) / 3;
|
||||||
mOnClickListener = new OnClickListener() {
|
mOnClickListener = new OnClickListener() {
|
||||||
@@ -99,15 +109,25 @@ public class NineGridLayout extends FrameLayout {
|
|||||||
if (dataSize == 1) {
|
if (dataSize == 1) {
|
||||||
RoundedImageView imageView = mViewList.get(0);
|
RoundedImageView imageView = mViewList.get(0);
|
||||||
if (mLayoutParams00 == null) {
|
if (mLayoutParams00 == null) {
|
||||||
|
if (onIsFUll){
|
||||||
|
mLayoutParams00 = new LayoutParams(fullWidth1, fullWidth1);
|
||||||
|
}else {
|
||||||
mLayoutParams00 = new LayoutParams(mWidth1, mWidth1);
|
mLayoutParams00 = new LayoutParams(mWidth1, mWidth1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
if (imageView.getLayoutParams() != mLayoutParams00) {
|
if (imageView.getLayoutParams() != mLayoutParams00) {
|
||||||
imageView.setLayoutParams(mLayoutParams00);
|
imageView.setLayoutParams(mLayoutParams00);
|
||||||
}
|
}
|
||||||
if (imageView.getVisibility() != VISIBLE) {
|
if (imageView.getVisibility() != VISIBLE) {
|
||||||
imageView.setVisibility(VISIBLE);
|
imageView.setVisibility(VISIBLE);
|
||||||
}
|
}
|
||||||
|
if (onIsFUll){
|
||||||
|
setHeight(fullWidth1);
|
||||||
|
}else {
|
||||||
setHeight(mWidth1);
|
setHeight(mWidth1);
|
||||||
|
}
|
||||||
|
|
||||||
if (mActionListener != null) {
|
if (mActionListener != null) {
|
||||||
mActionListener.displayImage(list.get(0), imageView);
|
mActionListener.displayImage(list.get(0), imageView);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,177 @@
|
|||||||
|
package com.yunbao.common.views;
|
||||||
|
|
||||||
|
import android.os.Handler;
|
||||||
|
import android.text.TextUtils;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.ImageView;
|
||||||
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import com.lxj.xpopup.XPopup;
|
||||||
|
import com.makeramen.roundedimageview.RoundedImageView;
|
||||||
|
import com.yunbao.common.CommonAppConfig;
|
||||||
|
import com.yunbao.common.R;
|
||||||
|
import com.yunbao.common.bean.CreateSudRoomModel;
|
||||||
|
import com.yunbao.common.bean.LiveBean;
|
||||||
|
import com.yunbao.common.bean.SudRoomListModel;
|
||||||
|
import com.yunbao.common.event.LiveOpenSudRoomEvent;
|
||||||
|
import com.yunbao.common.event.LiveSudGamePopupShowOrHideEvent;
|
||||||
|
import com.yunbao.common.event.SudGameListDissMissEvent;
|
||||||
|
import com.yunbao.common.event.SudGameListRefreshEvent;
|
||||||
|
import com.yunbao.common.glide.ImgLoader;
|
||||||
|
import com.yunbao.common.http.HttpCallback;
|
||||||
|
import com.yunbao.common.http.LiveHttpUtil;
|
||||||
|
import com.yunbao.common.http.live.LiveNetManager;
|
||||||
|
import com.yunbao.common.manager.IMLoginManager;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
|
import com.yunbao.common.utils.LiveRoomCheckLivePresenter;
|
||||||
|
import com.yunbao.common.utils.RouteUtil;
|
||||||
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
|
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||||
|
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
|
public class SudGameListViewHolder2 extends RecyclerView.ViewHolder {
|
||||||
|
|
||||||
|
public RoundedImageView avatar;
|
||||||
|
public ImageView btnLive;
|
||||||
|
public ImageView topBgImg;
|
||||||
|
public ImageView goldCoin;
|
||||||
|
public TextView goldenBeanNumber;
|
||||||
|
public TextView roomName;
|
||||||
|
public TextView gameNumberTv;
|
||||||
|
public TextView roomNumberTv;
|
||||||
|
|
||||||
|
|
||||||
|
public SudGameListViewHolder2(@NonNull View itemView) {
|
||||||
|
super(itemView);
|
||||||
|
avatar = itemView.findViewById(R.id.avatar);
|
||||||
|
btnLive = itemView.findViewById(R.id.btn_live);
|
||||||
|
topBgImg = itemView.findViewById(R.id.topBgImg);
|
||||||
|
goldCoin = itemView.findViewById(R.id.gold_coin);
|
||||||
|
goldenBeanNumber = itemView.findViewById(R.id.golden_bean_number);
|
||||||
|
roomName = itemView.findViewById(R.id.room_name);
|
||||||
|
gameNumberTv = itemView.findViewById(R.id.gameNumberTv);
|
||||||
|
roomNumberTv = itemView.findViewById(R.id.roomNumberTv);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setData(SudRoomListModel model) {
|
||||||
|
ImgLoader.display(itemView.getContext(), model.getAvatar(), avatar);
|
||||||
|
roomName.setText(model.getRoomName());
|
||||||
|
|
||||||
|
// playerWeAre.setText(String.format(itemView.getContext().getString(R.string.interactive_game_player_we_are), model.getPlayerTotal()));
|
||||||
|
// playerWeAre2.setText(String.format(itemView.getContext().getString(R.string.interactive_game_player_we_are_2), model.getTotal()));
|
||||||
|
// gifImageView.setVisibility(TextUtils.equals(model.getLiveUid(), "0") ? View.GONE : View.VISIBLE);
|
||||||
|
|
||||||
|
gameNumberTv.setText(gameNumberTv.getContext().getString(R.string.number_of_players)+":"+model.getTotal());
|
||||||
|
roomNumberTv.setText(gameNumberTv.getContext().getString(R.string.number_of_online)+":"+model.getPlayerTotal() );
|
||||||
|
|
||||||
|
|
||||||
|
goldenBeanNumber.setText(model.getGoldenBeanNumber());
|
||||||
|
if (TextUtils.equals(model.getCurrencyType(), "2")) {
|
||||||
|
ImgLoader.display(itemView.getContext(), R.mipmap.icon_collectibles, goldCoin);
|
||||||
|
} else {
|
||||||
|
ImgLoader.display(itemView.getContext(), R.mipmap.ic_yola_game_dou, goldCoin);
|
||||||
|
}
|
||||||
|
|
||||||
|
ViewClicksAntiShake.clicksAntiShake(itemView.findViewById(R.id.layout), new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||||
|
@Override
|
||||||
|
public void onViewClicks() {
|
||||||
|
LiveNetManager.get(itemView.getContext()).checkRoomStatus(model.getId(), new com.yunbao.common.http.base.HttpCallback<CreateSudRoomModel>() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess(CreateSudRoomModel data) {
|
||||||
|
if (TextUtils.equals(data.getRoomStatus(), "0")) {
|
||||||
|
if (IMLoginManager.get(itemView.getContext()).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE) {
|
||||||
|
ToastUtil.show("房间不存在");
|
||||||
|
} else {
|
||||||
|
ToastUtil.show("The room does not exist");
|
||||||
|
}
|
||||||
|
Bus.get().post(new SudGameListRefreshEvent());
|
||||||
|
} else {
|
||||||
|
CreateSudRoomModel createSudRoomModel = new CreateSudRoomModel();
|
||||||
|
createSudRoomModel.setSudGameId(model.getSudGameId());
|
||||||
|
createSudRoomModel.setSudGameRoomId(model.getSudGameRoomId());
|
||||||
|
createSudRoomModel.setAvatar(model.getAvatar());
|
||||||
|
createSudRoomModel.setRoomName(model.getRoomName());
|
||||||
|
createSudRoomModel.setSudGameName(model.getSudGameName());
|
||||||
|
if (TextUtils.equals(model.getLiveUid(), "0")) {
|
||||||
|
if (CommonAppConfig.getInstance().getConfig().isSw()) {
|
||||||
|
RouteUtil.forwardSwSudGameActivity(new Gson().toJson(createSudRoomModel), true, true);
|
||||||
|
} else {
|
||||||
|
RouteUtil.forwardRySudGameActivity(new Gson().toJson(createSudRoomModel), true, true);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
String yes = "是";
|
||||||
|
if (IMLoginManager.get(itemView.getContext()).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE) {
|
||||||
|
yes = "是";
|
||||||
|
} else {
|
||||||
|
yes = "Yes";
|
||||||
|
}
|
||||||
|
new XPopup.Builder(itemView.getContext())
|
||||||
|
.asCustom(new HintCustomPopup(itemView.getContext(),
|
||||||
|
itemView.getContext().getString(R.string.interactive_game_search_room_currently_live),
|
||||||
|
itemView.getContext().getString(R.string.interactive_game_search_room_broadcast_room))
|
||||||
|
.setLiveOpenOk(yes)
|
||||||
|
.setLiveOpenCancel(itemView.getContext().getString(R.string.interactive_game_search_room_bhe_game))
|
||||||
|
.setCallBack(new HintCustomPopup.HintCustomCallBack() {
|
||||||
|
@Override
|
||||||
|
public void onSure() {
|
||||||
|
LiveHttpUtil.getLiveInfo(model.getLiveUid() + "", new HttpCallback() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
|
if (code == 0 && info.length > 0) {
|
||||||
|
LiveBean liveBean = JSON.parseObject(info[0], LiveBean.class);
|
||||||
|
new LiveRoomCheckLivePresenter(itemView.getContext(), liveBean.getUid(), liveBean.getStream(), new LiveRoomCheckLivePresenter.NewActionListener() {
|
||||||
|
@Override
|
||||||
|
public void onLiveRoomChanged(String liveUid, String stream, int liveType, String liveTypeVal, String liveSdk, boolean isSw) {
|
||||||
|
RouteUtil.forwardLiveAudienceActivity(liveBean, liveType, Integer.parseInt(liveSdk), Integer.parseInt(liveTypeVal), isSw);
|
||||||
|
new Handler().postDelayed(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
Bus.get().post(new LiveOpenSudRoomEvent().setCreateSudRoomModel(createSudRoomModel));
|
||||||
|
}
|
||||||
|
}, 1500);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCheckError(String contextError) {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
RouteUtil.forwardUserHome(itemView.getContext(), model.getLiveUid(), 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCancel() {
|
||||||
|
if (CommonAppConfig.getInstance().getConfig().isSw()) {
|
||||||
|
RouteUtil.forwardSwSudGameActivity(new Gson().toJson(createSudRoomModel), true, true);
|
||||||
|
} else {
|
||||||
|
RouteUtil.forwardRySudGameActivity(new Gson().toJson(createSudRoomModel), true, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})).show();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(String error) {
|
||||||
|
ToastUtil.show(error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
package com.yunbao.common.views.weight;
|
||||||
|
|
||||||
|
import android.view.View;
|
||||||
|
|
||||||
|
import com.jakewharton.rxbinding3.view.RxView;
|
||||||
|
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
import io.reactivex.Observer;
|
||||||
|
import io.reactivex.disposables.Disposable;
|
||||||
|
import kotlin.Unit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* View防抖
|
||||||
|
*/
|
||||||
|
public class OnClickShakeListener implements View.OnClickListener{
|
||||||
|
|
||||||
|
|
||||||
|
private long mDuration=800;
|
||||||
|
private View.OnClickListener mListener;
|
||||||
|
private long lastTime=0;
|
||||||
|
public OnClickShakeListener(View.OnClickListener listener){
|
||||||
|
mListener=listener;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
if (System.currentTimeMillis()-lastTime<mDuration){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lastTime=System.currentTimeMillis();
|
||||||
|
mListener.onClick(v);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
7
common/src/main/res/drawable/bg_f2edd7_10.xml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:shape="rectangle">
|
||||||
|
<corners
|
||||||
|
android:radius="10dp"/>
|
||||||
|
<solid android:color="#FFF" />
|
||||||
|
</shape>
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item android:width="68dp" android:height="37dp">
|
<item android:width="68dp" android:height="37dp">
|
||||||
<shape android:shape="rectangle">
|
<shape android:shape="rectangle">
|
||||||
<stroke android:width="1dp" android:color="#EB6FFF" />
|
<stroke android:width="1dp" android:color="#FFF5E997" />
|
||||||
<corners android:topLeftRadius="15dp" android:topRightRadius="15dp" android:bottomLeftRadius="15dp" android:bottomRightRadius="15dp" />
|
<corners android:topLeftRadius="15dp" android:topRightRadius="15dp" android:bottomLeftRadius="15dp" android:bottomRightRadius="15dp" />
|
||||||
</shape>
|
</shape>
|
||||||
</item>
|
</item>
|
||||||
|
|||||||
9
common/src/main/res/drawable/bg_msg_yola_recommend.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<corners
|
||||||
|
android:topLeftRadius="15dp"
|
||||||
|
android:topRightRadius="15dp"
|
||||||
|
android:bottomLeftRadius="15dp"
|
||||||
|
android:bottomRightRadius="15dp" />
|
||||||
|
<solid android:color="#FEE540"/>
|
||||||
|
</shape>
|
||||||
BIN
common/src/main/res/drawable/bg_yola_splash_log.png
Normal file
|
After Width: | Height: | Size: 1.4 MiB |
BIN
common/src/main/res/drawable/ic_yola_splash_log.png
Normal file
|
After Width: | Height: | Size: 77 KiB |
@@ -1,30 +1,35 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="70dp"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
android:layout_height="70dp"
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
android:background="@drawable/bg_loading_dialog"
|
android:background="@drawable/bg_loading_dialog"
|
||||||
android:orientation="vertical"
|
android:minWidth="70dp"
|
||||||
>
|
android:minHeight="70dp"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
<ProgressBar
|
<ProgressBar
|
||||||
android:layout_width="24dp"
|
android:layout_width="24dp"
|
||||||
android:layout_height="24dp"
|
android:layout_height="24dp"
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
android:layout_marginBottom="8dp"
|
|
||||||
android:layout_marginTop="14dp"
|
android:layout_marginTop="14dp"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
android:indeterminateBehavior="repeat"
|
android:indeterminateBehavior="repeat"
|
||||||
android:indeterminateDrawable="@drawable/anim_loading"
|
android:indeterminateDrawable="@drawable/anim_loading"
|
||||||
android:indeterminateOnly="true"
|
android:indeterminateOnly="true" />
|
||||||
/>
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/text"
|
android:id="@+id/text"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
android:maxWidth="140dp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:paddingStart="10dp"
|
||||||
|
android:paddingEnd="10dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
android:text="@string/loading"
|
android:text="@string/loading"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp" />
|
||||||
/>
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
62
common/src/main/res/layout/item_game_type_select_view.xml
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
tools:layout_width="94dp">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/gameBg"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:layout_marginStart="5dp"
|
||||||
|
android:layout_marginEnd="5dp"
|
||||||
|
android:src="@mipmap/ic_yola_game_bg_1"
|
||||||
|
app:layout_constraintDimensionRatio="1.32"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/line" />
|
||||||
|
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/gameIcon"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:src="@mipmap/ic_yola_game_1"
|
||||||
|
app:layout_constraintDimensionRatio="1"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintWidth_percent="0.48" />
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:id="@+id/line"
|
||||||
|
android:layout_width="1dp"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/gameIcon"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/gameIcon"
|
||||||
|
app:layout_constraintVertical_bias="0.36" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/gameName"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@string/interactive_game_room_all"
|
||||||
|
android:paddingStart="4dp"
|
||||||
|
android:paddingEnd="4dp"
|
||||||
|
android:textColor="@color/color_111111"
|
||||||
|
android:textSize="12sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/gameBg"
|
||||||
|
app:layout_constraintEnd_toEndOf="@+id/gameBg"
|
||||||
|
app:layout_constraintStart_toStartOf="@+id/gameBg"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/gameIcon"
|
||||||
|
app:layout_constraintVertical_bias="0.34" />
|
||||||
|
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
119
common/src/main/res/layout/item_home_sud_game_list2.xml
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/layout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginBottom="9dp"
|
||||||
|
android:layout_marginEnd="16dp"
|
||||||
|
android:background="@drawable/bg_f2edd7_10">
|
||||||
|
|
||||||
|
<com.makeramen.roundedimageview.RoundedImageView
|
||||||
|
android:id="@+id/avatar"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginTop="18dp"
|
||||||
|
android:layout_marginBottom="18dp"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintDimensionRatio="1"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintWidth_percent="0.14"
|
||||||
|
app:riv_oval="true" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
app:layout_constraintStart_toStartOf="@+id/avatar"
|
||||||
|
app:layout_constraintEnd_toEndOf="@+id/avatar"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/avatar"
|
||||||
|
android:layout_marginBottom="-8dp"
|
||||||
|
android:id="@+id/btn_live"
|
||||||
|
android:layout_width="36dp"
|
||||||
|
android:layout_height="14dp"
|
||||||
|
android:layout_gravity="bottom|center_horizontal"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:src="@mipmap/icon_user_game_living"
|
||||||
|
tools:visibility="gone"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/topBgImg"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
app:layout_constraintWidth_percent="0.14"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
app:layout_constraintDimensionRatio="2.66"
|
||||||
|
android:src="@mipmap/ic_yola_game_radus"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/gold_coin"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:layout_marginBottom="2dp"
|
||||||
|
app:layout_constraintDimensionRatio="1"
|
||||||
|
android:background="@mipmap/ic_yola_game_dou"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/topBgImg"
|
||||||
|
app:layout_constraintEnd_toEndOf="@+id/topBgImg"
|
||||||
|
app:layout_constraintHorizontal_bias="0.78"
|
||||||
|
app:layout_constraintStart_toStartOf="@+id/topBgImg"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/topBgImg" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/golden_bean_number"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginEnd="1dp"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/topBgImg"
|
||||||
|
app:layout_constraintEnd_toStartOf="@+id/gold_coin"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/topBgImg"
|
||||||
|
tools:text="1000"
|
||||||
|
android:textColor="#FFBA8232"
|
||||||
|
android:textSize="10sp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/room_name"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:singleLine="true"
|
||||||
|
android:text="@string/interactive_game_create_room_name"
|
||||||
|
android:textColor="#222"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/avatar"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/avatar"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/avatar"
|
||||||
|
app:layout_constraintVertical_bias="0.16" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/gameNumberTv"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/number_of_players"
|
||||||
|
android:textColor="#777"
|
||||||
|
android:textSize="11sp"
|
||||||
|
app:layout_constraintVertical_bias="0.6"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/avatar"
|
||||||
|
app:layout_constraintStart_toStartOf="@+id/room_name"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/room_name" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/roomNumberTv"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/number_of_online"
|
||||||
|
android:textColor="#777"
|
||||||
|
android:textSize="11sp"
|
||||||
|
android:layout_marginStart="9dp"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/gameNumberTv"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/gameNumberTv"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/gameNumberTv" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
@@ -49,13 +49,13 @@
|
|||||||
android:layout_width="51dp"
|
android:layout_width="51dp"
|
||||||
android:layout_height="26dp"
|
android:layout_height="26dp"
|
||||||
android:ellipsize="end"
|
android:ellipsize="end"
|
||||||
android:background="@drawable/bg_msg_recommend"
|
android:background="@drawable/bg_msg_yola_recommend"
|
||||||
android:maxWidth="120dp"
|
android:maxWidth="120dp"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:layout_gravity="center_vertical"
|
android:layout_gravity="center_vertical"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/black1"
|
||||||
android:textSize="11dp"
|
android:textSize="11sp"
|
||||||
tools:text="打招呼" />
|
tools:text="打招呼" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|||||||
@@ -54,7 +54,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
android:layout_marginRight="15dp"
|
android:layout_marginRight="15dp"
|
||||||
android:text="PD LIVE"
|
android:text="Yola LIVE"
|
||||||
android:textColor="@color/gray3" />
|
android:textColor="@color/gray3" />
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
@@ -39,7 +39,7 @@
|
|||||||
android:maxWidth="120dp"
|
android:maxWidth="120dp"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
android:textColor="@color/rc_text_main_color"
|
android:textColor="@color/rc_text_main_color"
|
||||||
android:textSize="13dp"
|
android:textSize="15sp"
|
||||||
app:layout_constraintStart_toEndOf="@+id/rc_conversation_portrait"
|
app:layout_constraintStart_toEndOf="@+id/rc_conversation_portrait"
|
||||||
app:layout_constraintTop_toTopOf="@+id/rc_conversation_portrait"
|
app:layout_constraintTop_toTopOf="@+id/rc_conversation_portrait"
|
||||||
tools:text="张三11111111111111111111111" />
|
tools:text="张三11111111111111111111111" />
|
||||||
@@ -54,7 +54,7 @@
|
|||||||
android:paddingEnd="3dp"
|
android:paddingEnd="3dp"
|
||||||
android:paddingBottom="3dp"
|
android:paddingBottom="3dp"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:textColor="#EC70FD"
|
android:textColor="#FF9C7512"
|
||||||
android:layout_marginStart="12dp"
|
android:layout_marginStart="12dp"
|
||||||
android:textSize="10sp"
|
android:textSize="10sp"
|
||||||
app:layout_constraintTop_toTopOf="@+id/rc_conversation_title"
|
app:layout_constraintTop_toTopOf="@+id/rc_conversation_title"
|
||||||
@@ -75,7 +75,7 @@
|
|||||||
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_title"
|
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_title"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
android:textColor="@color/rc_auxiliary_color"
|
android:textColor="@color/rc_auxiliary_color"
|
||||||
android:textSize="@dimen/rc_font_nav_or_date_size"
|
android:textSize="12sp"
|
||||||
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
android:layout_marginStart="14dp"
|
android:layout_marginStart="14dp"
|
||||||
android:layout_marginEnd="14dp"
|
android:layout_marginEnd="14dp"
|
||||||
android:textColor="#0D21B2"
|
android:textColor="#0D21B2"
|
||||||
tools:text="1.戰令開啟時,完成戰令任務,提升戰令等級,可獲得大量等級獎勵。\n2.所有用戶免費解鎖普通版,戰令開啟時隨時可進階為精英版和尊享版,獲得豐厚額外專屬獎勵。\n3.三種戰令都會獎勵積分,可在兌換商城中兌換心儀的寶貝,部分寶貝兌換有戰令等級要求或兌換數量限制。\n4.每日任務0點刷新,未完成任務進度不再累計,每季任務將會在新一季戰令開啟時刷新。\n5.任務達成時需主動領取經驗,未领取經驗將會在任務刷新時過期。\n6.活動最終解釋權歸PDLIVE所有。"
|
tools:text="1.戰令開啟時,完成戰令任務,提升戰令等級,可獲得大量等級獎勵。\n2.所有用戶免費解鎖普通版,戰令開啟時隨時可進階為精英版和尊享版,獲得豐厚額外專屬獎勵。\n3.三種戰令都會獎勵積分,可在兌換商城中兌換心儀的寶貝,部分寶貝兌換有戰令等級要求或兌換數量限制。\n4.每日任務0點刷新,未完成任務進度不再累計,每季任務將會在新一季戰令開啟時刷新。\n5.任務達成時需主動領取經驗,未领取經驗將會在任務刷新時過期。\n6.活動最終解釋權歸Yola所有。"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.core.widget.NestedScrollView>
|
</androidx.core.widget.NestedScrollView>
|
||||||
|
|||||||
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_1.png
Normal file
|
After Width: | Height: | Size: 9.9 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_2.png
Normal file
|
After Width: | Height: | Size: 9.8 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_3.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_4.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_5.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_6.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_7.png
Normal file
|
After Width: | Height: | Size: 8.7 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_8.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_bg_1.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_bg_2.png
Normal file
|
After Width: | Height: | Size: 9.2 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_bg_3.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_bg_4.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_bot_arrow.png
Normal file
|
After Width: | Height: | Size: 469 B |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_create.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_dou.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_end_2.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_end_3.png
Normal file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_end_4.png
Normal file
|
After Width: | Height: | Size: 7.5 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_end_5.png
Normal file
|
After Width: | Height: | Size: 6.6 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_end_6.png
Normal file
|
After Width: | Height: | Size: 8.5 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_end_7.png
Normal file
|
After Width: | Height: | Size: 5.0 KiB |
BIN
common/src/main/res/mipmap-hdpi/ic_yola_game_end_8.png
Normal file
|
After Width: | Height: | Size: 6.3 KiB |