User manual: mobile credentials
Jan Mulder
jlmulder at xs4all.nl
Mon Oct 9 09:57:41 PDT 2017
On 09-10-17 17:13, Dirk Hohndel wrote:
>
>
> On October 9, 2017 7:17:39 AM PDT, Jan Mulder <jlmulder at xs4all.nl> wrote:
>> On 09-10-17 15:03, Dirk Hohndel wrote:
>>> Jan, I have the issue that for one my accounts I deleted all the
>> dives from the repo, force pushed to the server, deleted the local
>> storage on the phone (going to have an empty dive list to do more
>> download tests against...) and now I get shown the PIN message even
>> though the account exists and is verified...
>>>
>>> "0.708: Synchronising data file"
>>> "1.016: AppState changed to active with save ongoing and no unsaved
>> changes"
>>> "1.639: loading dives from cache failed -1"
>>> "1.645: have cloud credentials, but still needs PIN"
>>> "1.646: have cloud credentials, but user asked not to connect to
>> network"
>>>
>>> This may be a weird case with an unexpected error, but I figured I'd
>> mention it...
>>
>> Tried to reproduce this ... and did not succeed.
>>
>> Maybe that's related to "deleted the local storage on the phone". On my
>>
>> rooted phone, I just use adb shell, get root privs, cd
>> /data/data/org.subsurfacedivelog.mobile/files/cloudstorage and simply
>> rm
>> -rf <the cloud hash for the used account>. After this, when I start the
>>
>> app again, that local git repo is re-created.
>>
>> But unsure that you delete the local storage the same way?
>>
>> This all said, for rooted phones it is probably not difficult to mess
>> with data that makes the app unhappy.
>
> The phone isn't rooted... so I used Android Settings - Apps - picked Subsurface-mobile and then cleared the storage
>
> As I said, likely a silly corner case, but I at least wanted to send it. I'll try to look at the code to see which error triggers this
The error comes from QMLManager::openLocalThenRemote(). It fails to open
the local git repo, but as we only get here with known credentials it
further assumes that the PIN fase has not been passed yet (as that is
the moment the local git repo is created). This is obviously a wrong
assumption in your case.
There is something special in your logging. It says "0.708:
Synchronising data file", which has a very early timestamp during the
run. When I clear my app data, on the way you do, I land on the first
credential page to enter my email/passwd. This is logical, as the
settings are stored in the data as well, so entering this is needed. And
the Synchronising message in the log comes after "sign-on or register".
So, what is weird is that you seem to be able to enter your credentials
in less than 0.708 seconds ... where it costs me at least 20 seconds to
enter my credentials.
--jan
More information about the subsurface
mailing list