moneymanagerex / android-money-manager-ex

Manage your finances on-the-go, encrypted for security, and sync via your cloud
http://android.moneymanagerex.org/
GNU General Public License v3.0
493 stars 187 forks source link

Klick on synchronization app closes (OneDrive) #1306

Closed m4nuel89 closed 9 months ago

m4nuel89 commented 5 years ago

Used Microsoft OneDrive for synchronization

alensiljak commented 5 years ago

Are you able to provide the text of the error message from the logcat?

m4nuel89 commented 5 years ago

It must be someone there. Sry i don't know this things. :/

I/ 02-15 11:16:40.167 chatty ( 4671): uid=10309(u0_a309) RenderThread expire 2 lines I/ 02-15 11:16:41.182 chatty ( 4671): uid=10309(u0_a309) com.money.manager.ex expire 4 lines V/ 02-15 11:16:41.183 ActivityThread( 4671): ActivityThread,callActivityOnCreate D/ 02-15 11:16:41.195 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.23, mControlPoint1y = 0.06, mControlPoint2x = 0.09, mControlPoint2y = 0.97 D/ 02-15 11:16:41.195 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.6, mControlPoint1y = 0.9, mControlPoint2x = 0.8, mControlPoint2y = 1.0 D/ 02-15 11:16:41.195 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.23, mControlPoint1y = 0.06, mControlPoint2x = 0.09, mControlPoint2y = 0.97 D/ 02-15 11:16:41.195 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.6, mControlPoint1y = 0.9, mControlPoint2x = 0.8, mControlPoint2y = 1.0 D/ 02-15 11:16:41.207 ActivityThread( 4671): add activity client record, r= ActivityRecord{34d575e token=android.os.BinderProxy@8eae12d {com.money.manager.ex/com.money.manager.ex.about.AboutActivity}} token= android.os.BinderProxy@8eae12d D/ 02-15 11:16:41.209 OpenGLRenderer( 4671): HWUI Binary is enabled I/ 02-15 11:16:41.212 PressGestureDetector( 4671): onAttached begin I/ 02-15 11:16:41.213 PressGestureDetector( 4671): onAttached end I/ 02-15 11:16:41.215 PressGestureDetector( 4671): HiTouch restricted: AboardArea. D/ 02-15 11:16:41.216 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.23, mControlPoint1y = 0.06, mControlPoint2x = 0.09, mControlPoint2y = 0.97 D/ 02-15 11:16:41.216 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.6, mControlPoint1y = 0.9, mControlPoint2x = 0.8, mControlPoint2y = 1.0 D/ 02-15 11:16:41.216 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.23, mControlPoint1y = 0.06, mControlPoint2x = 0.09, mControlPoint2y = 0.97 D/ 02-15 11:16:41.216 CubicBezierInterpolator( 4671): CubicBezierInterpolator mControlPoint1x = 0.6, mControlPoint1y = 0.9, mControlPoint2x = 0.8, mControlPoint2y = 1.0 I/ 02-15 11:16:41.223 HwApiCacheMangerEx( 4671): apicache pi PackageInfo{4d3111f com.money.manager.ex} I/ 02-15 11:16:41.225 zygote64( 4671): Do partial code cache collection, code=45KB, data=30KB I/ 02-15 11:16:41.225 zygote64( 4671): After code cache collection, code=45KB, data=30KB I/ 02-15 11:16:41.225 zygote64( 4671): Increasing code cache capacity to 256KB I/ 02-15 11:16:41.225 zygote64( 4671): Method exceeds compiler instruction limit: 25337 in void org.ccil.cowan.tagsoup.HTMLSchema.() I/ 02-15 11:16:41.244 WebViewFactory( 4671): Loading com.android.chrome version 72.0.3626.105 (code 362610552) D/ 02-15 11:16:41.245 HwFLClassLoader( 4671): USE_FEATURE_LIST had not init! I/ 02-15 11:16:41.270 cr_LibraryLoader( 4671): Time to load native libraries: 2 ms (timestamps 2385-2387)

m4nuel89 commented 5 years ago

Filter "Error":

E/ 02-15 11:16:34.132 AndroidRuntime( 4449): at android.os.Looper.loop(Looper.java:166) E/ 02-15 11:16:34.132 AndroidRuntime( 4449): at android.app.ActivityThread.main(ActivityThread.java:7523) E/ 02-15 11:16:34.132 AndroidRuntime( 4449): at java.lang.reflect.Method.invoke(Native Method) E/ 02-15 11:16:34.132 AndroidRuntime( 4449): at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245) E/ 02-15 11:16:34.132 AndroidRuntime( 4449): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)

alensiljak commented 5 years ago

Thanks, you almost got it! The second post might be on track but the most useful info is the very first line of the error message, which is unfortunately missing here. You can try to open i.e. Catlog, type in MoneyManagerEx in the search box, then reproduce the problem with the app. This should register the error.

m4nuel89 commented 5 years ago

E/ 02-15 12:19:22.084 ActivityThread(13178): Failed to find provider info for com.microsoft.skydrive.content.StorageAccessProvider E/ 02-15 12:19:22.094 AndroidRuntime(13178): FATAL EXCEPTION: main E/ 02-15 12:19:22.094 AndroidRuntime(13178): Process: com.money.manager.ex, PID: 13178 E/ 02-15 12:19:22.094 AndroidRuntime(13178): java.lang.NullPointerException: Attempt to invoke interface method 'void android.database.Cursor.close()' on a null object reference E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.money.manager.ex.core.docstorage.FileStorageHelper.getRemoteMetadata(FileStorageHelper.java:313) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.money.manager.ex.core.docstorage.FileStorageHelper.getRemoteMetadata(FileStorageHelper.java:265) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.money.manager.ex.core.docstorage.FileStorageHelper.isRemoteFileChanged(FileStorageHelper.java:140) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.money.manager.ex.core.docstorage.FileStorageHelper.synchronize(FileStorageHelper.java:103) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.money.manager.ex.home.MainActivity.onDrawerMenuAndOptionMenuSelected(MainActivity.java:604) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.money.manager.ex.home.MainActivity$3$1.run(MainActivity.java:930) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at android.os.Handler.handleCallback(Handler.java:808) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at android.os.Handler.dispatchMessage(Handler.java:101) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at android.os.Looper.loop(Looper.java:166) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at android.app.ActivityThread.main(ActivityThread.java:7523) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at java.lang.reflect.Method.invoke(Native Method) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245) E/ 02-15 12:19:22.094 AndroidRuntime(13178): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921) E/ 02-15 12:19:24.302 vndksupport(13295): Could not load vendor/lib64/egl/libGLES_mali_v2.so from sphal namespace: dlopen failed: library "vendor/lib64/egl/libGLES_mali_v2.so" not found.

alensiljak commented 5 years ago

Great, the important bits are these:

Failed to find provider info for com.microsoft.skydrive.content.StorageAccessProvider

java.lang.NullPointerException: Attempt to invoke interface method 'void android.database.Cursor.close()' on a null object reference

com.money.manager.ex.core.docstorage.FileStorageHelper.getRemoteMetadata(FileStorageHelper.java:313)
com.money.manager.ex.core.docstorage.FileStorageHelper.getRemoteMetadata(FileStorageHelper.java:265)
com.money.manager.ex.core.docstorage.FileStorageHelper.isRemoteFileChanged(FileStorageHelper.java:140)
com.money.manager.ex.core.docstorage.FileStorageHelper.synchronize(FileStorageHelper.java:103)

Meaning, when trying to synchronize, there is a problem getting the remote metadata from OneDrive. Thanks.

m4nuel89 commented 5 years ago

Okay. Good. Thank you.

So, can you fix this? Has Microsoft to fix something? Or do i habe to do something? Thank you

alensiljak commented 5 years ago

At this stage I'm not sure. Someone needs to debug, using OneDrive, and see what is missing. This has been tested with pCloud and SD Cards, both storage access framework providers, and it worked just fine. Once that is established, a proper fix may be recommended. I am away for at least two weeks without access to development environment so hopefully someone else can try to troubleshoot and correct.

funrider1 commented 5 years ago

Same problem with DropBox synchronisation. Till 12th February 2019 Sync was working well on my ZTE Axon with current android. At 12th sync does not work anymore without error message. In Settings menu Synchronisation submenu is not available anymore. It disapeared. There is no way in android App to Setup Synchronisation. I download the current version from Play Store on android tablet, where MoneyManagerEx was never installed and got the same result. Only local file, no Sync Setup possible and available.

m4nuel89 commented 5 years ago

No it works, you have to select a file from your file browser. There you can select files from Google drive or Windows OneDrive. Then the files get synchronisated. Because of that they don't need the synchronization submenu ;) Am 16. Februar 2019 20:14:34 schrieb funrider1 notifications@github.com:

Same problem with DropBox synchronisation. Till 12th February 2019 Sync was working well on my ZTE Axon with current android. At 12th sync does not work anymore without error message. In Settings menu Synchronisation submenu is not available anymore. It disapeared. There is no way in android App to Setup Synchronisation. I download the current version from Play Store on android tablet, where MoneyManagerEx was never installed and got the same result. Only local file, no Sync Setup possible and available.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

funrider1 commented 5 years ago

It does not work, because It was working well with dropbox and now dropbox is not available anymore in Open database menu. I do not unterstand what is changed. I can not find any information if Dropbox is still supported. And i do not understand why the synchronisation submenu is eleminated, because in faq and help section is still described. I‘m confused about this change / bug ... what is It?

funrider1 commented 5 years ago

And each time i start App i receive popup message that Sync is not working and to Setup dropbox sync. The App want me to setup dropbox sync but there is no setup menu anymore to do that or any alternative Option. Do you have an idea to solve that problem?

m4nuel89 commented 5 years ago

No sry. I don't know why Dropbox is not supporting this new sync method. For me Google drive work's.

Am 16. Februar 2019 21:48:50 schrieb Funrider notifications@github.com:

And each time i start App i receive popup message that Sync is not working and to Setup dropbox sync. The App want me to setup dropbox sync but there is no setup menu anymore to do that or any alternative Option. Do you have an idea to solve that problem? — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

funrider1 commented 5 years ago

Ok, i did some Tests. Transfered mmd file from DropBox to Google Drive. Uninstall MMEx App and delete all local stored mmd files and folders. Download and install current Version of MoneyManagerEx from PlayStore. Start App and open the mmd file stored on GoogleDrive. It seems to work now, sync to google drive after closing App. But I still miss dropbox in database open dialog. Therefore i uninstall dropbox, download and install from Play Store again and dropbox is still missing in open dialog.

Why dropbox is not available anymore?

Why the settings/synchronisation section is not available anymore e.g. to sync manually or configure the time of sync at open and/or close of the app?

Is a releasenote avalable regarding this change?

Thanks in advance.

m4nuel89 commented 5 years ago

Maybe some responsible can answer this. I'm also a normal user :)

They told me Dropbox itself doesn't support the new sync (i don't know the name)

When i get i right the new sync uploads after every change, so you don't need the menu any more. You can manually by clicking on "Synchronization".

Hope this may help. Am 17. Februar 2019 00:04:02 schrieb Funrider notifications@github.com:

Ok, i did some Tests. Transfered mmd file from DropBox to Google Drive. Uninstall MMEx App and delete all local stored mmd files and folders. Download and install current Version of MoneyManagerEx from PlayStore. Start App and open the mmd file stored on GoogleDrive. It seems to work now, sync to google drive after closing App. But I still miss dropbox in database open dialog. Therefore i uninstall dropbox, download and install from Play Store again and dropbox is still missing in open dialog.

Why dropbox is not available anymore?

Why the settings/synchronisation section is not available anymore e.g. to sync manually or configure the time of sync at open and/or close of the app?

Is a releasenote avalable regarding this change?

Thanks in advance.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

funrider1 commented 5 years ago

Thank you for your support and sharing your knowledge with me ... in deed, with google drive it is working well.

Nevertheless I hope a developers answer the questions, because i‘m sure there are other users using Dropbox sync and have the problem but did not recognized yet, because there is no error message.

m4nuel89 commented 5 years ago

No problem. Great when i was able to help.

Yes that is absolutely true! An official message would be necessary to explain the Dropbox topic. And how to use the new sync!

Am 17. Februar 2019 01:11:49 schrieb Funrider notifications@github.com:

Thank you for your support and sharing your knowledge with me ... in deed, with google drive it is working well.

Nevertheless I hope a developers answer the questions, because i‘m sure there are other users using Dropbox sync and have the problem but did not recognized yet, because there is no error message.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

pfischer27 commented 5 years ago

This is my 1st comment but the error failed to find provider reference to skydrive may be a clue here. Skydrive was rebranded to OneDrive in early 2014. Perhaps it is as simple as that.

alensiljak commented 5 years ago

Please have a look at the release notes and Twitter announcements. There are also some recently closed issues with the tag Information, which answer your questions.

funrider1 commented 5 years ago

On Twitter i can’t find helpful information and release can‘t explain why app crash if synchronisation is used ... independant if OneDrive or google drive is used ... sometime it is working and the a few hours later the app crash ... the only way to manually fix it, is to copy the local and changed mmd file to google drive folder and open it in app from there ... I hope the sync chaos will be eliminated asap ... if I can help (unfortunatelly I’m not a developer) please let me know

alensiljak commented 5 years ago

@funrider1, hope will not help much. If announcements on Twitter, change logs, source code comments, etc. do not tell you anything then I'm sorry. You can have a look at the source code, try it out on your phone, identify why the app crashes and submit a pull request with the fix. I'm not sure why would you expect effort from someone else if you are not ready to put in some yourself.

funrider1 commented 5 years ago

@MisterY, please excuse, i‘m Only a user and have no experience in source codes. I tried to understand what happens during synchronisation and to provide information to describe the effect, but my technical skills are very small. In the meantime I read all the announcements and now I have a understanding why the sync is change from own developed to android functionality. Sorry for the confusion and thank you for the very quick answers and support. Unfortunately I can not help to fix the last problem, that Click on synchronisation crash the App.

alensiljak commented 5 years ago

No worries. The point being that we are all "just users". There are no official and dedicated developers on this project. I, for example, learned Android development so I could contribute features I wanted to see in the apps I was using. Probably the same for other contributors. We all contribute when and how much we can but this is an Open Source hobby project. Meaning everyone can help out and everyone does it on a voluntary basis, in our own spare time (which is very limited).

funrider1 commented 5 years ago

Hi @MisterY
i followed your invitation and started to make tiny changes in my own fork and make a pull request :-) i also checked the german translations and made some minor changes. :-) i download android studio and will have a look to the code during the next days. i hope to understand and figure out someting but i have no idea of Java :-O If i can help with easy code editing or something else please let me know.

alensiljak commented 5 years ago

That's great! Welcome to the world of Open Source. It is possible that there is an exception being thrown in case of conflict. The idea was that it will get caught and error message displayed, sync aborted. Not sure why the app crashes though. I will look at the source code when I can get to it but probably not this week.

MisterEco commented 5 years ago

Hello, what about this log?

After pressing Sincronise app crashes with the following message:

java.lang.RuntimeException: Conflict! Both files have been modified. at com.money.manager.ex.core.docstorage.FileStorageHelper.synchronize(FileStorageHelper.java:110) at com.money.manager.ex.home.MainActivity.onDrawerMenuAndOptionMenuSelected(MainActivity.java:604) at com.money.manager.ex.home.MainActivity$3$1.run(MainActivity.java:930) at android.os.Handler.handleCallback(Handler.java:754) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:163) at android.app.ActivityThread.main(ActivityThread.java:6388) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:930) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:820)

alensiljak commented 5 years ago

That's the correct error message, thank you. That issue is now tracked in #1309.

alensiljak commented 5 years ago

This one is left open to track the problem with the OneDrive provider, that m4nuel89 posted. Hopefully others who use OneDrive can provide more information.

merlin260880 commented 5 years ago

Hi there

I read this thread and I think I have a similar issue. Raised around 2 or 3 weeks ago. It is not possible to sync, maybe caused by update of Dropbox and MoneyManagerEx for Android. Sync is endless and when I switch within menue to sync, it says "Invalid remote Uri. Please re-open the database". My problem is now, that I added several entries and does not want to lose them. Also export is not available within menue. How can I sync or get my data and reimport?

Thanks in advance.

alensiljak commented 5 years ago

I'm getting the same behaviour with pCloud. Usually this happens when the pCloud app has not been started for some time and does not have up-to-date information. Sometimes a simple retry works out. Sometimes it is necessary to start pCloud client and then go back to MMEx and retry. In rare cases, though, I get a conflict, which I find a bit strange but don't have enough information to troubleshoot.

ButtsBrow commented 5 years ago

I've been using OneDrive and synchronising after each use of MMEx on the phone. I believe a "conflict"may arise if I edit an "account" in order to correct an error in a balance. However the last few days I've added transactions as usual but One Drive creates a new database, ie 2019 becomes 2019 1. I did see a OneDrive message to this affect a month back (We've created a duplicate or copy file...) or similar, but didn't manage a screen shot. I've been trying to replicate the error but it's random, or doing it when I'm not looking. I don't know whether to stick with OneDrive or GoogleDrive, the later just seems to give up synchronisation, and I'm not sure where Backup and Sync from Google fits in with all of this.

ButtsBrow commented 5 years ago

Update: The pop up is from OneDrive on Windows 10 "We could not merge changes.... so created another...."

github-actions[bot] commented 9 months ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 5 days.

wolfsolver commented 9 months ago

OneDrive work fine with latest release 2024.01....