Commit bd782dae authored by Max Lv's avatar Max Lv

Avoid too many reschedules

parent ea738d17
...@@ -8,11 +8,18 @@ version := "4.1.5" ...@@ -8,11 +8,18 @@ version := "4.1.5"
versionCode := Some(185) versionCode := Some(185)
proguardOptions ++= proguardOptions ++=
"-keep class com.github.shadowsocks.JniHelper { *; }" :: "-dontwarn com.evernote.android.job.gcm.**" ::
"-dontwarn com.evernote.android.job.util.GcmAvailableHelper" ::
"-dontwarn com.google.android.gms.internal.**" :: "-dontwarn com.google.android.gms.internal.**" ::
"-dontwarn com.j256.ormlite.**" :: "-dontwarn com.j256.ormlite.**" ::
"-dontwarn okio.**" :: "-dontwarn okio.**" ::
"-dontwarn org.xbill.**" :: "-dontwarn org.xbill.**" ::
"-keep public class com.evernote.android.job.v21.PlatformJobService" ::
"-keep public class com.evernote.android.job.v14.PlatformAlarmService" ::
"-keep public class com.evernote.android.job.v14.PlatformAlarmReceiver" ::
"-keep public class com.evernote.android.job.JobBootReceiver" ::
"-keep public class com.evernote.android.job.JobRescheduleService" ::
"-keep class com.github.shadowsocks.JniHelper { *; }" ::
Nil Nil
val playServicesVersion = "10.2.1" val playServicesVersion = "10.2.1"
......
...@@ -271,7 +271,6 @@ trait BaseService extends Service { ...@@ -271,7 +271,6 @@ trait BaseService extends Service {
override def onCreate() { override def onCreate() {
super.onCreate() super.onCreate()
app.remoteConfig.fetch()
app.updateAssets() app.updateAssets()
} }
......
...@@ -34,6 +34,7 @@ import scala.io.Source ...@@ -34,6 +34,7 @@ import scala.io.Source
*/ */
object AclSyncJob { object AclSyncJob {
final val TAG = "AclSyncJob" final val TAG = "AclSyncJob"
final val MAX_RESCHEDULE = 3
def schedule(route: String): Int = new JobRequest.Builder(AclSyncJob.TAG + ':' + route) def schedule(route: String): Int = new JobRequest.Builder(AclSyncJob.TAG + ':' + route)
.setExecutionWindow(TimeUnit.SECONDS.toMillis(10), TimeUnit.DAYS.toMillis(28)) .setExecutionWindow(TimeUnit.SECONDS.toMillis(10), TimeUnit.DAYS.toMillis(28))
...@@ -45,6 +46,8 @@ object AclSyncJob { ...@@ -45,6 +46,8 @@ object AclSyncJob {
} }
class AclSyncJob(route: String) extends Job { class AclSyncJob(route: String) extends Job {
var rescheduled = 0
override def onRunJob(params: Params): Result = { override def onRunJob(params: Params): Result = {
try { try {
//noinspection JavaAccessorMethodCalledAsEmptyParen //noinspection JavaAccessorMethodCalledAsEmptyParen
...@@ -54,7 +57,11 @@ class AclSyncJob(route: String) extends Job { ...@@ -54,7 +57,11 @@ class AclSyncJob(route: String) extends Job {
} catch { } catch {
case e: IOException => case e: IOException =>
e.printStackTrace() e.printStackTrace()
Result.RESCHEDULE rescheduled += 1
if (rescheduled < AclSyncJob.MAX_RESCHEDULE)
Result.RESCHEDULE
else
Result.FAILURE
case e: Exception => // unknown failures, probably shouldn't retry case e: Exception => // unknown failures, probably shouldn't retry
e.printStackTrace() e.printStackTrace()
Result.FAILURE Result.FAILURE
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment