blastrock / kakugo

Learn Japanese with Kakugo
GNU General Public License v3.0
166 stars 19 forks source link

corrupted data after phone change #87

Closed yayo75 closed 6 months ago

yayo75 commented 1 year ago

Hello. I rly dislike being forced to subscribe to this (or any other) service just to report a bug, but I can't find an email address anywhere to write to...

2 weeks ago I changed the smartphone and then I moved the apps data from android 7 to 11 with google auto-backup. I noticed yesterday that the kanji drawing test keeps giving me the same set of 6 kanji (up, down, three, inside, seven, and 10,000). The "up" kanji (n.19978) stats window gives some weird numbers (obviously wrong):

long score: -442795,81 long weigth: 354237,65 final weight: 354237,65 total weight: 354246,09 new long score: -442795,81

Others stats seems to be ok, all around 1,0 or 0,0 Also the "kanji composition" test give me the same problem. Meaning and reading tests are ok, stats of "up" kanji for "kanji to reading" test are:

long score: 0,81 long weigth: 0,35 final weight: 0,35 total weight: 1,97 new long score: nu

I also noticed that the progress window now shows me stats starting from 07/01/2018 (?) rather than from when I started to collect data test (around november 2020).

blastrock commented 1 year ago

Hi, Sorry about that, weird bug indeed. Unfortunately I don't have much time to work on Kakugo anymore, so I will probably not fix this. If your phone is rooted and you have some linux and SQL knowledge, you can edit the sqlite database yourself. Something like

DELETE FROM item_scores WHERE long_score < 0;

You other option is to just clear the app data :(

yayo75 commented 1 year ago

Hi! Thanks for the reply! It's sad to read that you don't have much time to work on this app anymore, because it's very handy and useful! But your life comes first, of course.

My phone is not rooted, so I guess I'll reinstall the app from scratch to reset all the data. I see no other way. I'll keep practicing on meanings and readings about some kanjis for the next 2-3 weeks, then I'll reinstall the app to start with the next group of kanjis.

Anyway, in case you'll find soon or later more spare time to keep developing/fixing kakugo, perhaps a solution for such bugs could be to move (or to double) the app data from system folders to user space, along with a backup feature. There's no risk of "cheating" since it's not a game. And about making a mess with data, once people are told not to deal with it unless they know what they're doing, I guess it's ok. So, anyone who needs to fix things would have a chance to do it.

Thanks! : )

blastrock commented 1 year ago

I just thought of something else. You can just disable those kanji, kakugo will ignore them and you'll be able to continue with the other kanji you want to learn.

The problem with the backup feature is that it probably wouldn't have helped you, you would have reached the same bug after importing the data. Though it's still a feature that I have had on my to-do list for a long time ^^

Another feature that would help you is to reset the data on single kanji so that you can fix only those that are broken. But that too takes some time to implement, not sure I'll be able to do it in the near future.

yayo75 commented 1 year ago

I also thought about disabling broken kanjis, but as soon as I'd need to practice them again in the future, the problem would just come back.

Having a backup feature, instead (unless crypted), would probably allows me to access the data from a previous backup and fix them before reloading into the app, without the need for a rooted phone. : )