完善谷歌重订阅,修改crash

This commit is contained in:
guozhen 2025-06-16 10:53:18 +08:00
parent e7fea6f3c4
commit b264d8633c
53 changed files with 435 additions and 839 deletions

Binary file not shown.

View File

@ -447,7 +447,7 @@ public class LibrariesForLibs extends AbstractExternalDependencyFactory {
public Provider<String> getAdjust() { return getVersion("adjust"); } public Provider<String> getAdjust() { return getVersion("adjust"); }
/** /**
* Returns the version associated to this alias: agp (8.9.2) * Returns the version associated to this alias: agp (8.2.2)
* If the version is a rich version and that its not expressible as a * If the version is a rich version and that its not expressible as a
* single version string, then an empty string is returned. * single version string, then an empty string is returned.
* This version was declared in catalog libs.versions.toml * This version was declared in catalog libs.versions.toml

View File

@ -604,7 +604,7 @@ public class LibrariesForLibsInPluginsBlock extends AbstractExternalDependencyFa
public Provider<String> getAdjust() { return getVersion("adjust"); } public Provider<String> getAdjust() { return getVersion("adjust"); }
/** /**
* Returns the version associated to this alias: agp (8.9.2) * Returns the version associated to this alias: agp (8.2.2)
* If the version is a rich version and that its not expressible as a * If the version is a rich version and that its not expressible as a
* single version string, then an empty string is returned. * single version string, then an empty string is returned.
* This version was declared in catalog libs.versions.toml * This version was declared in catalog libs.versions.toml

Binary file not shown.

View File

@ -4,6 +4,14 @@
<selectionStates> <selectionStates>
<SelectionState runConfigName="app"> <SelectionState runConfigName="app">
<option name="selectionMode" value="DROPDOWN" /> <option name="selectionMode" value="DROPDOWN" />
<DropdownSelection timestamp="2025-05-06T05:29:51.114312500Z">
<Target type="DEFAULT_BOOT">
<handle>
<DeviceId pluginId="PhysicalDevice" identifier="serial=XW69EAMRN7FAFYR4" />
</handle>
</Target>
</DropdownSelection>
<DialogSelection />
</SelectionState> </SelectionState>
</selectionStates> </selectionStates>
</component> </component>

1
.idea/vcs.xml generated
View File

@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="VcsDirectoryMappings"> <component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
<mapping directory="$PROJECT_DIR$" vcs="Git" /> <mapping directory="$PROJECT_DIR$" vcs="Git" />
</component> </component>
</project> </project>

View File

@ -147,6 +147,10 @@
-keep class * implements android.os.Parcelable { -keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *; public static final android.os.Parcelable$Creator *;
} }
-keepclassmembers class ** {
public <init>(android.os.Parcel);
}
-keep class com.shortdrama.jelly.zyreotv.** implements android.os.Parcelable
-keepclassmembers class * implements java.io.Serializable { -keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID; static final long serialVersionUID;

View File

@ -53,6 +53,7 @@ public class GPplicationLoadingdefault extends Application {
if (activityCount == 1 && isBackground) { if (activityCount == 1 && isBackground) {
isBackground = false; isBackground = false;
EventBus.getDefault().post(ITItem.Constants_AppEnter); EventBus.getDefault().post(ITItem.Constants_AppEnter);
EventBus.getDefault().post(ITItem.Constants_AppOnline);
} }
} }

View File

@ -61,6 +61,8 @@ public class ITItem {
public static final String Constants_DeepLinkData_URL = "Constants_DeepLinkData_URL"; public static final String Constants_DeepLinkData_URL = "Constants_DeepLinkData_URL";
public static final String Constants_RestorePay_key = "Constants_RestorePay_Key"; public static final String Constants_RestorePay_key = "Constants_RestorePay_Key";
public static final String Constants_Refresh_Auth = "Constants_Refresh_Auth";
public static final String Constants_Refresh_LoginUser402 = "Constants_Refresh_LoginUser";
public static boolean isCanPlay = true; public static boolean isCanPlay = true;
public static boolean isLock = false; public static boolean isLock = false;

View File

@ -13,7 +13,7 @@ public class LogUtils {
} }
// public static boolean isDebug = ApiService.isDebug;// 是否需要打印bug可以在application的onCreate函数里面初始化 // public static boolean isDebug = ApiService.isDebug;// 是否需要打印bug可以在application的onCreate函数里面初始化
public static boolean isDebug = false; public static boolean isDebug = true;
// public static boolean isDebug = false;// 是否需要打印bug可以在application的onCreate函数里面初始化 // public static boolean isDebug = false;// 是否需要打印bug可以在application的onCreate函数里面初始化
private static final String TAG = "GleeStreamLog"; private static final String TAG = "GleeStreamLog";

View File

@ -126,20 +126,24 @@ public class TIndicator {
public static void savePayOrder(GSGooglePayInfo googlePayInfo) { public static void savePayOrder(GSGooglePayInfo googlePayInfo) {
LogUtils.d("恢复订单== 存储订单" + googlePayInfo.getOrder_code());
String string = TIndicator.getString(ITItem.Constants_RestorePay_key, ""); String string = TIndicator.getString(ITItem.Constants_RestorePay_key, "");
ArrayList<GSGooglePayInfo> orderInfoList = new ArrayList<GSGooglePayInfo>(); ArrayList<GSGooglePayInfo> orderInfoList = new ArrayList<GSGooglePayInfo>();
if (!TextUtils.isEmpty(string)) { if (!TextUtils.isEmpty(string) && !string.equals("[]")) {
orderInfoList.addAll(REnterCircle.getListFromJSON(string, GSGooglePayInfo.class)); List<GSGooglePayInfo> initList = REnterCircle.getListFromJSON(string, GSGooglePayInfo.class);
}else{ initList.add(googlePayInfo);
orderInfoList.addAll(initList);
} else {
orderInfoList.add(orderInfoList.size(), googlePayInfo); orderInfoList.add(orderInfoList.size(), googlePayInfo);
} }
LogUtils.d("恢复订单== 存储" + orderInfoList.size());
savePayOrderList(orderInfoList); savePayOrderList(orderInfoList);
} }
public static ArrayList<GSGooglePayInfo> getPayOrder() { public static ArrayList<GSGooglePayInfo> getPayOrder() {
String string = TIndicator.getString(ITItem.Constants_RestorePay_key, ""); String string = TIndicator.getString(ITItem.Constants_RestorePay_key, "");
ArrayList<GSGooglePayInfo> orderInfoList = new ArrayList<GSGooglePayInfo>(); ArrayList<GSGooglePayInfo> orderInfoList = new ArrayList<GSGooglePayInfo>();
if (!TextUtils.isEmpty(string)) { if (!TextUtils.isEmpty(string) && !string.equals("[]")) {
orderInfoList.addAll(REnterCircle.getListFromJSON(string, GSGooglePayInfo.class)); orderInfoList.addAll(REnterCircle.getListFromJSON(string, GSGooglePayInfo.class));
} }

View File

@ -6,6 +6,8 @@ import android.os.Looper;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
import androidx.annotation.NonNull;
import com.android.billingclient.api.AcknowledgePurchaseParams; import com.android.billingclient.api.AcknowledgePurchaseParams;
import com.android.billingclient.api.BillingClient; import com.android.billingclient.api.BillingClient;
import com.android.billingclient.api.BillingClientStateListener; import com.android.billingclient.api.BillingClientStateListener;
@ -14,6 +16,7 @@ import com.android.billingclient.api.BillingResult;
import com.android.billingclient.api.ConsumeParams; import com.android.billingclient.api.ConsumeParams;
import com.android.billingclient.api.ProductDetails; import com.android.billingclient.api.ProductDetails;
import com.android.billingclient.api.Purchase; import com.android.billingclient.api.Purchase;
import com.android.billingclient.api.PurchasesResponseListener;
import com.android.billingclient.api.PurchasesUpdatedListener; import com.android.billingclient.api.PurchasesUpdatedListener;
import com.android.billingclient.api.QueryProductDetailsParams; import com.android.billingclient.api.QueryProductDetailsParams;
@ -76,6 +79,7 @@ public class ZYTGooglePayUtils {
this.callErrorBack = callErrorBack; this.callErrorBack = callErrorBack;
PurchasesUpdatedListener purchasesUpdatedListener = (billingResult, purchases) -> { PurchasesUpdatedListener purchasesUpdatedListener = (billingResult, purchases) -> {
LogUtils.d("恢复订单 responseCode==" + billingResult.getResponseCode());
if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK && purchases != null) { if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK && purchases != null) {
for (Purchase purchase : purchases) { for (Purchase purchase : purchases) {
if (purchase.getPurchaseState() == Purchase.PurchaseState.PURCHASED) { if (purchase.getPurchaseState() == Purchase.PurchaseState.PURCHASED) {
@ -91,6 +95,7 @@ public class ZYTGooglePayUtils {
} else if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.USER_CANCELED) { } else if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.USER_CANCELED) {
callErrorBack.onCallError(null, userCanceledTip); callErrorBack.onCallError(null, userCanceledTip);
} else { } else {
LogUtils.d("恢复订单 errormsg==" + billingResult.getDebugMessage());
callErrorBack.onCallError(null, payError + ": " + billingResult.getDebugMessage()); callErrorBack.onCallError(null, payError + ": " + billingResult.getDebugMessage());
} }
}; };
@ -349,12 +354,29 @@ public class ZYTGooglePayUtils {
mBillingClient.consumeAsync(consumeParams, (billingResult, purchaseToken) -> { mBillingClient.consumeAsync(consumeParams, (billingResult, purchaseToken) -> {
if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK) { if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK) {
callSuccessBack.onCallSuccess(purchase); callSuccessBack.onCallSuccess(purchase);
} else if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.ITEM_ALREADY_OWNED) {
queryAndConsumePurchases();
} else { } else {
callErrorBack.onCallError(purchase, consumingPurchase + ": " + billingResult.getResponseCode() + billingResult.getDebugMessage()); callErrorBack.onCallError(purchase, consumingPurchase + ": " + billingResult.getResponseCode() + billingResult.getDebugMessage());
} }
}); });
} }
private void queryAndConsumePurchases() {
// 查询所有未消费的购买记录
mBillingClient.queryPurchasesAsync(BillingClient.ProductType.INAPP, new PurchasesResponseListener() {
@Override
public void onQueryPurchasesResponse(@NonNull BillingResult billingResult, @NonNull List<Purchase> list) {
if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK) {
for (Purchase purchase : list) {
consumePurchase(purchase);
}
}
}
});
}
private void consumePurchaseSub(Purchase purchase) { private void consumePurchaseSub(Purchase purchase) {
AcknowledgePurchaseParams acknowledgePurchaseParams = AcknowledgePurchaseParams.newBuilder() AcknowledgePurchaseParams acknowledgePurchaseParams = AcknowledgePurchaseParams.newBuilder()
.setPurchaseToken(purchase.getPurchaseToken()) .setPurchaseToken(purchase.getPurchaseToken())
@ -368,4 +390,6 @@ public class ZYTGooglePayUtils {
} }
}); });
} }
} }

View File

@ -78,7 +78,7 @@ public interface KGZyreotv {
public static final String GleeStream_USERAgreement = readViewingStop(new int[]{32, 60, 60, 56, 59, 114, 103, 103, 63, 63, 63, 102, 50, 49, 58, 45, 39, 60, 62, 102, 43, 39, 37, 103, 61, 59, 45, 58, 23, 56, 39, 36, 33, 43, 49, 72}, 0x48, false); public static final String GleeStream_USERAgreement = readViewingStop(new int[]{32, 60, 60, 56, 59, 114, 103, 103, 63, 63, 63, 102, 50, 49, 58, 45, 39, 60, 62, 102, 43, 39, 37, 103, 61, 59, 45, 58, 23, 56, 39, 36, 33, 43, 49, 72}, 0x48, false);
public static final String GleeStream_Delete = "https://www.zyreotv.com/logout"; public static final String GleeStream_Delete = "https://www.zyreotv.com/logout";
public static final String GleeStream_Feedback_Index = "https://campaign.zyreotv.com/pages/leave/index "; public static final String GleeStream_Feedback_Index = "https://campaign.zyreotv.com/pages/leave/index";
public static final String GleeStream_Feedback_List = "https://campaign.zyreotv.com/pages/leave/list"; public static final String GleeStream_Feedback_List = "https://campaign.zyreotv.com/pages/leave/list";
public static final String GleeStream_Feedback_Details = "https://campaign.zyreotv.com/pages/leave/detail"; public static final String GleeStream_Feedback_Details = "https://campaign.zyreotv.com/pages/leave/detail";
public static final String GleeStream_VisitWeb = "https://www.zyreotv.com/"; public static final String GleeStream_VisitWeb = "https://www.zyreotv.com/";

View File

@ -3,7 +3,9 @@ package com.shortdrama.jelly.zyreotv.dlsym;
import com.google.gson.JsonParseException; import com.google.gson.JsonParseException;
import com.shortdrama.jelly.zyreotv.beginning.ITItem;
import org.greenrobot.eventbus.EventBus;
import org.json.JSONException; import org.json.JSONException;
import java.io.InterruptedIOException; import java.io.InterruptedIOException;
@ -15,9 +17,6 @@ import io.reactivex.observers.DisposableObserver;
import retrofit2.HttpException; import retrofit2.HttpException;
public abstract class RREStyles<T> extends DisposableObserver<T> { public abstract class RREStyles<T> extends DisposableObserver<T> {
public static final int PARSE_ERROR = 1001; public static final int PARSE_ERROR = 1001;
@ -32,23 +31,21 @@ public abstract class RREStyles<T> extends DisposableObserver<T> {
public void onNext(T o) { public void onNext(T o) {
try { try {
IMACloseStroke follow = (IMACloseStroke) o; IMACloseStroke follow = (IMACloseStroke) o;
boolean auto_s9 = true;
while (!auto_s9) { break; }
if (follow.code == 200) { if (follow.code == 200) {
onSuccess(o); onSuccess(o);
int agreemente = 7546;
while (agreemente <= 87) { break; }
} else { } else {
onError(follow.code,follow.msg); onError(follow.code, follow.msg);
int preference_ = 8810;
} }
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
boolean androidm = true; boolean androidm = true;
if (!androidm) {} if (!androidm) {
onError(407,e.toString()); }
onError(407, e.toString());
float langX = 5598.0f; float langX = 5598.0f;
while (langX >= 57) { break; } while (langX >= 57) {
break;
}
} }
@ -57,62 +54,81 @@ public abstract class RREStyles<T> extends DisposableObserver<T> {
@Override @Override
public void onError(Throwable e) { public void onError(Throwable e) {
if (e instanceof HttpException) { if (e instanceof HttpException) {
int code = ((HttpException) e).code();
attachPortSupport(BAD_NETWORK); if (code == 401) {
EventBus.getDefault().post(ITItem.Constants_Refresh_Auth);
}
if (code == 402) {
EventBus.getDefault().post(ITItem.Constants_Refresh_LoginUser402);
}
attachPortSupport(BAD_NETWORK, e);
boolean runnableR = false; boolean runnableR = false;
if (!runnableR) {} if (!runnableR) {
}
} else if (e instanceof ConnectException } else if (e instanceof ConnectException
|| e instanceof UnknownHostException) { || e instanceof UnknownHostException) {
attachPortSupport(CONNECT_ERROR); attachPortSupport(CONNECT_ERROR, e);
boolean gradle0 = true; boolean gradle0 = true;
while (!gradle0) { break; } while (!gradle0) {
break;
}
} else if (e instanceof InterruptedIOException) { } else if (e instanceof InterruptedIOException) {
attachPortSupport(CONNECT_TIMEOUT); attachPortSupport(CONNECT_TIMEOUT, e);
boolean updatedw = false; boolean updatedw = false;
if (!updatedw) {} if (!updatedw) {
}
} else if (e instanceof JsonParseException } else if (e instanceof JsonParseException
|| e instanceof JSONException || e instanceof JSONException
|| e instanceof ParseException) { || e instanceof ParseException) {
attachPortSupport(PARSE_ERROR); attachPortSupport(PARSE_ERROR, e);
double finishJ = 9621.0; double finishJ = 9621.0;
while (finishJ < 105) { break; } while (finishJ < 105) {
break;
}
System.out.println(finishJ); System.out.println(finishJ);
} else { } else {
if (e != null) { if (e != null) {
onError(409,e.toString()); onError(409, e.toString());
double callA = 6836.0; double callA = 6836.0;
if (callA > 66) {} if (callA > 66) {
System.out.println(callA); }
System.out.println(callA);
} else { } else {
onError(407,"未知错误"); onError(407, "response body is null");
boolean more6 = false; boolean more6 = false;
while (!more6) { break; } while (!more6) {
System.out.println(more6); break;
}
System.out.println(more6);
} }
} }
} }
private void attachPortSupport(int unknownError) { private void attachPortSupport(int unknownError, Throwable e) {
switch (unknownError) { switch (unknownError) {
case CONNECT_ERROR: case CONNECT_ERROR:
onError(CONNECT_ERROR,"连接错误"); // onError(CONNECT_ERROR,"连接错误");
onError(CONNECT_ERROR, e.getMessage());
break; break;
case CONNECT_TIMEOUT: case CONNECT_TIMEOUT:
onError(CONNECT_TIMEOUT,"连接超时"); onError(CONNECT_ERROR, e.getMessage());
// onError(CONNECT_TIMEOUT,"连接超时");
break; break;
case BAD_NETWORK: case BAD_NETWORK:
onError(BAD_NETWORK,"网络问题"); onError(CONNECT_ERROR, e.getMessage());
// onError(BAD_NETWORK,"网络问题");
break; break;
case PARSE_ERROR: case PARSE_ERROR:
onError(PARSE_ERROR,"宇宙也是有尽头的"); onError(CONNECT_ERROR, e.getMessage());
// onError(PARSE_ERROR,"宇宙也是有尽头的");
break; break;
default: default:
@ -127,6 +143,6 @@ public abstract class RREStyles<T> extends DisposableObserver<T> {
public abstract void onSuccess(T o); public abstract void onSuccess(T o);
public abstract void onError(int code,String msg); public abstract void onError(int code, String msg);
} }

View File

@ -192,6 +192,7 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
public void run() { public void run() {
userViewModel.onlineApp(); userViewModel.onlineApp();
handler.postDelayed(this, 600000); // 10 分钟执行一次 handler.postDelayed(this, 600000); // 10 分钟执行一次
// handler.postDelayed(this, 60000); // 1 分钟执行一次
} }
}; };
handler.post(onLineRunnable); // 启动 handler.post(onLineRunnable); // 启动
@ -219,24 +220,34 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
binding.getRoot().postDelayed(new Runnable() { binding.getRoot().postDelayed(new Runnable() {
@Override @Override
public void run() { public void run() {
ArrayList<GSGooglePayInfo> list = TIndicator.getPayOrder(); listRestore = TIndicator.getPayOrder();
if (!list.isEmpty()) { if (listRestore.size() > 0) {
for (GSGooglePayInfo googlePayInfoItem : list) { toRestore();
gsGooglePayInfoRestore = googlePayInfoItem;
handler.postDelayed(new Runnable() {
@Override
public void run() {
userViewModel.restorePay(gsGooglePayInfoRestore);
}
}, 2000);
}
} }
// if (!list.isEmpty()) {
// for (GSGooglePayInfo googlePayInfoItem : list) {
// gsGooglePayInfoRestore = googlePayInfoItem;
// handler.postDelayed(new Runnable() {
// @Override
// public void run() {
// userViewModel.restorePay(gsGooglePayInfoRestore);
// }
// }, 2000);
// }
// }
} }
}, 3000); }, 3000);
} }
private ArrayList<GSGooglePayInfo> listRestore;
public void toRestore() {
gsGooglePayInfoRestore = listRestore.get(listRestore.size() - 1);
userViewModel.restorePay(gsGooglePayInfoRestore);
}
private String path = ""; private String path = "";
private String short_play_id = ""; private String short_play_id = "";
private String message_id = ""; private String message_id = "";
@ -310,6 +321,7 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
) == PackageManager.PERMISSION_GRANTED ) == PackageManager.PERMISSION_GRANTED
) { ) {
isRequestNotify = false; isRequestNotify = false;
jumpDetails();
firebaseToken(); firebaseToken();
userViewModel.opendNotify(); userViewModel.opendNotify();
} else { } else {
@ -321,6 +333,7 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
} else { } else {
if (NotifyUtils.isNotificationEnable(this)) { if (NotifyUtils.isNotificationEnable(this)) {
isRequestNotify = false; isRequestNotify = false;
jumpDetails();
firebaseToken(); firebaseToken();
userViewModel.opendNotify(); userViewModel.opendNotify();
} else { } else {
@ -410,18 +423,26 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
userViewModel.getRestorePayLiveData().observe(this, imaCloseStroke -> { userViewModel.getRestorePayLiveData().observe(this, imaCloseStroke -> {
if (imaCloseStroke != null) { if (imaCloseStroke != null) {
int index =-1; listRestore.remove(listRestore.size() - 1);
ArrayList<GSGooglePayInfo> list = TIndicator.getPayOrder(); if (listRestore.size() > 0) {
for (int i=0;i<list.size();i++){ toRestore();
if(list.get(i).getOrder_code().equals(gsGooglePayInfoRestore.getOrder_code())){ }else{
index = i; TIndicator.savePayOrderList(listRestore);
break;
}
} }
if (index >= 0) { // int index = -1;
list.remove(index); // ArrayList<GSGooglePayInfo> list = TIndicator.getPayOrder();
} // for (int i = 0; i < list.size(); i++) {
TIndicator.savePayOrderList(list); // if (list.get(i).getOrder_code().equals(gsGooglePayInfoRestore.getOrder_code())) {
// index = i;
// break;
// }
// }
// if (index >= 0) {
// list.remove(index);
// }
// TIndicator.savePayOrderList(list);
}else{
TIndicator.savePayOrderList(listRestore);
} }
}); });
@ -465,6 +486,20 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
if (ITItem.CONSTANTS_Language_Refresh_Event.equals(event)) { if (ITItem.CONSTANTS_Language_Refresh_Event.equals(event)) {
userViewModel.getTransLates(); userViewModel.getTransLates();
} }
if (ITItem.Constants_Refresh_Auth.equals(event)) {
userViewModel.regist();
userViewModel.enterApp();
userViewModel.onlineApp();
}
if (ITItem.Constants_Refresh_LoginUser402.equals(event)) {
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_account_alreadyloged() : getString(R.string.youraccount_isalreadylogged), 0);
userViewModel.regist();
EventBus.getDefault().post(ITItem.CONSTANTS_User_Refresh_Event);
userViewModel.enterApp();
userViewModel.onlineApp();
}
} }
@ -487,12 +522,17 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
private void jumpDetails() { private void jumpDetails() {
w2aSelfAttribution(clipString); if (shortPlayId != 0) {
clipString = ""; w2aSelfAttribution(clipString);
LRewards.startPlayerDetails(AExtractionActivity.this, shortPlayId, videoId); clipString = "";
TIndicator.saveString(ITItem.Constants_DeepLinkData_URL, ""); LRewards.startPlayerDetails(AExtractionActivity.this, shortPlayId, videoId);
cleanClipData(); shortPlayId = 0;
needSave = false; videoId = 0;
TIndicator.saveString(ITItem.Constants_DeepLinkData_URL, "");
cleanClipData();
needSave = false;
}
} }
private String getClipContent() { private String getClipContent() {
@ -503,7 +543,12 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
int itemCount = primaryClip.getItemCount(); int itemCount = primaryClip.getItemCount();
if (clipboardManager.hasPrimaryClip() && itemCount > 0) { if (clipboardManager.hasPrimaryClip() && itemCount > 0) {
ClipData.Item item = primaryClip.getItemAt(0); ClipData.Item item = primaryClip.getItemAt(0);
return item.getText().toString(); if (item != null) {
return item.getText().toString();
} else {
return "";
}
} }
} }
return ""; return "";
@ -597,6 +642,7 @@ public class AExtractionActivity extends IDDetailsRoundActivity<TManifestService
binding.getRoot().postDelayed(new Runnable() { binding.getRoot().postDelayed(new Runnable() {
@Override @Override
public void run() { public void run() {
clipString = ddl;
if (isRequestNotify) { if (isRequestNotify) {
return; return;
} }

View File

@ -5,6 +5,7 @@ import static com.shortdrama.jelly.zyreotv.beginning.ITItem.CONSTANTS_UserWeb_Re
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.CONSTANTS_User_Refresh_Event; import static com.shortdrama.jelly.zyreotv.beginning.ITItem.CONSTANTS_User_Refresh_Event;
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppEnter; import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppEnter;
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppLeave; import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppLeave;
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppOnline;
import android.graphics.Color; import android.graphics.Color;
@ -96,6 +97,8 @@ public class GSDeleteAccountActivity extends IDDetailsRoundActivity<ActivityDele
@Override @Override
public void toSure() { public void toSure() {
binding.loading.show(); binding.loading.show();
EventBus.getDefault()
.post(Constants_AppLeave);
userViewModel.logoOff(); userViewModel.logoOff();
} }
@ -114,13 +117,13 @@ public class GSDeleteAccountActivity extends IDDetailsRoundActivity<ActivityDele
userViewModel.getLogoffLiveData().observe(this, feedbackResp -> { userViewModel.getLogoffLiveData().observe(this, feedbackResp -> {
if (feedbackResp != null) { if (feedbackResp != null) {
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_deleteaccount_success() : "Account deleted successfully", 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_deleteaccount_success() : "Account deleted successfully", 0);
EventBus.getDefault()
.post(Constants_AppLeave);
LoginManager.getInstance().logOut(); LoginManager.getInstance().logOut();
binding.loading.hide(); binding.loading.hide();
userViewModel.regist(); userViewModel.regist();
} else { } else {
EventBus.getDefault()
.post(Constants_AppEnter);
binding.loading.hide(); binding.loading.hide();
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_service_abnormality() : "The service is abnormal. Check the network.", 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_service_abnormality() : "The service is abnormal. Check the network.", 0);
} }
@ -134,6 +137,8 @@ public class GSDeleteAccountActivity extends IDDetailsRoundActivity<ActivityDele
userViewModel.getUserInfo(); userViewModel.getUserInfo();
EventBus.getDefault() EventBus.getDefault()
.post(Constants_AppEnter); .post(Constants_AppEnter);
EventBus.getDefault()
.post(Constants_AppOnline);
EventBus.getDefault() EventBus.getDefault()
.post(CONSTANTS_User_Refresh_Event); .post(CONSTANTS_User_Refresh_Event);
EventBus.getDefault() EventBus.getDefault()
@ -143,6 +148,8 @@ public class GSDeleteAccountActivity extends IDDetailsRoundActivity<ActivityDele
GSDeleteAccountActivity.this.finish(); GSDeleteAccountActivity.this.finish();
} else { } else {
EventBus.getDefault()
.post(Constants_AppEnter);
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_service_abnormality() : "The service is abnormal. Check the network.", 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_service_abnormality() : "The service is abnormal. Check the network.", 0);
} }
}); });

View File

@ -24,6 +24,7 @@ import com.facebook.FacebookCallback;
import com.facebook.FacebookException; import com.facebook.FacebookException;
import com.facebook.FacebookSdk; import com.facebook.FacebookSdk;
import com.facebook.GraphRequest; import com.facebook.GraphRequest;
import com.facebook.login.LoginBehavior;
import com.facebook.login.LoginManager; import com.facebook.login.LoginManager;
import com.facebook.login.LoginResult; import com.facebook.login.LoginResult;
import com.shortdrama.jelly.zyreotv.R; import com.shortdrama.jelly.zyreotv.R;
@ -98,7 +99,6 @@ public class GSLoginActivity extends IDDetailsRoundActivity<ActivityLoginBinding
}; };
ClickableSpan privacyClick = new ClickableSpan() { ClickableSpan privacyClick = new ClickableSpan() {
@Override @Override
public void onClick(@NonNull View widget) { public void onClick(@NonNull View widget) {
@ -111,7 +111,7 @@ public class GSLoginActivity extends IDDetailsRoundActivity<ActivityLoginBinding
ds.setColor(Color.parseColor("#888888")); ds.setColor(Color.parseColor("#888888"));
} }
}; };
// privacyClick.updateDrawState(userPaint); // privacyClick.updateDrawState(userPaint);
spannableString.setSpan(userClick, startUser, endUser, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); spannableString.setSpan(userClick, startUser, endUser, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
spannableString.setSpan(privacyClick, startprivacy, endprivacy, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); spannableString.setSpan(privacyClick, startprivacy, endprivacy, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
@ -136,6 +136,7 @@ public class GSLoginActivity extends IDDetailsRoundActivity<ActivityLoginBinding
WCenterVideo.singleClick(new Runnable() { WCenterVideo.singleClick(new Runnable() {
@Override @Override
public void run() { public void run() {
LoginManager.getInstance().logOut(); // 清除 Facebook 登录缓存
LoginManager.getInstance().logInWithReadPermissions(GSLoginActivity.this, Arrays.asList("email", "public_profile")); LoginManager.getInstance().logInWithReadPermissions(GSLoginActivity.this, Arrays.asList("email", "public_profile"));
} }
}); });

View File

@ -6,6 +6,7 @@ import static com.shortdrama.jelly.zyreotv.beginning.ITItem.CONSTANTS_UserWeb_Re
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.CONSTANTS_User_Refresh_Event; import static com.shortdrama.jelly.zyreotv.beginning.ITItem.CONSTANTS_User_Refresh_Event;
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppEnter; import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppEnter;
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppLeave; import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppLeave;
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppOnline;
import android.content.Intent; import android.content.Intent;
@ -82,6 +83,8 @@ public class ZYTSettingActivity extends IDDetailsRoundActivity<ActivitySettingZy
binding.layoutSettingActionbar.ivTopback.setOnClickListener(v -> finish()); binding.layoutSettingActionbar.ivTopback.setOnClickListener(v -> finish());
binding.tvSettingLoginout.setOnClickListener(v -> { binding.tvSettingLoginout.setOnClickListener(v -> {
if (!TIndicator.isTourist()) { if (!TIndicator.isTourist()) {
EventBus.getDefault()
.post(Constants_AppLeave);
binding.loading.show(); binding.loading.show();
userViewModel.doLogOut(); userViewModel.doLogOut();
} else { } else {
@ -157,22 +160,22 @@ public class ZYTSettingActivity extends IDDetailsRoundActivity<ActivitySettingZy
userViewModel.getLogoutLiveData().observe(this, feedbackResp -> { userViewModel.getLogoutLiveData().observe(this, feedbackResp -> {
if (feedbackResp != null) { if (feedbackResp != null) {
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_logou_success() : "Logout Succes", 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_logou_success() : "Logout Succes", 0);
TIndicator.saveString(TIndicator.auth, feedbackResp.data.getToken());
EventBus.getDefault()
.post(Constants_AppLeave);
LoginManager.getInstance().logOut(); LoginManager.getInstance().logOut();
TIndicator.saveString(TIndicator.auth, feedbackResp.data.getToken());
EventBus.getDefault() EventBus.getDefault()
.post(Constants_AppEnter); .post(Constants_AppEnter);
EventBus.getDefault() EventBus.getDefault()
.post(CONSTANTS_User_Refresh_Event); .post(CONSTANTS_User_Refresh_Event);
EventBus.getDefault() EventBus.getDefault()
.post(CONSTANTS_UserWeb_Refresh_Event); .post(CONSTANTS_UserWeb_Refresh_Event);
EventBus.getDefault()
.post(Constants_AppOnline);
binding.loading.hide(); binding.loading.hide();
ZYTSettingActivity.this.finish(); ZYTSettingActivity.this.finish();
} else { } else {
EventBus.getDefault()
.post(Constants_AppEnter);
binding.loading.hide(); binding.loading.hide();
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_service_abnormality() : "Service abnormality, please check the network", 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_service_abnormality() : "Service abnormality, please check the network", 0);
} }

View File

@ -101,6 +101,18 @@ public class GSMyVipActivity extends IDDetailsRoundActivity<ActivityVipZytBindin
userViewModel.getGooglePay(gsGooglePayInfo); userViewModel.getGooglePay(gsGooglePayInfo);
}, (purchase, str) -> { }, (purchase, str) -> {
PAYLoginHeaddefault.revealToast(str, 0); PAYLoginHeaddefault.revealToast(str, 0);
if(purchase!=null){
gsGooglePayInfo = new GSGooglePayInfo();
gsGooglePayInfo.setOrder_code(current_order_code);
gsGooglePayInfo.setPay_setting_id(String.valueOf(current_pay_setting_id));
gsGooglePayInfo.setPkg_name(GSMyVipActivity.this.getPackageName());
gsGooglePayInfo.setProduct_id(String.valueOf(android_template_id));
gsGooglePayInfo.setPurchases_token(purchase.getPurchaseToken());
gsGooglePayInfo.setTransaction_id(purchase.getOrderId());
gsGooglePayInfo.setShow_money(current_price);
TIndicator.savePayOrder(gsGooglePayInfo);
}
}); });
zytGooglePayUtils.setqueryProductResult(new ZYTGooglePayUtils.QueryProductResult() { zytGooglePayUtils.setqueryProductResult(new ZYTGooglePayUtils.QueryProductResult() {
@Override @Override

View File

@ -1,5 +1,7 @@
package com.shortdrama.jelly.zyreotv.topics.abslRwgt.decbn; package com.shortdrama.jelly.zyreotv.topics.abslRwgt.decbn;
import static com.shortdrama.jelly.zyreotv.beginning.ITItem.Constants_AppLeave;
import android.os.Handler; import android.os.Handler;
import android.os.Looper; import android.os.Looper;
@ -20,6 +22,7 @@ import androidx.lifecycle.ViewModel;
import com.shortdrama.jelly.zyreotv.beginning.AppUtils; import com.shortdrama.jelly.zyreotv.beginning.AppUtils;
import com.shortdrama.jelly.zyreotv.beginning.ITItem; import com.shortdrama.jelly.zyreotv.beginning.ITItem;
import com.shortdrama.jelly.zyreotv.beginning.PAYLoginHeaddefault;
import com.shortdrama.jelly.zyreotv.beginning.REnterCircle; import com.shortdrama.jelly.zyreotv.beginning.REnterCircle;
import com.shortdrama.jelly.zyreotv.beginning.TIndicator; import com.shortdrama.jelly.zyreotv.beginning.TIndicator;
import com.shortdrama.jelly.zyreotv.dlsym.IMACloseStroke; import com.shortdrama.jelly.zyreotv.dlsym.IMACloseStroke;
@ -39,6 +42,8 @@ import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.ZYTUserBuyRecordsBean;
import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.ZYTUserSendCoinsBean; import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.ZYTUserSendCoinsBean;
import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.ZYTUserTypeRecordsBean; import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.ZYTUserTypeRecordsBean;
import org.greenrobot.eventbus.EventBus;
import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers; import io.reactivex.schedulers.Schedulers;
@ -762,12 +767,10 @@ public class GXCProgressLogin extends ViewModel {
.subscribe(new RREStyles<IMACloseStroke>() { .subscribe(new RREStyles<IMACloseStroke>() {
@Override @Override
public void onSuccess(IMACloseStroke o) { public void onSuccess(IMACloseStroke o) {
} }
@Override @Override
public void onError(int code, String msg) { public void onError(int code, String msg) {
} }
}); });
@ -907,10 +910,7 @@ public class GXCProgressLogin extends ViewModel {
} }
public void restorePay(GSGooglePayInfo restorePay) {
public void restorePay(GSGooglePayInfo restorePay){
VZBack.getInstance().getGooglePay(restorePay) VZBack.getInstance().getGooglePay(restorePay)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
@ -938,6 +938,8 @@ public class GXCProgressLogin extends ViewModel {
@Override @Override
public void onSuccess(IMACloseStroke<VPisodesAppnameBean> o) { public void onSuccess(IMACloseStroke<VPisodesAppnameBean> o) {
EventBus.getDefault()
.post(Constants_AppLeave);
loginLiveData.setValue(o); loginLiveData.setValue(o);
} }

View File

@ -52,6 +52,7 @@ import com.shortdrama.jelly.zyreotv.databinding.LpEnterLocalBinding;
import com.shortdrama.jelly.zyreotv.dlsym.KGZyreotv; import com.shortdrama.jelly.zyreotv.dlsym.KGZyreotv;
import com.shortdrama.jelly.zyreotv.topics.abslRwgt.XLHeaddefaultActivity; import com.shortdrama.jelly.zyreotv.topics.abslRwgt.XLHeaddefaultActivity;
import com.shortdrama.jelly.zyreotv.topics.abslRwgt.app.GSLanguageActivity; import com.shortdrama.jelly.zyreotv.topics.abslRwgt.app.GSLanguageActivity;
import com.shortdrama.jelly.zyreotv.topics.abslRwgt.movepage.ODQHistoryFragment;
import com.shortdrama.jelly.zyreotv.topics.abslRwgt.pragma.CommonSelectorDialog; import com.shortdrama.jelly.zyreotv.topics.abslRwgt.pragma.CommonSelectorDialog;
import com.shortdrama.jelly.zyreotv.topics.abslRwgt.pragma.VipPurchaseDialog; import com.shortdrama.jelly.zyreotv.topics.abslRwgt.pragma.VipPurchaseDialog;
import com.shortdrama.jelly.zyreotv.topics.abslRwgt.web.ZYTWebViewIndexActivity; import com.shortdrama.jelly.zyreotv.topics.abslRwgt.web.ZYTWebViewIndexActivity;
@ -86,6 +87,9 @@ public class UBJPrivateOllowFragment extends Fragment {
ZYTGooglePayUtils zytGooglePayUtils; ZYTGooglePayUtils zytGooglePayUtils;
public UBJPrivateOllowFragment(){
}
public static UBJPrivateOllowFragment newInstance() { public static UBJPrivateOllowFragment newInstance() {
return new UBJPrivateOllowFragment(); return new UBJPrivateOllowFragment();
@ -468,6 +472,17 @@ public class UBJPrivateOllowFragment extends Fragment {
}, (purchase, str) -> { }, (purchase, str) -> {
PAYLoginHeaddefault.revealToast(str, 0); PAYLoginHeaddefault.revealToast(str, 0);
if(purchase!=null){
gsGooglePayInfo = new GSGooglePayInfo();
gsGooglePayInfo.setOrder_code(current_order_code);
gsGooglePayInfo.setPay_setting_id(String.valueOf(current_pay_setting_id));
gsGooglePayInfo.setPkg_name(getActivity().getPackageName());
gsGooglePayInfo.setProduct_id(String.valueOf(android_template_id));
gsGooglePayInfo.setPurchases_token(purchase.getPurchaseToken());
gsGooglePayInfo.setTransaction_id(purchase.getOrderId());
gsGooglePayInfo.setShow_money(current_price);
TIndicator.savePayOrder(gsGooglePayInfo);
}
}); });
zytGooglePayUtils.setqueryProductResult(new ZYTGooglePayUtils.QueryProductResult() { zytGooglePayUtils.setqueryProductResult(new ZYTGooglePayUtils.QueryProductResult() {
@Override @Override

View File

@ -39,6 +39,7 @@ import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.GSTranslatesBean;
import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.ZYTPaySettingBean; import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.ZYTPaySettingBean;
import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.EventBus;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
@ -47,6 +48,14 @@ import java.util.LinkedList;
import java.util.List; import java.util.List;
import java.util.Queue; import java.util.Queue;
import kotlin.Unit;
import kotlin.coroutines.Continuation;
import kotlin.jvm.functions.Function1;
import kotlinx.coroutines.CoroutineScope;
import kotlinx.coroutines.Dispatchers;
import kotlinx.coroutines.flow.Flow;
import kotlinx.coroutines.flow.FlowCollector;
public class ZYTStoreActivity extends IDDetailsRoundActivity<ActivityStoreBinding> { public class ZYTStoreActivity extends IDDetailsRoundActivity<ActivityStoreBinding> {
@ -170,9 +179,21 @@ public class ZYTStoreActivity extends IDDetailsRoundActivity<ActivityStoreBindin
gsGooglePayInfo.setTransaction_id(purchase.getOrderId()); gsGooglePayInfo.setTransaction_id(purchase.getOrderId());
gsGooglePayInfo.setShow_money(current_price); gsGooglePayInfo.setShow_money(current_price);
vtUserViewModel.getGooglePay(gsGooglePayInfo); vtUserViewModel.getGooglePay(gsGooglePayInfo);
// TIndicator.savePayOrder(gsGooglePayInfo);
}, (purchase, str) -> { }, (purchase, str) -> {
binding.loading.hide(); binding.loading.hide();
PAYLoginHeaddefault.revealToast(str, 0); PAYLoginHeaddefault.revealToast(str, 0);
if (purchase != null) {
gsGooglePayInfo = new GSGooglePayInfo();
gsGooglePayInfo.setOrder_code(current_order_code);
gsGooglePayInfo.setPay_setting_id(String.valueOf(current_pay_setting_id));
gsGooglePayInfo.setPkg_name(ZYTStoreActivity.this.getPackageName());
gsGooglePayInfo.setProduct_id(String.valueOf(android_template_id));
gsGooglePayInfo.setPurchases_token(purchase.getPurchaseToken());
gsGooglePayInfo.setTransaction_id(purchase.getOrderId());
gsGooglePayInfo.setShow_money(current_price);
TIndicator.savePayOrder(gsGooglePayInfo);
}
}); });
zytGooglePayUtils.setqueryProductResult(new ZYTGooglePayUtils.QueryProductResult() { zytGooglePayUtils.setqueryProductResult(new ZYTGooglePayUtils.QueryProductResult() {
@Override @Override
@ -235,18 +256,21 @@ public class ZYTStoreActivity extends IDDetailsRoundActivity<ActivityStoreBindin
WCenterVideo.singleClick(new Runnable() { WCenterVideo.singleClick(new Runnable() {
@Override @Override
public void run() { public void run() {
ArrayList<GSGooglePayInfo> list = TIndicator.getPayOrder(); listRestore = TIndicator.getPayOrder();
if (!list.isEmpty()) { if (!listRestore.isEmpty() && listRestore.size() > 0) {
for (GSGooglePayInfo googlePayInfoItem : list) {
gsGooglePayInfoRestore = googlePayInfoItem; toRestore();
handler.postDelayed(new Runnable() {
@Override // for (GSGooglePayInfo googlePayInfoItem : list) {
public void run() { // handler.postDelayed(new Runnable() {
binding.loading.smoothToShow(); // @Override
userViewModel.restorePay(gsGooglePayInfoRestore); // public void run() {
} // gsGooglePayInfoRestore = googlePayInfoItem;
}, 2000); // LogUtils.d("恢复订单===" + gsGooglePayInfoRestore.getOrder_code());
} // userViewModel.restorePay(gsGooglePayInfoRestore);
// }
// }, 2000);
// }
} else { } else {
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_no_restored() : getString(R.string.toast_norestore_txt), 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_no_restored() : getString(R.string.toast_norestore_txt), 0);
} }
@ -257,6 +281,29 @@ public class ZYTStoreActivity extends IDDetailsRoundActivity<ActivityStoreBindin
} }
private ArrayList<GSGooglePayInfo> listRestore;
private void toRestore() {
binding.loading.show();
gsGooglePayInfoRestore = listRestore.get(listRestore.size() - 1);
userViewModel.restorePay(gsGooglePayInfoRestore);
}
// private void processListWithDelay(List<GSGooglePayInfo> list) {
// Handler handler = new Handler(Looper.getMainLooper());
// long delayMillis = 500; // 500ms 延迟
//
// for (int i = 0; i < list.size(); i++) {
// final GSGooglePayInfo item = list.get(i);
// gsGooglePayInfoRestore = item;
// LogUtils.d("恢复订单=== i==" + i + " ordernumber" + item.getOrder_code());
// handler.postDelayed(() -> {
// binding.loading.show();
// LogUtils.d("恢复订单===" + gsGooglePayInfoRestore.getOrder_code());
// userViewModel.restorePay(gsGooglePayInfoRestore);
// }, i * delayMillis); // 延迟依次增加
// }
// }
// private void queryAvailableCoinsProducts(List<ZYTPaySettingBean.Coins> list) { // private void queryAvailableCoinsProducts(List<ZYTPaySettingBean.Coins> list) {
// List<QueryProductDetailsParams.Product> products = new ArrayList<>(); // List<QueryProductDetailsParams.Product> products = new ArrayList<>();
@ -400,6 +447,7 @@ public class ZYTStoreActivity extends IDDetailsRoundActivity<ActivityStoreBindin
if (vtCreateOrderBean != null && vtCreateOrderBean.data != null) { if (vtCreateOrderBean != null && vtCreateOrderBean.data != null) {
String userId = TIndicator.getUserInfo().getId(); String userId = TIndicator.getUserInfo().getId();
current_order_code = vtCreateOrderBean.data.getOrder_code(); current_order_code = vtCreateOrderBean.data.getOrder_code();
LogUtils.d("恢复订单== 创建订单===" + current_order_code);
if (vtCreateOrderBean.data.getType().equals(BillingClient.ProductType.SUBS)) { if (vtCreateOrderBean.data.getType().equals(BillingClient.ProductType.SUBS)) {
String productType = BillingClient.ProductType.SUBS; String productType = BillingClient.ProductType.SUBS;
zytGooglePayUtils.getGoogleProduct( zytGooglePayUtils.getGoogleProduct(
@ -438,23 +486,34 @@ public class ZYTStoreActivity extends IDDetailsRoundActivity<ActivityStoreBindin
vtUserViewModel.getRestorePayLiveData().observe(this, imaCloseStroke -> { vtUserViewModel.getRestorePayLiveData().observe(this, imaCloseStroke -> {
if (imaCloseStroke != null) { if (imaCloseStroke != null) {
int index = -1; listRestore.remove(listRestore.size() - 1);
ArrayList<GSGooglePayInfo> list = TIndicator.getPayOrder(); if (listRestore.size() > 0) {
for (int i = 0; i < list.size(); i++) { toRestore();
if (list.get(i).getOrder_code().equals(gsGooglePayInfoRestore.getOrder_code())) { } else {
index = i;
break;
}
}
if (index >= 0) {
list.remove(index);
}
TIndicator.savePayOrderList(list);
if (list.isEmpty()) {
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_googlepay_success() : getString(R.string.google_pay_success), 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_googlepay_success() : getString(R.string.google_pay_success), 0);
EventBus.getDefault() EventBus.getDefault()
.post(ITItem.CONSTANTS_User_Refresh_Event); .post(ITItem.CONSTANTS_User_Refresh_Event);
} }
TIndicator.savePayOrderList(listRestore);
// int index = -1;
// ArrayList<GSGooglePayInfo> list = TIndicator.getPayOrder();
// LogUtils.d("恢复订单 list.size==" + list.size());
// for (int i = 0; i < list.size(); i++) {
// if (list.get(i).getOrder_code().equals(gsGooglePayInfoRestore.getOrder_code())) {
// index = i;
// break;
// }
// }
// if (index >= 0) {
// list.remove(index);
// }
// if (list.isEmpty()) {
// PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_googlepay_success() : getString(R.string.google_pay_success), 0);
//
// }
} else {
TIndicator.savePayOrderList(listRestore);
} }
binding.loading.hide(); binding.loading.hide();
}); });

View File

@ -64,6 +64,9 @@ public class ODQHistoryFragment extends Fragment {
DDetails adapter; DDetails adapter;
LinearLayoutManager layoutManager; LinearLayoutManager layoutManager;
public ODQHistoryFragment(){
}
public static ODQHistoryFragment newInstance() { public static ODQHistoryFragment newInstance() {
return new ODQHistoryFragment(); return new ODQHistoryFragment();
} }

View File

@ -67,10 +67,14 @@ volatile float desEditTickSpace = 0.0f;
private int serviceHome; private int serviceHome;
public PAXOmmonGradientFragment(){
}
public static PAXOmmonGradientFragment newInstance(int serviceHome) { public static PAXOmmonGradientFragment newInstance(int serviceHome) {
PAXOmmonGradientFragment view = new PAXOmmonGradientFragment();
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putInt("categoryId", serviceHome); bundle.putInt("categoryId", serviceHome);
PAXOmmonGradientFragment view = new PAXOmmonGradientFragment();
view.setArguments(bundle); view.setArguments(bundle);
return view; return view;
} }

View File

@ -55,6 +55,10 @@ public class VItemGradlewFragment extends Fragment {
private List<Fragment> centerAdapterFragment; private List<Fragment> centerAdapterFragment;
public VItemGradlewFragment(){
}
public static VItemGradlewFragment newInstance() { public static VItemGradlewFragment newInstance() {
return new VItemGradlewFragment(); return new VItemGradlewFragment();
} }

View File

@ -55,6 +55,10 @@ volatile boolean canTry_zEsult = false;
ONShapeSingle adapter; ONShapeSingle adapter;
LinearLayoutManager layoutManager; LinearLayoutManager layoutManager;
public ZPisodesFragment(){
}
public static ZPisodesFragment newInstance() { public static ZPisodesFragment newInstance() {
return new ZPisodesFragment(); return new ZPisodesFragment();
} }

View File

@ -39,6 +39,11 @@ public class CClickFragment extends DialogFragment {
private int currentTab = 0; private int currentTab = 0;
LSQExampleCloseBean.YSearchUser readData;
private int currentPosition;
private List<LSQExampleCloseBean.YPZTestUnselect> list;
@Override @Override
public Dialog onCreateDialog(Bundle savedInstanceState) { public Dialog onCreateDialog(Bundle savedInstanceState) {
@ -48,9 +53,13 @@ public class CClickFragment extends DialogFragment {
RqyHistoryDialogBinding bind = RqyHistoryDialogBinding.bind(view); RqyHistoryDialogBinding bind = RqyHistoryDialogBinding.bind(view);
LSQExampleCloseBean.YSearchUser readData = getArguments().getParcelable(ITItem.Constants_Page_Episodes_Series_Data_VT); try {
List<LSQExampleCloseBean.YPZTestUnselect> list = getArguments().getParcelableArrayList(ITItem.Constants_Page_Episodes_Series_Data_List); readData = getArguments().getParcelable(ITItem.Constants_Page_Episodes_Series_Data_VT);
Integer currentPosition = getArguments().getInt(ITItem.Constants_Page_Episodes_Series_Data_currentPosition, 0); list = getArguments().getParcelableArrayList(ITItem.Constants_Page_Episodes_Series_Data_List);
currentPosition = getArguments().getInt(ITItem.Constants_Page_Episodes_Series_Data_currentPosition, 0);
} catch (Exception e) {
}
TFMLoadingdefault hibitEpisodesSeriesAdapter = new TFMLoadingdefault(); TFMLoadingdefault hibitEpisodesSeriesAdapter = new TFMLoadingdefault();
@ -59,8 +68,8 @@ public class CClickFragment extends DialogFragment {
bind.rvDataEpisodesSeries.setAdapter(hibitEpisodesSeriesAdapter); bind.rvDataEpisodesSeries.setAdapter(hibitEpisodesSeriesAdapter);
int length = Math.min(list.size(), 30);
if (list != null && !list.isEmpty()) { if (list != null && !list.isEmpty()) {
int length = Math.min(list.size(), 30);
int size = list.size(); int size = list.size();
int count = size / length; int count = size / length;
int remainder = size % length; int remainder = size % length;
@ -82,7 +91,7 @@ public class CClickFragment extends DialogFragment {
break; break;
} }
} }
if(bind.tablayoutEpisodes.getTabCount()>0){ if (bind.tablayoutEpisodes.getTabCount() > 0) {
bind.tablayoutEpisodes.getTabAt(currentTab).select(); bind.tablayoutEpisodes.getTabAt(currentTab).select();
updateRecyclerView(bind.tablayoutEpisodes.getTabAt(currentTab).getText().toString(), hibitEpisodesSeriesAdapter); updateRecyclerView(bind.tablayoutEpisodes.getTabAt(currentTab).getText().toString(), hibitEpisodesSeriesAdapter);
hibitEpisodesSeriesAdapter.setCurrentPosition(currentPosition + 1); hibitEpisodesSeriesAdapter.setCurrentPosition(currentPosition + 1);

View File

@ -60,6 +60,9 @@ public class ZYTEpisodesRechargeDialogFragment extends BottomSheetDialogFragment
public ZYTGooglePayUtils zytGooglePayUtils; public ZYTGooglePayUtils zytGooglePayUtils;
public ZYTEpisodesRechargeDialogFragment(){
}
public ZYTEpisodesRechargeDialogFragment(Context context, ZYTGooglePayUtils zytGooglePayUtil, boolean isConnect) { public ZYTEpisodesRechargeDialogFragment(Context context, ZYTGooglePayUtils zytGooglePayUtil, boolean isConnect) {
this.context = context; this.context = context;
this.zytGooglePayUtils = zytGooglePayUtil; this.zytGooglePayUtils = zytGooglePayUtil;

View File

@ -238,6 +238,17 @@ public class ZYTVideoPlayerDetailsActivity extends IDDetailsRoundActivity<MchDim
{ {
PAYLoginHeaddefault.revealToast(str, 0); PAYLoginHeaddefault.revealToast(str, 0);
if (purchase != null && currentItem != null) {
gsGooglePayInfo = new GSGooglePayInfo();
gsGooglePayInfo.setOrder_code(currentItem.getCurrent_order_code());
gsGooglePayInfo.setPay_setting_id(String.valueOf(currentItem.getCurrent_pay_setting_id()));
gsGooglePayInfo.setPkg_name(getPackageName());
gsGooglePayInfo.setProduct_id(currentItem.getAndroid_template_id());
gsGooglePayInfo.setPurchases_token(purchase.getPurchaseToken());
gsGooglePayInfo.setTransaction_id(purchase.getOrderId());
gsGooglePayInfo.setShow_money(currentItem.getCurrent_price());
TIndicator.savePayOrder(gsGooglePayInfo);
}
}); });
zytGooglePayUtils.startConnection(connect -> isConnect = connect); zytGooglePayUtils.startConnection(connect -> isConnect = connect);
vtGooglePlayerAdapter = new WVideoplay(); vtGooglePlayerAdapter = new WVideoplay();
@ -273,7 +284,7 @@ public class ZYTVideoPlayerDetailsActivity extends IDDetailsRoundActivity<MchDim
60, 60,
15 15
); );
viewBinding.viewVideoRecommend.bannerRecommend.setAdapter(recommondVideoBannerAdapter);
translates = AppUtils.getTranslates(); translates = AppUtils.getTranslates();
if (translates != null) { if (translates != null) {
viewBinding.viewVideoRecommend.tvRecommend.setText(AppUtils.replace(translates.getGleestream_recommond_title(), "90%")); viewBinding.viewVideoRecommend.tvRecommend.setText(AppUtils.replace(translates.getGleestream_recommond_title(), "90%"));
@ -393,7 +404,7 @@ public class ZYTVideoPlayerDetailsActivity extends IDDetailsRoundActivity<MchDim
} }
}); });
viewBinding.viewVideoRecommend.bannerRecommend.setAdapter(recommondVideoBannerAdapter);
viewBinding.viewVideoRecommend.tvWatchNowRecommend.setOnClickListener(v -> { viewBinding.viewVideoRecommend.tvWatchNowRecommend.setOnClickListener(v -> {
DBeanUnselectBean data = recommondVideoBannerAdapter.getData(recommendBannerPosition); DBeanUnselectBean data = recommondVideoBannerAdapter.getData(recommendBannerPosition);
if (data != null) { if (data != null) {
@ -537,8 +548,8 @@ public class ZYTVideoPlayerDetailsActivity extends IDDetailsRoundActivity<MchDim
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_googlepay_success() : getString(R.string.google_pay_success), 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_googlepay_success() : getString(R.string.google_pay_success), 0);
needRefresh = true; needRefresh = true;
userViewModel.getUserInfo(); userViewModel.getUserInfo();
// LSQExampleCloseBean.YPZTestUnselect item = vtGooglePlayerAdapter.getItems().get(currentPosition); // LSQExampleCloseBean.YPZTestUnselect item = vtGooglePlayerAdapter.getItems().get(currentPosition);
// vtViewModel.getVideoDetails(item.getShort_play_id(), item.getShort_play_video_id(),activity_id); // vtViewModel.getVideoDetails(item.getShort_play_id(), 0, activity_id);
} else { } else {
PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_network_error() : getString(R.string.beanFollowlist), 0); PAYLoginHeaddefault.revealToast(translates != null ? translates.getGleestream_network_error() : getString(R.string.beanFollowlist), 0);
if (gsGooglePayInfo != null) { if (gsGooglePayInfo != null) {
@ -550,10 +561,11 @@ public class ZYTVideoPlayerDetailsActivity extends IDDetailsRoundActivity<MchDim
userViewModel.getGetUserInfoLiveData().observe(this, tjEpisodeRoundBeanIMACloseStroke -> { userViewModel.getGetUserInfoLiveData().observe(this, tjEpisodeRoundBeanIMACloseStroke -> {
if (tjEpisodeRoundBeanIMACloseStroke != null) { if (tjEpisodeRoundBeanIMACloseStroke != null) {
TJEpisodeRoundBean data = tjEpisodeRoundBeanIMACloseStroke.data; // TJEpisodeRoundBean data = tjEpisodeRoundBeanIMACloseStroke.data;
if (data.isIs_vip() && needRefresh) { // if (data.isIs_vip() && needRefresh) {
detailRefresh(); // detailRefresh();
} // }
detailRefresh();
} }
@ -781,7 +793,7 @@ public class ZYTVideoPlayerDetailsActivity extends IDDetailsRoundActivity<MchDim
super.onStop(); super.onStop();
if (vtGooglePlayerAdapter != null && !vtGooglePlayerAdapter.getItems().isEmpty()) { if (vtGooglePlayerAdapter != null && !vtGooglePlayerAdapter.getItems().isEmpty()) {
LSQExampleCloseBean.YPZTestUnselect item = vtGooglePlayerAdapter.getItems().get(currentPosition); LSQExampleCloseBean.YPZTestUnselect item = vtGooglePlayerAdapter.getItems().get(currentPosition);
if (!item.isIs_lock()) { if (!item.isIs_lock() && pageGoogleExoPlayerView() != null) {
vtViewModel.uploadHistorySeconds(needRestart ? 0 : pageGoogleExoPlayerView().getlastProgress(), item.getShort_play_id(), item.getShort_play_video_id()); vtViewModel.uploadHistorySeconds(needRestart ? 0 : pageGoogleExoPlayerView().getlastProgress(), item.getShort_play_id(), item.getShort_play_video_id());
} }

View File

@ -22,6 +22,10 @@ public abstract class SZIBackgroundInfoFragment<T> extends Fragment {
return _viewBinding; return _viewBinding;
} }
public SZIBackgroundInfoFragment(){
}
@Override @Override
public void onViewCreated(View view, Bundle savedInstanceState) { public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState); super.onViewCreated(view, savedInstanceState);

View File

@ -68,6 +68,9 @@ private volatile long strokeAnd_0Count = 0;
public GAndroidLoginFragment() {
}
public static GAndroidLoginFragment newInstance() { public static GAndroidLoginFragment newInstance() {

View File

@ -40,6 +40,10 @@ public class GHRHeaddefaultFragment extends Fragment {
private List<Fragment> centerAdapterFragment; private List<Fragment> centerAdapterFragment;
public GHRHeaddefaultFragment() {
}
public static GHRHeaddefaultFragment newInstance() { public static GHRHeaddefaultFragment newInstance() {
return new GHRHeaddefaultFragment(); return new GHRHeaddefaultFragment();
} }

View File

@ -56,7 +56,9 @@ private volatile ArrayList<Double> tipRext_list;
private BAVideoIndicator lockTablist; private BAVideoIndicator lockTablist;
public MBannerPolicyFragment() {
}
public static MBannerPolicyFragment newInstance() { public static MBannerPolicyFragment newInstance() {
return new MBannerPolicyFragment(); return new MBannerPolicyFragment();

View File

@ -59,6 +59,9 @@ public class FLSFragmentOogleFragment extends Fragment implements ICEventDetails
private GSTranslatesBean.Translates translates; private GSTranslatesBean.Translates translates;
public FLSFragmentOogleFragment(){
}
public static FLSFragmentOogleFragment newInstance() { public static FLSFragmentOogleFragment newInstance() {
return new FLSFragmentOogleFragment(); return new FLSFragmentOogleFragment();

View File

@ -90,7 +90,7 @@ public class ZYTFeedBackListActivity extends IDDetailsRoundActivity<FBannerPolic
binding.avi.show(); binding.avi.show();
} }
view.setBackgroundColor(Color.parseColor("#000000")); view.setBackgroundColor(Color.parseColor("#000000"));
// view.setLayerType(View.LAYER_TYPE_SOFTWARE, null); // view.setLayerType(View.LAYER_TYPE_SOFTWARE, null); //关闭硬件加速
} }
}; };
WebViewClient webViewClient = new WebViewClient() { WebViewClient webViewClient = new WebViewClient() {

View File

@ -35,6 +35,10 @@ public class ZYTRewardsFragment extends Fragment {
private FragmentRewardsBinding binding; private FragmentRewardsBinding binding;
public ZYTRewardsFragment(){
}
public static ZYTRewardsFragment newInstance() { public static ZYTRewardsFragment newInstance() {
return new ZYTRewardsFragment(); return new ZYTRewardsFragment();
} }

View File

@ -17,6 +17,7 @@ import com.shortdrama.jelly.zyreotv.R;
import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.DBeanUnselectBean; import com.shortdrama.jelly.zyreotv.unconfirmedPiecewise.DBeanUnselectBean;
import com.youth.banner.adapter.BannerAdapter; import com.youth.banner.adapter.BannerAdapter;
import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -24,6 +25,7 @@ public class ZYTRecommondVideoAdapter extends BannerAdapter<DBeanUnselectBean, Z
private int currentPlayingPosition = 0; private int currentPlayingPosition = 0;
public ZYTRecommondVideoAdapter(List<DBeanUnselectBean> items) { public ZYTRecommondVideoAdapter(List<DBeanUnselectBean> items) {
super(items); super(items);
} }

View File

@ -150,6 +150,16 @@ public class GSTranslatesBean {
private String gleestream_restore; private String gleestream_restore;
private String gleestream_no_restored; private String gleestream_no_restored;
private String gleestream_account_alreadyloged;
public String getGleestream_account_alreadyloged() {
return gleestream_account_alreadyloged;
}
public void setGleestream_account_alreadyloged(String gleestream_account_alreadyloged) {
this.gleestream_account_alreadyloged = gleestream_account_alreadyloged;
}
public String getGleestream_no_restored() { public String getGleestream_no_restored() {
return gleestream_no_restored; return gleestream_no_restored;
} }

View File

@ -9,6 +9,7 @@ import java.util.Random;
import java.util.HashMap; import java.util.HashMap;
import android.os.Build;
import android.os.Parcel; import android.os.Parcel;
import android.os.Parcelable; import android.os.Parcelable;
@ -32,10 +33,6 @@ public class LSQExampleCloseBean {
public static class YPZTestUnselect implements Parcelable { public static class YPZTestUnselect implements Parcelable {
private volatile HashMap<String, Float> exploreDonateListMap;
volatile double episodeTheaterCoins_min = 0.0;
volatile long bottomUnselectActivityIdx = 0;
int coins; int coins;
int episode; int episode;
@ -1238,11 +1235,15 @@ public class LSQExampleCloseBean {
coins = in.readInt(); coins = in.readInt();
episode = in.readInt(); episode = in.readInt();
id = in.readInt(); id = in.readInt();
is_lock = in.readByte() != 0; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
is_lock = in.readBoolean();
}
is_vip = in.readInt(); is_vip = in.readInt();
short_play_id = in.readInt(); short_play_id = in.readInt();
video_url = in.readString(); video_url = in.readString();
vip_coins = in.readInt(); vip_coins = in.readInt();
short_play_video_id = in.readInt();
play_seconds = in.readLong();
} }
public final Creator<YPZTestUnselect> CREATOR = new Creator<YPZTestUnselect>() { public final Creator<YPZTestUnselect> CREATOR = new Creator<YPZTestUnselect>() {
@ -1266,43 +1267,24 @@ public class LSQExampleCloseBean {
public void writeToParcel(@NonNull Parcel dest, int flags) { public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeInt(coins); dest.writeInt(coins);
int mineU = 1168;
while (mineU < 69) {
break;
}
dest.writeInt(episode); dest.writeInt(episode);
double toastA = 9794.0;
if (toastA >= 109) {
}
dest.writeInt(id); dest.writeInt(id);
ArrayList<Integer> and_kpR = new ArrayList<Integer>();
and_kpR.add(767); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
and_kpR.add(541); dest.writeBoolean(is_lock);
and_kpR.add(630); }
and_kpR.add(364);
and_kpR.add(189);
and_kpR.add(478);
dest.writeByte((byte) (is_lock ? 1 : 0));
dest.writeInt(is_vip); dest.writeInt(is_vip);
boolean foregroundk = true;
while (foregroundk) {
break;
}
System.out.println(foregroundk);
dest.writeInt(short_play_id); dest.writeInt(short_play_id);
float arrowrightn = 718.0f;
if (arrowrightn == 98) {
}
System.out.println(arrowrightn);
dest.writeString(video_url); dest.writeString(video_url);
boolean colorsB = true;
while (!colorsB) {
break;
}
dest.writeInt(vip_coins); dest.writeInt(vip_coins);
ArrayList<Double> profilex = new ArrayList<Double>(); dest.writeInt(short_play_video_id);
profilex.add(64.0); dest.writeLong(play_seconds);
profilex.add(835.0);
} }
} }

View File

@ -129,4 +129,5 @@
<string name="deleteaccount_txt">Account Deletion</string> <string name="deleteaccount_txt">Account Deletion</string>
<string name="language_txt">Language</string> <string name="language_txt">Language</string>
<string name="default_notification_channel_id">gleestream</string> <string name="default_notification_channel_id">gleestream</string>
<string name="youraccount_isalreadylogged">Your account is already logged in on another device~</string>
</resources> </resources>

File diff suppressed because one or more lines are too long

View File

@ -22,7 +22,7 @@ android.nonTransitiveRClass=true
#org.gradle.internal.http.connectionTimeout=600000 #org.gradle.internal.http.connectionTimeout=600000
#org.gradle.internal.http.socketTimeout=600000 #org.gradle.internal.http.socketTimeout=600000
# uploadCrashlyticsMappingFile # uploadCrashlyticsMappingFile
#systemProp.http.proxyHost=127.0.0.1 systemProp.http.proxyHost=127.0.0.1
#systemProp.http.proxyPort=7890 systemProp.http.proxyPort=7890
#systemProp.https.proxyHost=127.0.0.1 systemProp.https.proxyHost=127.0.0.1
#systemProp.https.proxyPort=7890 systemProp.https.proxyPort=7890