0xf104a / NextcloudServices

Android app to send notifications from Nextcloud without using GCM(Google cloud messaging)
GNU General Public License v3.0
65 stars 11 forks source link

Data loss while using the app (the variable returns to the default value after double screen rotation) #34

Open davirec opened 2 years ago

davirec commented 2 years ago

When I perform these sequences of events, the variable returns to the default value after double screen rotation:

  1. Open the app
  2. Tap in Polling interval
  3. A screen similar to this will appear:

Before rotation:

  1. Force the pause from the activity and then return to the activity (double screen rotation). Note that the variable returns to the default value.

The expected behavior is the return to the state of the previous image.

However, the variable returns to the default value.

After rotation:

Note:

Device:

  1. https://developer.android.com/guide/components/activities/activity-lifecycle
davirec commented 2 years ago

Hi, in this activity, we found other bugs: element loses background selection and error fragment disappears.

Before and after double screen rotation
Before and after double screen rotation

Note:

0xf104a commented 2 years ago

Hello. Sorry for a (very) long response and thankyou for giving such an extended bug report. I am going to fix this issue as soon as possible.

0xf104a commented 2 years ago

Hi, in this activity, we found other bugs: element loses background selection and error fragment disappears. Before and after double screen rotation Before and after double screen rotation

Note:

* Double screen rotation: It is executed twice to reach a state that should be exactly the same as the screen before if no data loss occurred.

* A data loss problem occurs when data is accidentally deleted or state variables are accidentally assigned with default or initial values.

As per Nextcloud dialog issue: it seems to be problem of Nextcloud SSO library as persists in other apps(e.g. PhoneTrack) which uses this library, so I am going to create an issue on their repository.