diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 7c0a4e5..ca54be6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -58,6 +58,7 @@ diff --git a/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/NotifyUtils.java b/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/NotifyUtils.java index 731edbe..879e8db 100644 --- a/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/NotifyUtils.java +++ b/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/NotifyUtils.java @@ -32,7 +32,7 @@ public class NotifyUtils { intent.putExtra( "android.provider.extra.APP_PACKAGE", context.getPackageName()); - context.startActivity(intent); + resultLauncher.launch(intent); } else { intent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS"); intent.setData(Uri.fromParts("package", context.getPackageName(), null)); diff --git a/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/TimeUtils.java b/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/TimeUtils.java index c5ad10f..4e1c9be 100644 --- a/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/TimeUtils.java +++ b/app/src/main/java/com/shortdrama/jelly/zyreotv/beginning/TimeUtils.java @@ -98,7 +98,7 @@ public class TimeUtils { long lastOpenTime = TIndicator.getLong(ITItem.CONSTANTS_NotifyTime_key, 0); if (lastOpenTime != 0) { long current = System.currentTimeMillis(); - if (current - lastOpenTime >= (24 * 60 * 60 * 1000)) { + if (current - lastOpenTime >= 0) { //(24 * 60 * 60 * 1000) TIndicator.saveLong(ITItem.CONSTANTS_NotifyTime_key, System.currentTimeMillis()); return true; } else { @@ -114,7 +114,7 @@ public class TimeUtils { long lastOpenTime = TIndicator.getLong(ITItem.CONSTANTS_VipPurchaseTime_key, 0); if (lastOpenTime != 0) { long current = System.currentTimeMillis(); - if (current - lastOpenTime >= (60 * 60 * 1000)) { + if (current - lastOpenTime >=0 ) { //(60 * 60 * 1000) TIndicator.saveLong(ITItem.CONSTANTS_VipPurchaseTime_key, System.currentTimeMillis()); return true; } else { diff --git a/app/src/main/java/com/shortdrama/jelly/zyreotv/service/MyFirebaseMessageService.java b/app/src/main/java/com/shortdrama/jelly/zyreotv/service/MyFirebaseMessageService.java index e98d746..8134cde 100644 --- a/app/src/main/java/com/shortdrama/jelly/zyreotv/service/MyFirebaseMessageService.java +++ b/app/src/main/java/com/shortdrama/jelly/zyreotv/service/MyFirebaseMessageService.java @@ -26,11 +26,12 @@ import com.shortdrama.jelly.zyreotv.topics.abslRwgt.AExtractionActivity; import org.greenrobot.eventbus.EventBus; import java.util.Map; +import java.util.UUID; public class MyFirebaseMessageService extends FirebaseMessagingService { - private int notificationId = 0; + // private int notificationId = 0; @Override public void onMessageReceived(@NonNull RemoteMessage message) { @@ -115,13 +116,16 @@ public class MyFirebaseMessageService extends FirebaseMessagingService { } } + public void setNotification(Intent intent, String title, String messageBody, Bitmap bitmap) { - PendingIntent pendingIntent; - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { - pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_MUTABLE | PendingIntent.FLAG_UPDATE_CURRENT); - } else { - pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); - } + +// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { +// pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); +// } else { +// pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); +// } + int fromNotifyType = UUID.randomUUID().toString().hashCode(); + PendingIntent pendingIntent = PendingIntent.getActivity(this, fromNotifyType, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); String channelId = getString(R.string.default_notification_channel_id); Uri defaultSoundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); NotificationCompat.Builder notificationBuilder; @@ -154,8 +158,7 @@ public class MyFirebaseMessageService extends FirebaseMessagingService { notificationManager.createNotificationChannel(channel); } - notificationId++; - notificationManager.notify(notificationId, notificationBuilder.build()); + notificationManager.notify(fromNotifyType, notificationBuilder.build()); } } diff --git a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/AExtractionActivity.java b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/AExtractionActivity.java index 80d3f80..16cb4b7 100644 --- a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/AExtractionActivity.java +++ b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/AExtractionActivity.java @@ -8,7 +8,9 @@ import static android.view.View.VISIBLE; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContracts; import androidx.annotation.NonNull; +import androidx.annotation.RequiresApi; import androidx.appcompat.widget.AppCompatTextView; +import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; import androidx.core.util.Pair; import androidx.fragment.app.Fragment; @@ -37,10 +39,12 @@ import com.google.android.gms.tasks.Task; import com.google.firebase.FirebaseApp; import com.google.firebase.messaging.FirebaseMessaging; import com.shortdrama.jelly.zyreotv.R; +import com.shortdrama.jelly.zyreotv.beginning.AppUtils; import com.shortdrama.jelly.zyreotv.beginning.ITItem; import com.shortdrama.jelly.zyreotv.beginning.LRewards; import com.shortdrama.jelly.zyreotv.beginning.LogUtils; import com.shortdrama.jelly.zyreotv.beginning.NotifyUtils; +import com.shortdrama.jelly.zyreotv.beginning.PAYLoginHeaddefault; import com.shortdrama.jelly.zyreotv.beginning.REnterCircle; import com.shortdrama.jelly.zyreotv.beginning.TIndicator; import com.shortdrama.jelly.zyreotv.beginning.TimeUtils; @@ -98,6 +102,8 @@ public class AExtractionActivity extends IDDetailsRoundActivity fragments = new ArrayList<>(); boolean showe = false; jobDetailsFragment = VItemGradlewFragment.newInstance(); @@ -190,6 +199,7 @@ public class AExtractionActivity extends IDDetailsRoundActivity { + isRequestNotify = false; if (result.getResultCode() == RESULT_OK) { boolean isEnable = NotifyUtils.isNotificationEnable(this); if (isEnable) { @@ -216,8 +226,10 @@ public class AExtractionActivity extends IDDetailsRoundActivity= Build.VERSION_CODES.TIRAMISU) { @@ -278,13 +292,18 @@ public class AExtractionActivity extends IDDetailsRoundActivity 0 && grantResults[0] == 0) { + isRequestNotify = false; + firebaseToken(); + userViewModel.opendNotify(); + } else { + openNotificationDialog(); + + } + } + } + public void openNotificationDialog() { if (!TimeUtils.notifyIsOpen()) { + isRequestNotify = false; + if (shortPlayId != 0) { + jumpDetails(); + } return; } NotifyDialog notifyDialog = new NotifyDialog(this); @@ -304,6 +342,14 @@ public class AExtractionActivity extends IDDetailsRoundActivity 0) { LSQExampleCloseBean.YPZTestUnselect previousItem = vtGooglePlayerAdapter.getItems().get(currentPosition - 1); if (previousItem != null && previousItem.isIs_lock()) { - viewBinding.viewLock.tvUnlockEpisode.setText(getString(R.string.unlock_episode_coins_last)); + viewBinding.viewLock.tvUnlockEpisode.setText(translates!=null?translates.getGleestream_lock():getString(R.string.unlock_episode_coins_last)); } else { if (translates != null) { viewBinding.viewLock.tvUnlockEpisode.setText(AppUtils.replace(translates.getGleestream_unlock_coins(), String.valueOf(item.getCoins()))); diff --git a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/NotifyDialog.java b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/NotifyDialog.java index b962f13..eab7f41 100644 --- a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/NotifyDialog.java +++ b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/NotifyDialog.java @@ -33,6 +33,8 @@ public class NotifyDialog extends Dialog { public interface OnSureListener { void toOpen(); + void toClose(); + } public void setOnSureListener(OnSureListener onNextCallListener) { @@ -51,9 +53,15 @@ public class NotifyDialog extends Dialog { binding.tvDialognotifyContent.setText(translates.getGleestream_notify_content()); } binding.ivDialognotifyClose.setOnClickListener(v -> { + if (onSureListener != null) { + onSureListener.toClose(); + } dismiss(); }); binding.tvDialognotifyLater.setOnClickListener(v -> { + if (onSureListener != null) { + onSureListener.toClose(); + } dismiss(); }); binding.tvDialognotifyOpen.setOnClickListener(v -> { diff --git a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/VipPurchaseDialog.java b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/VipPurchaseDialog.java index 404f29a..5901c51 100644 --- a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/VipPurchaseDialog.java +++ b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/abslRwgt/pragma/VipPurchaseDialog.java @@ -81,7 +81,7 @@ public class VipPurchaseDialog extends Dialog { } subVipAdapter = new ZYTStoreSubVipAdapter(); - binding.recyclerviewDialogVippurchase.setLayoutManager(new LinearLayoutManager(getContext())); + binding.recyclerviewDialogVippurchase.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.HORIZONTAL, false)); binding.recyclerviewDialogVippurchase.setAdapter(subVipAdapter); subVipAdapter.submitList(list); subVipAdapter.setOnItemClickListener((baseQuickAdapter, view, i) -> { diff --git a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/dts/ZYTStoreSubVipAdapter.java b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/dts/ZYTStoreSubVipAdapter.java index 227b869..350108d 100644 --- a/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/dts/ZYTStoreSubVipAdapter.java +++ b/app/src/main/java/com/shortdrama/jelly/zyreotv/topics/dts/ZYTStoreSubVipAdapter.java @@ -1,9 +1,11 @@ package com.shortdrama.jelly.zyreotv.topics.dts; import android.content.Context; +import android.graphics.Color; import android.view.ViewGroup; import androidx.appcompat.widget.AppCompatTextView; +import androidx.constraintlayout.widget.ConstraintLayout; import com.chad.library.adapter4.BaseQuickAdapter; import com.chad.library.adapter4.viewholder.QuickViewHolder; @@ -27,6 +29,7 @@ public class ZYTStoreSubVipAdapter extends BaseQuickAdapter + + + + + + + + + + + diff --git a/app/src/main/res/drawable/cornor_vippurchase_one_14dp.xml b/app/src/main/res/drawable/cornor_vippurchase_one_14dp.xml new file mode 100644 index 0000000..fd31e63 --- /dev/null +++ b/app/src/main/res/drawable/cornor_vippurchase_one_14dp.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/cornor_vippurchase_three_14dp.xml b/app/src/main/res/drawable/cornor_vippurchase_three_14dp.xml new file mode 100644 index 0000000..eef7491 --- /dev/null +++ b/app/src/main/res/drawable/cornor_vippurchase_three_14dp.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/cornor_vippurchase_two_14dp.xml b/app/src/main/res/drawable/cornor_vippurchase_two_14dp.xml new file mode 100644 index 0000000..479a600 --- /dev/null +++ b/app/src/main/res/drawable/cornor_vippurchase_two_14dp.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/app/src/main/res/layout/dialog_vip_purchase.xml b/app/src/main/res/layout/dialog_vip_purchase.xml index 3410de7..9bbd3ab 100644 --- a/app/src/main/res/layout/dialog_vip_purchase.xml +++ b/app/src/main/res/layout/dialog_vip_purchase.xml @@ -122,13 +122,12 @@ app:layout_constraintTop_toBottomOf="@+id/tv_dialog_vippurchase_adfree" /> + @@ -31,6 +34,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/agreementLock" android:text="@string/vip_weekly_membership_txt" + android:textStyle="bold" android:textColor="@color/color_e6ffffff" android:textSize="@dimen/gradleAgreement" app:layout_constraintStart_toStartOf="parent" diff --git a/app/src/main/res/layout/layout_store.xml b/app/src/main/res/layout/layout_store.xml index a89987d..a377d46 100644 --- a/app/src/main/res/layout/layout_store.xml +++ b/app/src/main/res/layout/layout_store.xml @@ -57,9 +57,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/tv_store_membership" - android:layout_marginStart="@dimen/followHistoryOllow" - android:layout_marginTop="@dimen/rechargeGradient" - android:layout_marginEnd="@dimen/followHistoryOllow" /> + android:layout_marginTop="@dimen/rechargeGradient" /> 8. For other questions, contact us via Profile>Help &feedback. Time limited offer - %d]]> + %d]]> + Your Coins Membership