First of all, many thanks for your extensive tests -- your feedback is invaluable.
@gpatel-fr said in Trying to revive 'ubtd' (Bluetooth file transfer):
@PhAndersson
I could test it with my low cost Android phone. Magic ! I see that you even solved the addressing by Mac address since I could use the Android phone actual name. I'll admit that doing 3 quick file transfers I got 2 successes and 1 failure (that's what is reported by the Android phone) but I'm not even attempting to understand what happened when it did not work, the glass is more than half full that's all that counts, everything blends beautifully with the UT UX paradigm.
I was just flabbergasted that it worked with my 24.04-1.2RC2... until I remembered that I had done an overlay to start the obexd service.
Nonetheless, that's excellent news! It means that if the obexd issue can be solved at platform level, the app could be ported to 24.04 with minimum effort.
Now back to the original test, reinstall the bt plugin, test with the overlay, works again. Disable the overlay (that is, having the obex service not functional), restart the phone: every transfer attempt I do ends in failure. That's expected in fact. Now for my first problem with the software itself: it is not reporting what's wrong. That's a common theme with Ubuntu touch (and well, most modern software): when things go swimmingly, all is good. When the going gets though, user experience goes pear shaped. In a word, good notifications are missing. I'm very interested in notifications in UT to be frank, given that the average UT software is not reporting problems any better than the Bt plugin.
That's a fair comment. At this stage, if anything goes wrong, you'll have to dig through 'journal' to try and understand why, which is not for the faint-hearted.
Second problem: when I had made the obex service functional again, I (unwittingly) messed up the transfer from the other side of the exchange (the Android phone); instead of clicking the arrow to open the notification on the Android screen, I pressed it, that had the side effect of dismissing it. On the UT side, the exchange was not stopped but not dismissed either. I swiped the whole thing away and tried to repeat the operation. After I think 3 times, the exchange failed always, even if I did the right thing from the Android side. I rebooted the UT phone and things got back to successful transfers.
That's a good catch!
I don't want to give the impression that things are bad, just report what happened.
And I'm truly grateful for it
The real news is that things look real good like I said at the beginning, however I need to do quite a few things:
put together a MR on gitlab to solve the obex service start failure.
That would be great indeed!
investigate the keyboard crash. Maybe it was fscitx5 related and it was coincidental entirely. But it will have to be tested a bit.
I've never played with alternative keyboards on the phone. I doubt it could be related, but who knows...
more long term: take a look at the code and see if it could be made more robust against user mistakes and system failures, report problems better.
Indeed.
As a final note, I'd say that maybe having the plugin named 'BT sharing' instead of 'BT plugin' could be clearer for users that have not followed things and read the README.md.
Sure, that's easily fixed
It's not because technically it's a plugin that users need to learn to speak and understand the UT lingo. Maybe it's just me of course.
In the same vein, could the 'app plugin' be not present at all in the drawer? I don't see why the plugin has to appear in the drawer, especially while trying to open it ends in a error message saying that it's not appropriate to call it from here...
That's already on my to-do list and the result of a conscious design choice. I wanted to provide the basic functionalities as fast as possible, just to bridge what I perceived to be a big gap in the current app offering, even if that meant a first version that would seem a bit clunky...
I took note of all the problems you reported and of your suggestions and I will create issues out of them on GitHub, along with the other open points on my to-do list. That will make them easier to follow.