1Password won't run from SD card on Samsung Galaxy J 2017
1Password 8.10.44; Android 9; Samsung Galaxy J5 (2017); 16GB internal storage, 256GB SD card, 2GB memory.
As Android and the pre-installed ("System") apps grab most of the internal storage, I move everything I install to the SD card (via the Developer option to override the Manifest recommendation for app storage).
Every other app I have installed has been happy with this, but when I do the same with 1Password, it freezes at the white splash screen when I try to run it. If I move it back to internal storage it works perfectly.
So my questions are:
1. Is 1Password specifically designed not to run from external storage on Android, and if so why? And why isn't this documented anywhere?
2. As a retired software engineer, I believe that every crash or freeze is a bug - the result of an improperly handled error somewhere. So, if not running from external storage is intentional, please provide an intelligible error message when the attempt is made.
Thanks for reading this!
1Password Version: Not Provided
Extension Version: Not Provided
OS Version: Not Provided
Browser: Not Provided
Comments
-
Hi @JFAgm,
I'm sorry to hear you're encountering issues running 1Password for Android from your SD card.
- Is 1Password specifically designed not to run from external storage on Android, and if so why? And why isn't this documented anywhere?
While 1Password isn't specifically designed to not run from external storage, as you've mentioned you had to enable the option to override the Manifest recommendation for app storage in developer options to get apps to install to SD card, we would be unable to provide support for issues that arise when 1Password for Android is installed via other methods than the standard installation method, which would be to the internal storage of a device.
Depending on the brand/type of SD card and it's specifications, the read/write speed of the card may be too slow to support the read/write operations performed by the 1Password for Android app, especially as these operations would be with encrypted data, which can rely on faster read/write speeds for the app to run optimally.
- As a retired software engineer, I believe that every crash or freeze is a bug - the result of an improperly handled error somewhere. So, if not running from external storage is intentional, please provide an intelligible error message when the attempt is made
As we wouldn't intentionally be preventing the 1Password for Android app from running on external storage, there may be variables mentioned above such as the write/read speed of the SD card being used or the changes made when the app is installed using the non-standard installation method enabled via developer options that are leading to the issue occurring. Due to this, we wouldn't be able to provide an error message on why the app isn't loading/is freezing. With that said, I could log a feature request with our Product team to see if it would be possible for a check to be implemented in the 1Password for Android app to detect when the app is installed in external storage and to provide a warning that the app may not function as expected or may not work at all when installed outside of internal storage, although I cannot guarantee if/when this will be implemented.
I hope this helps.
-- Brendan
0 -
Brendan, thanks for this information. Several things about your reply seem a little odd to me:
Re the capabilities of the SD card:
- The card is a 256 GB SanDisk Extreme PRO. Its App performance rating is A2, the fastest you can get; and the Video Speed Class is v30. I don't notice any significant performance degradation running other apps on it, compared to Internal memory.
- In all my experience with software, the only circumstance in which I can imagine memory speed having a functional impact on software execution would be in a tightly-specified real-time environment; which is not the case here. Almost all programs would simply run more slowly.
Re "non-standard installation method":
- As with all my other apps running from the SD card, the installation is perfectly normal, and the app is placed into Internal storage. I then use the standard Android utility to move it to External storage, which simply involves copying the code and adjusting (where necessary) any links to system calls and so on.
- If the developers have good reason to believe that there are esoteric coding techniques used in 1Password which mean that it cannot in principle execute correctly from external storage, I believe it is possible in the Manifesto to mandate placement in internal storage (rather than recommending it, as it currently does). This could be used, and would need to be mentioned in the product documentation, as it is very unusual in non-System software.
If at all possible, could you copy/escalate this discussion to the development team for comment?0