[Android] Flaming Durtles - Android app with offline support

If someone called you a deluded fascist because of turning out a request (an insane one on top of that), that person must be a seriously deranged individual. I mean, you put something great out there and asked nothing in return. Unbelievable! I hope you can filter out that kind of bullshit. You certainly don’t deserve it. About my request, you may think about it or ignore it completely. I’m absolutely fine with whatever you decide. Have a great weekend!

Sometimes. Sometimes not. I regularly get attacked, shouted at, insulted or even threatened for having the temerity to change something in FD, for refusing a suggestion, or even just for being positive about change. Here on the forums things are pretty civilized except for an occasional belligerent and abrasive ‘comment’, but in my inbox the gloves really come off.

That kind of nonsense is not going to change my mind in any way, but it’s exhausting and it’s making me less and less willing to be flexible and accomodating.

I didn’t expect to come here and find a sage’s wisdom :joy: definitely a realization to live by.

As for the other stuff, massive yikes. I’m really sorry people are treating you that. As if you’re some kind of slave for going out of your way to make a tool that you believe in. Wish I could help somehow, but the internet will be the internet, I guess.

About the lesson limiting, I wonder if a compromise may help? Such as displaying a warning when you’ve hit your personal lesson limit, but not actually hiding the true number of lessons.


I feel for you, buddy. I do believe there’s enough decent people in the world to compensate for the assholes but that doesn’t make it any less challenging and exhausting.

1 Like

I have question on how is handled offline mode.
My understanding is that all subjects that are know in advance by the api will stays in queue and will be reviewable on time.
When device returns online, a sync is triggered with answered timestamp, so the SRS should not be impacted.

Is it correct?
How are handled init / low level apprentice items if they’re done in offline mode (when the next review time would comes while the device is still offline) ?

Yes, the time when you completed the lesson/review is stored by FD, and when the lesson/review result is synced, that time is sent to WK. The new timestamp for the next available review is based on that time. Everything should be as if your device was online and the sync was completed immediately.

FD predicts what the API will do, and act as if the sync had already happened. Multiple reviews for one item are processed in order. I can best explain with an example:

For example:

  1. Device is offline
  2. Review for kanji 山 at Apprentice II is offered at 00:00
  3. User completes the review at 00:05, with 1 incorrect answer.
  4. FD schedules the sync, and updates the local database to put 山 at Apprentice I and the next review time at 02:00. (Level 1 kanji, so accelerated SRS interval.) This is the part where FD predicts what WK will do.
  5. At 02:05, the device is still offline, and the user does the second review, with 0 incorrect answers.
  6. FD schedules the second sync, and updates the local database to put 山 at Apprentice II and the next review time at 06:00. (Level 1 kanji, so accelerated SRS interval.) Again, predictive logic here.
  7. The device comes back online at 05:55.
  8. The first review result is synced, with timestamp 00:05. WK accepts this and replies that 山 is now at Apprentice I and the next review time is at 02:00.
  9. The second review result is synced, with timestamp 02:05. WK accepts this and replies that 山 is now at Apprentice II and the next review time is at 06:00.
  10. Five minutes later, at 06:00, the third review for 山 is offered.

FD’s prediction can go wrong, but that should only happen if the SRS system for 山 changes while the device is offline, or if the user also did reviews on the web site while the device was offline. If this happens, then the assignment is eventually always updated from the API - the data from the API always overwrites the locally predicted result.


Just FYI, I’m taking a little time off from FD until the worst of the heat wave we’re having right now is over. I’ll be around on the forums, but there won’t be any updates for FD for a bit.


Can you please make the kanji/radical boxes as long as the vocabulary, please?

A month or so after the redesign of the summary page, i think its main drawback is that the kanji squares are too packed with information: if one tries to do a final visual review of the failed items, reading the kanji meaning cannot be avoided as you try to recognize the kanji shape.

At the opposite, the way vocabulary items are formated let the user do a final review of the words while hiding the meaning columns with the right-hand fingers.


Thank you very much.

I was wondering if you could fix FD’s interaction with AnySoftKeyboard? I used Swiftkey before and wanted to switch, but I can’t get the suggestions to work in ASK. I’ve tried all combinations in the keyboard settings but no luck.
I use them mainly to avoid typing so much and typos on touch screen devices, don’t look at them for spoilers in my answer so them not being there only hurts my flow.

@ejplugge Sorry to bother you during your break. During the last few days, I have been under the impression that I am getting repeated review items. At first, I thought that it was my memory playing tricks on me but it just happened again right now. I answered correctly several items (for example: 二つ), wrapped up my session, reordered the queue and started a new one and bam, most if not all of the items that I have already answered correctly were back to haunt me. I have just uploaded the log.

I started a session in the web and I think it is just some items that for whatever reason are not uploaded. When I have a big queue of master or enlightened items, sometimes I wrapped up a session and start another right away to keep better count and not go above X reviews per day of high srs level items. Maybe that has something to do with some items not being uploaded. I also use “Delayed Processing quiz results”.

I’ll put it on the list.

I’ll have a look. ASK may be one of those rare keyboards that actually follows Android’s rules for soft keyboards…

It looks like a timing issue between wrapping up and finishing the session. I’ll put a fix in the next update to work around this. The problem is that the app is still processing the wrapup in the background when you click the finish button, and the wrapup and finish interfere with each other if delayed processing is enabled.

In the mean time, as a workaround, either disable delayed processing, or if you wrap up a session and that takes you immediately to the session summary, wait a couple of seconds before clicking finish, especially if the wrapup removed a lot of items from the session.

I’m considering just removing the delayed processing altogether, it’s causing more problems than it’s worth…

1 Like

Many thanks for coming back to me so fast. I disabled it for the time being. It really is no biggie. I am not sure how the rest of the user base are taking advantage of it but my case is an edge scenario: Since I use Anki mode, whenever I get a set of reviews where my recollection is specially good, I tend to inadvertently go a bit too fast and sometimes I mark an item as correct just by pure knee-jerk reflex. In those cases, unlimited undos come in handy. Another solution is to be a bit more mindful and go a tad slower which comes with its own set of advantages. :wink:

My app is doing a weird thing all of a sudden :grimacing:

1 Like

This is related to the removal of a field (the ‘passed’ field) from the assignments in the API. I adjusted the code for the app to handle this situation, but this can still happen if the app has incorrect data.

Either your assignment data in the API servers is incorrect, or the app failed to sync properly for you a while back when the assignment data was backfilled for this.

Chances are you can easily fix this by doing a database reset from the settings menu. You won’t lose any of your progress or settings, only your search presets and your current session (if you have one) will disappear. I expect that will fix the problem. If not, please let me know, you might have a problem with your assignments in the WK database.

1 Like

Hm…I tried what you suggested but I keep getting the server connection error.

Hitting the retry button makes it load for like a second and then it comes up again.

Can you double check what version of the app you have? (Settings -> About)

If you’re not on the latest version (2.2.1) you’ll have to update to the latest version from the app store.

1 Like

That seems to have done the trick. Thanks!

Is there any way to set the app to notify when a new update is available?

Yes, but not in FD itself. You can set such notifications in the Play Store app. Open that app, go to Settings -> Notifications, and enable the Updates setting.

Or, even better, enable auto-updating for all apps.

1 Like