I wanted to clarify on the current state of Dropbox integration front up...
In case you do not want to dive into technology stuff, please skip to the bold section below.
All of my apps - both for Android and iOS - come with Dropbox support currently. The integration is based on they so called Sync API (application programming interface). This interface has been deprecated by Dropbox now. This means they discourage using this old API and drop maintenance / support. Their recommendation is to migrate all apps to the new Dropbox API 2.
Besides the effort every API change requires on the developer side, this is actually where the problem begins: instead of providing their new API for Objective-C, they support Swift only. Swift is Apple's new programming language provided in parallel with Objective-C. And Objective-C is the language all my apps are implemented in. While it is possible to combine Swift and Objective-C code, Dropbox does not provide support for this. Furthermore, mixing these languages adds a considerable burden to memory requirements of LapTimer et al.
This is what I sent to Dropbox:
This means LapTimer and all other apps will keep Dropbox support as long as the existing library works. Once it stops working, I will remove Dropbox support until an acceptable solution is getting available. I will investigate alternatives too.I think Dropbox is ignoring those developing and building value for them. Following changes in technology is fine but maintaining existing technologies is as important. It is about securing investments. Deprecating an API generates lot of efforts for the developer community. Leaving those willing to support this change nevertheless with no option is even worse.
I have a large Objective C code base and nearly a dozen of apps on the store. I will try to keep the v1 API as long as possible and drop Dropbox support afterwards. There are other options.
There is one known issue already: the first time you export to Dropbox, you will be prompted to enter your Dropbox credentials and allow LapTimer to access it. When returning to LapTimer from this dialog, the app will crash. Workaround: restart LapTimer and export again. As credentials have been entered and are linked already, the export will work from now on.