[PR #586] [MERGED] Improve restore experience #973

Closed
opened 2026-02-26 01:32:32 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/jberkel/sms-backup-plus/pull/586
Author: @angryziber
Created: 8/25/2015
Status: Merged
Merged: 9/20/2015
Merged by: @jberkel

Base: masterHead: restore-experience


📝 Commits (5)

  • b5223be Let users know that we are restoring latest messages first
  • 27e56f4 Make 500 the default number of (latest) messages to restore, as full restore may easily fail for people with 1000s of messages
  • b4d6818 Run updateAllThreads() even in case of cancel so that user will see what we've done so far
  • b6a7e11 issue #585: run updateAllThreads() even in case of IMAP failure so that users will see the messages that have been restored so far
  • 7f04e84 extract method to make intention more clear

📊 Changes

4 files changed (+12 additions, -7 deletions)

View changed files

📝 res/values-ru/strings.xml (+1 -1)
📝 res/values/strings.xml (+1 -1)
📝 res/xml/preferences.xml (+1 -1)
📝 src/main/java/com/zegoggles/smssync/service/RestoreTask.java (+9 -4)

📄 Description

I have upgraded to Android M yesterday and had quite a few problems with restoring of my 15000+ messages (not related to Android version).

I think the restore experience can be improved by default so that more people will get it working as expected.

Reading the code I realized that messages are restored in reverse order: latest first. I assumed that the order is oldest first and that's why kept the number of restored messages to 'All' in settings. It seems that changing a couple of strings can fix that wrong assumption.

Restoring a lot of messages by default fails after at least 30 minutes with e.g. timeout of IMAP server. Most people probably will be ok with that if the latest a few thousand messages would be restored, but due to failure the restored messages are not visible (threads not updated). I propose to change the default restored count to 500 so that most people will not wait for 30 min but get at least 500 latest messages back pretty quickly. In addition, RestoreTask will now attempt to still call updateAllThreads() even in case of IMAP failure so that the restored messages already in sms.db will become visible.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/jberkel/sms-backup-plus/pull/586 **Author:** [@angryziber](https://github.com/angryziber) **Created:** 8/25/2015 **Status:** ✅ Merged **Merged:** 9/20/2015 **Merged by:** [@jberkel](https://github.com/jberkel) **Base:** `master` ← **Head:** `restore-experience` --- ### 📝 Commits (5) - [`b5223be`](https://github.com/jberkel/sms-backup-plus/commit/b5223beb4203e3d3e4daf9e6969eb169edeff198) Let users know that we are restoring latest messages first - [`27e56f4`](https://github.com/jberkel/sms-backup-plus/commit/27e56f4b42795ce6f234219264212da271c875c2) Make 500 the default number of (latest) messages to restore, as full restore may easily fail for people with 1000s of messages - [`b4d6818`](https://github.com/jberkel/sms-backup-plus/commit/b4d6818964bea47bab4d47ef09512262905f6543) Run updateAllThreads() even in case of cancel so that user will see what we've done so far - [`b6a7e11`](https://github.com/jberkel/sms-backup-plus/commit/b6a7e116bb878d200fbf28643b6378d2118b5756) issue #585: run updateAllThreads() even in case of IMAP failure so that users will see the messages that have been restored so far - [`7f04e84`](https://github.com/jberkel/sms-backup-plus/commit/7f04e8477a9c65022005c4282eac80647cb957bc) extract method to make intention more clear ### 📊 Changes **4 files changed** (+12 additions, -7 deletions) <details> <summary>View changed files</summary> 📝 `res/values-ru/strings.xml` (+1 -1) 📝 `res/values/strings.xml` (+1 -1) 📝 `res/xml/preferences.xml` (+1 -1) 📝 `src/main/java/com/zegoggles/smssync/service/RestoreTask.java` (+9 -4) </details> ### 📄 Description I have upgraded to Android M yesterday and had quite a few problems with restoring of my 15000+ messages (not related to Android version). I think the restore experience can be improved by default so that more people will get it working as expected. Reading the code I realized that messages are restored in reverse order: latest first. I assumed that the order is oldest first and that's why kept the number of restored messages to 'All' in settings. It seems that changing a couple of strings can fix that wrong assumption. Restoring a lot of messages by default fails after at least 30 minutes with e.g. timeout of IMAP server. Most people probably will be ok with that if the latest a few thousand messages would be restored, but due to failure the restored messages are not visible (threads not updated). I propose to change the default restored count to 500 so that most people will not wait for 30 min but get at least 500 latest messages back pretty quickly. In addition, RestoreTask will now attempt to still call updateAllThreads() even in case of IMAP failure so that the restored messages already in sms.db will become visible. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 01:32:32 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/sms-backup-plus-jberkel#973
No description provided.