tmail-flutter
tmail-flutter copied to clipboard
TF-2871 Notification almost in default notification when use OIDC in iOS
Issue
#2871 #2900
Root causes
- Missing
tokenEndpoint&scopesin keychain to call refresh new token - Convert ISO8601 date in swift code incorrect
- Incorrect checking of the time expiration condition
AuthenticationSSO.isExpiredTime()in swift code RefreshTokenreturning null when retrieving a new token- Time returned is of type
milisecondsthe conversion is wrong.
Resolved
- IOS: Work fine
- Android: Still work fine
https://github.com/linagora/tmail-flutter/assets/80730648/9380046c-75be-4b5c-89e3-7f73af39b835
This PR has been deployed to https://linagora.github.io/tmail-flutter/2876.
Might want to check more on this PR
![]()
![]()
Might want to check more on this PR
Please provide clear steps. Note, you should LOGOUT the old app and delete the app before installing the new app so that the keychain is up to date. If possible please videotape the steps for further investigation.
- Note: I ran the test again on my phone (iPhone 13 Pro max - iOS 17.4.1) and it is working fine.
- [ ] It works fine in my device too (IP 11 Promax - 17.5) in short time, but after 1 hour and more, notifications all is default.
- [ ] but can not work well when click to notification, app can not open well, take a long time in loading screen
https://github.com/linagora/tmail-flutter/assets/6462404/cbdd1f73-e302-4cee-8cc7-2126333222d7
- [x] It works fine in my device too (IP 11 Promax - 17.5) in short time, but after 1 hour and more, notifications all is default.
Root cause
- Due to incorrect checking of the time expiration condition
AuthenticationSSO.isExpiredTime()in swift code - Due to
refreshTokenreturning null when retrieving a new token - Due the time returned is of type
miliseconds, the conversion is wrong.
- [x] but can not work well when click to notification, app can not open well, take a long time in loading screen
Root cause
- Only happens when the app is in terminated state
- Because waiting for the result of the
notificationInteractionChannel.invokeMethod('getInitialNotificationInfo')method has not been successful. Leading to endless loading. The cause of this wait is thatnotificationInteractionChannel.invokeMethod('getInitialNotificationInfo')is called beforenotificationInteractionChannel.setMethodCallHandler()is called.
Blocker:
- [ ] Cannot open email correctly when click on notification in app terminated
Blocker:
- [x] Cannot open email correctly when click on notification in app terminated
Done.
- rebase to
refactor
reviewers:
- [ ] Android
- [ ] iOS
- [ ] web
- rebase to
refactorreviewers:
- [ ] Android
- [ ] iOS
- [ ] web
Rebase to the refactor branch is complete
- [x] iOS
- click noti when app in terminated -> long time in loading in app or can not open email
- click noti when app in background -> ok
- [ ] Android: app still logout
- [x] export log failed for iOS
- [x] iOS - Open email when app is terminated for long time (>8h) OK
- [ ] still have this error in today build
[x] iOS
- click noti when app in terminated -> long time in loading in app or can not open email
- click noti when app in background -> ok
Fixed
- it looks like: real time update is not work well
- it looks like: real time update is not work well
Tested. Still work fine. Please check again.
