diff --git a/app/build.gradle b/app/build.gradle
index 406437c486..bb2b93d9b5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -159,9 +159,6 @@ android {
buildConfigField "String", "UMENG_APPKEY", "\"${UMENG_APPKEY}\""
buildConfigField "String", "UMENG_MESSAGE_SECRET", "\"${UMENG_MESSAGE_SECRET}\""
buildConfigField "String", "BUGLY_APPID", "\"${BUGLY_APPID}\""
-
- manifestPlaceholders.put("optionalPermission1", "android.permission.INTERNET")
- manifestPlaceholders.put("optionalPermission2", "android.permission.INTERNET")
}
// internal test dev host
internal {
@@ -175,9 +172,6 @@ android {
buildConfigField "String", "UMENG_APPKEY", "\"${DEV_UMENG_APPKEY}\""
buildConfigField "String", "UMENG_MESSAGE_SECRET", "\"${DEV_UMENG_MESSAGE_SECRET}\""
buildConfigField "String", "BUGLY_APPID", "\"${DEV_BUGLY_APPID}\""
-
- manifestPlaceholders.put("optionalPermission1", "android.permission.READ_CALENDAR")
- manifestPlaceholders.put("optionalPermission2", "android.permission.WRITE_CALENDAR")
}
tea {
@@ -192,9 +186,6 @@ android {
buildConfigField "String", "BUGLY_APPID", "\"${BUGLY_APPID}\""
manifestPlaceholders.put("APPLOG_SCHEME", "rangersapplog.byAx6uYt".toLowerCase())
-
- manifestPlaceholders.put("optionalPermission1", "android.permission.INTERNET")
- manifestPlaceholders.put("optionalPermission2", "android.permission.INTERNET")
}
gdt {
@@ -207,9 +198,6 @@ android {
buildConfigField "String", "UMENG_APPKEY", "\"${UMENG_APPKEY}\""
buildConfigField "String", "UMENG_MESSAGE_SECRET", "\"${UMENG_MESSAGE_SECRET}\""
buildConfigField "String", "BUGLY_APPID", "\"${BUGLY_APPID}\""
-
- manifestPlaceholders.put("optionalPermission1", "android.permission.INTERNET")
- manifestPlaceholders.put("optionalPermission2", "android.permission.INTERNET")
}
}
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5083acb860..317c294e5b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -28,10 +28,6 @@
-
-
-
-
diff --git a/app/src/main/java/com/gh/common/constant/Constants.java b/app/src/main/java/com/gh/common/constant/Constants.java
index 26c222a732..44464fce18 100644
--- a/app/src/main/java/com/gh/common/constant/Constants.java
+++ b/app/src/main/java/com/gh/common/constant/Constants.java
@@ -176,9 +176,6 @@ public class Constants {
// 是否已经填写邀请码
public static final String SP_HAS_COMPLETE_INVITE_CODE = "has_complete_invite_code";
- // 签到提醒开关
- public static final String SP_SIGN_REMIND = "sign_remind";
-
// 补充配置项
public static final String SP_NEW_SETTINGS = "new_settings";
diff --git a/app/src/main/java/com/gh/common/util/CalendarHelper.kt b/app/src/main/java/com/gh/common/util/CalendarHelper.kt
deleted file mode 100644
index fca7644395..0000000000
--- a/app/src/main/java/com/gh/common/util/CalendarHelper.kt
+++ /dev/null
@@ -1,190 +0,0 @@
-package com.gh.common.util
-
-import android.content.ContentUris
-import android.content.ContentValues
-import android.content.Context
-import android.database.Cursor
-import android.net.Uri
-import android.provider.CalendarContract.*
-import android.text.TextUtils
-import com.gh.common.constant.Constants
-import com.gh.gamecenter.BuildConfig
-import com.gh.gamecenter.R
-import java.util.*
-
-
-/**
- * 签到日历提醒辅助类
- */
-object CalendarHelper {
-
- private val CALENDAR_URL = Calendars.CONTENT_URI
- private val CALENDAR_EVENT_URL = Events.CONTENT_URI
- private val CALENDAR_REMINDER_URL = Reminders.CONTENT_URI
- private const val CALENDARS_NAME = "guanghuan"
- private const val CALENDARS_ACCOUNT_TYPE = BuildConfig.APPLICATION_ID
- private const val CALENDARS_DISPLAY_NAME = "光环助手"
-
-
- private fun checkAndAddCalendarAccount(context: Context): Int {
- val oldId: Int = checkCalendarAccount(context)
- return if (oldId >= 0) {
- oldId
- } else {
- val addId: Long = addCalendarAccount(context)
- if (addId >= 0) {
- checkCalendarAccount(context)
- } else {
- -1
- }
- }
- }
-
- private fun checkCalendarAccount(context: Context): Int {
- val userCursor: Cursor? = context.contentResolver.query(CALENDAR_URL,
- null, null, null, null)
- return userCursor?.use {
- val count: Int = it.count
- if (count > 0) { // 存在现有账户,取第一个账户的id返回
- it.moveToFirst()
- it.getInt(userCursor.getColumnIndex(Calendars._ID))
- } else {
- -1
- }
- } ?: -1
- }
-
- private fun addCalendarAccount(context: Context): Long {
- val value = ContentValues().apply {
- put(Calendars.NAME, CALENDARS_NAME)
- put(Calendars.ACCOUNT_NAME, CALENDARS_DISPLAY_NAME)
- put(Calendars.ACCOUNT_TYPE, CALENDARS_ACCOUNT_TYPE)
- put(Calendars.CALENDAR_DISPLAY_NAME, CALENDARS_DISPLAY_NAME)
- put(Calendars.VISIBLE, 1)
- put(Calendars.CALENDAR_COLOR, R.color.theme.toColor())
- put(Calendars.CALENDAR_ACCESS_LEVEL, Calendars.CAL_ACCESS_OWNER)
- put(Calendars.SYNC_EVENTS, 1)
- put(Calendars.CALENDAR_TIME_ZONE, TimeZone.getDefault().id)
- put(Calendars.OWNER_ACCOUNT, CALENDARS_NAME)
- put(Calendars.CAN_ORGANIZER_RESPOND, 0)
- }
-
- var calendarUri: Uri = CALENDAR_URL
- calendarUri = calendarUri.buildUpon()
- .appendQueryParameter(CALLER_IS_SYNCADAPTER, "true")
- .appendQueryParameter(Calendars.ACCOUNT_NAME, CALENDARS_NAME)
- .appendQueryParameter(Calendars.ACCOUNT_TYPE, CALENDARS_ACCOUNT_TYPE)
- .build()
- val result: Uri? = context.contentResolver.insert(calendarUri, value)
- return if (result == null) -1 else ContentUris.parseId(result)
- }
-
- fun insertCalendarEvent(context: Context,
- title: String,
- description: String,
- beginTimeMillis: Long,
- endTimeMillis: Long,
- rRule: String?): Boolean {
- val calendarId = checkAndAddCalendarAccount(context) // 获取日历账户的id
- if (calendarId < 0) { // 获取账户id失败直接返回,添加日历事件失败
- return false
- }
-
- // 判断之前是否已经插入日程,有就返回
- val eventCursor = context.contentResolver.query(CALENDAR_EVENT_URL,
- null, null, null, null)
- eventCursor?.use {
- if (it.count > 0) {
- // 遍历所有事件,找到title跟需要查询的title一样的项
- it.moveToFirst()
- while (!it.isAfterLast) {
- val eventTitle = eventCursor.getString(eventCursor.getColumnIndex("title"))
- if (!TextUtils.isEmpty(title) && title == eventTitle) {
- return true
- }
- it.moveToNext()
- }
- }
- }
-
- try {
- /** 插入日程 */
- val eventValues = ContentValues().apply {
- if (rRule != null) put(Events.RRULE, rRule)
- put(Events.DTSTART, beginTimeMillis)
- put(Events.DTEND, endTimeMillis)
- put(Events.TITLE, title)
- put(Events.DESCRIPTION, description)
- put(Events.CALENDAR_ID, calendarId)
- put(Events.EVENT_TIMEZONE, TimeZone.getDefault().id)
- }
-
- // 检测是否存在已保存的日程ID,有则更新
- val scheduleId = SPUtils.getLong(Constants.SP_SCHEDULE_ID)
- if (scheduleId != 0L) {
- val updateUri = ContentUris.withAppendedId(CALENDAR_EVENT_URL, scheduleId)
- val rows = context.contentResolver.update(updateUri, eventValues, null, null)
- if (rows != -1) return true
- }
-
- val eUri: Uri? = context.contentResolver.insert(CALENDAR_EVENT_URL, eventValues)
- val eventId = eUri?.let { ContentUris.parseId(it) }
- if (eventId == 0L) { // 插入失败
- return false
- } else {
- // 保存日程ID
- SPUtils.setLong(Constants.SP_SCHEDULE_ID, eventId ?: 0L)
- }
- /** 插入提醒 - 依赖插入日程成功 */
- val reminderValues = ContentValues()
- // uri.getLastPathSegment();
- reminderValues.put(Reminders.EVENT_ID, eventId)
- reminderValues.put(Reminders.MINUTES, 0) // 准时提醒
- reminderValues.put(Reminders.METHOD, Reminders.METHOD_ALERT)
- val rUri: Uri? = context.contentResolver.insert(CALENDAR_REMINDER_URL, reminderValues)
- if (rUri == null || ContentUris.parseId(rUri) == 0L) {
- return false
- }
- } catch (e: Exception) {
- e.printStackTrace()
- return false
- }
- return true
- }
-
- fun deleteCalendarEvent(context: Context,
- title: String): Boolean {
-
- // 检测是否存在已保存的日程ID,有则根据该ID删除
- val scheduleId = SPUtils.getLong(Constants.SP_SCHEDULE_ID)
- if (scheduleId != 0L) {
- val deleteUri = ContentUris.withAppendedId(CALENDAR_EVENT_URL, scheduleId)
- val rows = context.contentResolver.delete(deleteUri, null, null)
- if (rows != -1) {
- SPUtils.setLong(Constants.SP_SCHEDULE_ID, 0L)
- return true
- }
- }
- val eventCursor = context.contentResolver.query(CALENDAR_EVENT_URL,
- null, null, null, null)
- eventCursor?.use {
- if (it.count > 0) {
- // 遍历所有事件,找到title跟需要查询的title一样的项
- it.moveToFirst()
- while (!it.isAfterLast) {
- val eventTitle = eventCursor.getString(eventCursor.getColumnIndex("title"))
- if (!TextUtils.isEmpty(title) && title == eventTitle) {
- val id = eventCursor.getInt(eventCursor
- .getColumnIndex(Calendars._ID)) // 取得id
- val deleteUri = ContentUris.withAppendedId(CALENDAR_EVENT_URL, id.toLong())
- val rows = context.contentResolver.delete(deleteUri, null, null)
- SPUtils.setLong(Constants.SP_SCHEDULE_ID, 0L)
- return rows != -1
- }
- it.moveToNext()
- }
- }
- }
- return false
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/gh/common/util/DialogUtils.java b/app/src/main/java/com/gh/common/util/DialogUtils.java
index 1a5a06eb42..35d845943c 100644
--- a/app/src/main/java/com/gh/common/util/DialogUtils.java
+++ b/app/src/main/java/com/gh/common/util/DialogUtils.java
@@ -2111,19 +2111,6 @@ public class DialogUtils {
dialog.show();
}
- public static void showSignRemindSuccessDialog(Context context) {
- context = checkDialogContext(context);
-
- final Dialog dialog = new Dialog(context, R.style.DialogWindowTransparent);
-
- View contentView = LayoutInflater.from(context).inflate(R.layout.dialog_sign_remind_success, null);
- contentView.findViewById(R.id.closeIv).setOnClickListener(v -> dialog.dismiss());
-
- dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
- dialog.setContentView(contentView);
- dialog.show();
- }
-
public static void showBindPhoneDialog(Context context, ConfirmListener listener) {
context = checkDialogContext(context);
diff --git a/app/src/main/java/com/gh/common/util/Extensions.kt b/app/src/main/java/com/gh/common/util/Extensions.kt
index ddffef5ba2..ffc3c926c6 100644
--- a/app/src/main/java/com/gh/common/util/Extensions.kt
+++ b/app/src/main/java/com/gh/common/util/Extensions.kt
@@ -549,14 +549,6 @@ fun Fragment.checkStoragePermissionBeforeAction(action: (() -> Unit)) {
})
}
-fun Fragment.checkCalendarPermissionBeforeAction(action: (() -> Unit)) {
- PermissionHelper.checkCalendarPermissionBeforeAction(requireContext(), object : EmptyCallback {
- override fun onCallback() {
- action.invoke()
- }
- })
-}
-
fun FragmentActivity.checkReadPhoneStateAndStoragePermissionBeforeAction(action: (() -> Unit)) {
PermissionHelper.checkReadPhoneStateAndStoragePermissionBeforeAction(this, object : EmptyCallback {
override fun onCallback() {
@@ -581,14 +573,6 @@ fun FragmentActivity.checkStoragePermissionBeforeAction(action: (() -> Unit)) {
})
}
-fun FragmentActivity.checkCalendarPermissionBeforeAction(action: (() -> Unit)) {
- PermissionHelper.checkCalendarPermissionBeforeAction(this, object : EmptyCallback {
- override fun onCallback() {
- action.invoke()
- }
- })
-}
-
/**
* List related.
*/
diff --git a/app/src/main/java/com/gh/common/util/PermissionHelper.kt b/app/src/main/java/com/gh/common/util/PermissionHelper.kt
index fbdf8573f2..9bba8e7a47 100644
--- a/app/src/main/java/com/gh/common/util/PermissionHelper.kt
+++ b/app/src/main/java/com/gh/common/util/PermissionHelper.kt
@@ -175,48 +175,6 @@ object PermissionHelper {
}
}
- @SuppressLint("CheckResult")
- @JvmStatic
- fun checkCalendarPermissionBeforeAction(context: Context, emptyCallback: EmptyCallback) {
- if (context is FragmentActivity) {
- val rxPermission = RxPermissions(context)
-
- tryWithDefaultCatch {
- rxPermission
- .requestEachCombined(Manifest.permission.WRITE_CALENDAR, Manifest.permission.READ_CALENDAR)
- .subscribe { permission ->
- when {
- permission.granted -> {
- emptyCallback.onCallback()
- }
- permission.shouldShowRequestPermissionRationale -> {
- DialogUtils.showPermissionDialog(context,
- "权限申请",
- "光环助手需要日历权限,以保证能正常使用相关功能",
- "重试",
- "放弃",
- { checkCalendarPermissionBeforeAction(context, emptyCallback) },
- null)
- }
- else -> {
- DialogUtils.showPermissionDialog(context,
- "权限申请",
- "在设置-应用-光环助手-权限中开启日历权限,以保证能正常使用相关功能",
- "去设置",
- "放弃",
- {
- val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS)
- intent.data = Uri.parse("package:" + context.getPackageName())
- context.startActivity(intent)
- },
- null)
- }
- }
- }
- }
- }
- }
-
/**
* 跳转到权限设置
*
diff --git a/app/src/main/java/com/gh/gamecenter/energy/EnergyCenterFragment.kt b/app/src/main/java/com/gh/gamecenter/energy/EnergyCenterFragment.kt
index 78ff5f4973..6b7c58fedd 100644
--- a/app/src/main/java/com/gh/gamecenter/energy/EnergyCenterFragment.kt
+++ b/app/src/main/java/com/gh/gamecenter/energy/EnergyCenterFragment.kt
@@ -60,13 +60,11 @@ class EnergyCenterFragment : BaseLazyFragment() {
mBinding?.run {
background.setImageResource(R.drawable.bg_energy_center_day)
signTitle.setTextColor(R.color.theme_font.toColor())
- signRemind.setTextColor(R.color.theme_font.toColor())
}
} else {
mBinding?.run {
background.setImageResource(R.drawable.bg_energy_center_night)
signTitle.setTextColor(R.color.white.toColor())
- signRemind.setTextColor(R.color.white.toColor())
}
}
@@ -138,11 +136,6 @@ class EnergyCenterFragment : BaseLazyFragment() {
height = screenWidth * 400 / 360
}
- signSwitch.setImageResource(if (SPUtils.getBoolean(Constants.SP_SIGN_REMIND))
- R.drawable.ic_energy_center_switch_on
- else
- R.drawable.ic_energy_center_switch_off)
-
val screenHeight = when {
Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1 -> {
resources.displayMetrics.heightPixels
@@ -321,7 +314,7 @@ class EnergyCenterFragment : BaseLazyFragment() {
}
}
- @OnClick(R.id.backIv, R.id.userEnergyContainer, R.id.energyRuleTv, R.id.inviteFriends, R.id.signSwitch, R.id.signToday, R.id.signRule,
+ @OnClick(R.id.backIv, R.id.userEnergyContainer, R.id.energyRuleTv, R.id.inviteFriends, R.id.signToday, R.id.signRule,
R.id.oneDay, R.id.twoDay, R.id.threeDay, R.id.fourDay, R.id.fiveDay, R.id.sixDay, R.id.sevenDay)
fun onViewClicked(v: View) {
when (v.id) {
@@ -358,16 +351,6 @@ class EnergyCenterFragment : BaseLazyFragment() {
}
}
- R.id.signSwitch -> {
- IntegralLogHelper.log("click_sign_remind", LOCATION)
-
- ifLogin("光能中心-签到提醒") {
- if (!ClickUtils.isFastDoubleClick()) {
- dealSignRemind()
- }
- }
- }
-
R.id.signRule -> {
IntegralLogHelper.log("click_sign_rule", LOCATION)
DialogUtils.showSignRuleDialog(requireContext())
@@ -456,33 +439,6 @@ class EnergyCenterFragment : BaseLazyFragment() {
mUserHomeViewModel?.signIn()
}
- private fun dealSignRemind() {
- checkCalendarPermissionBeforeAction {
- if (SPUtils.getBoolean(Constants.SP_SIGN_REMIND)) {
- CalendarHelper.deleteCalendarEvent(
- requireContext(),
- R.string.sign_remind_title.toResString())
- SPUtils.setBoolean(Constants.SP_SIGN_REMIND, false)
- mBinding?.signSwitch?.setImageResource(R.drawable.ic_energy_center_switch_off)
- } else {
- val isSuccess = CalendarHelper.insertCalendarEvent(
- requireContext(),
- R.string.sign_remind_title.toResString(),
- R.string.sign_remind_desc.toResString(),
- TimeUtils.getTimeOfToday(10),
- TimeUtils.getTimeOfToday(10, 30),
- "FREQ=DAILY")
- if (isSuccess) {
- SPUtils.setBoolean(Constants.SP_SIGN_REMIND, true)
- DialogUtils.showSignRemindSuccessDialog(requireContext())
- mBinding?.signSwitch?.setImageResource(R.drawable.ic_energy_center_switch_on)
- } else {
- ToastUtils.showToast("添加签到提醒失败")
- }
- }
- }
- }
-
fun openBottomSheet(callback: () -> Unit) {
if (mBehavior?.state == BottomSheetBehavior.STATE_EXPANDED) {
callback.invoke()
diff --git a/app/src/main/res/drawable-xxhdpi/ic_energy_center_switch_off.webp b/app/src/main/res/drawable-xxhdpi/ic_energy_center_switch_off.webp
deleted file mode 100644
index 0ef83fe19c..0000000000
Binary files a/app/src/main/res/drawable-xxhdpi/ic_energy_center_switch_off.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_energy_center_switch_on.webp b/app/src/main/res/drawable-xxhdpi/ic_energy_center_switch_on.webp
deleted file mode 100644
index 4eccadbe25..0000000000
Binary files a/app/src/main/res/drawable-xxhdpi/ic_energy_center_switch_on.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_sign_remind_close.webp b/app/src/main/res/drawable-xxhdpi/ic_sign_remind_close.webp
deleted file mode 100644
index 7b1c8668c1..0000000000
Binary files a/app/src/main/res/drawable-xxhdpi/ic_sign_remind_close.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_sign_remind_success.webp b/app/src/main/res/drawable-xxhdpi/ic_sign_remind_success.webp
deleted file mode 100644
index 9c99bb831d..0000000000
Binary files a/app/src/main/res/drawable-xxhdpi/ic_sign_remind_success.webp and /dev/null differ
diff --git a/app/src/main/res/layout/dialog_sign_remind_success.xml b/app/src/main/res/layout/dialog_sign_remind_success.xml
deleted file mode 100644
index 07e9671afb..0000000000
--- a/app/src/main/res/layout/dialog_sign_remind_success.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_energy_center.xml b/app/src/main/res/layout/fragment_energy_center.xml
index 32c4defde9..d21d260deb 100644
--- a/app/src/main/res/layout/fragment_energy_center.xml
+++ b/app/src/main/res/layout/fragment_energy_center.xml
@@ -156,29 +156,6 @@
android:layout_toRightOf="@+id/signTitle"
android:src="@drawable/ic_sign_rule" />
-
-
-
-
签到规则
1、每日可领取2个光能、1个成长值,最多领取连续7天签到奖励,中断或签满7天则重新计算
2、连续签满7天可额外奖励1次免费抽奖机会
- 【光环助手】又有光能可以收了!收能量兑大奖!
- 每日10点连续签到领能量,赶紧行动吧!
- 开启成功
- 系统日历将准时提醒您签到
提示
填写邀请码需验证手机号绑定信息,检测\n到您未绑定手机(仅限新手机号绑定)