[MOD-2603] iOS: Bluetooth / BLE support
GitHub Issue | n/a |
---|---|
Type | New Feature |
Priority | Low |
Status | Closed |
Resolution | Done |
Resolution Date | 2020-04-23T18:44:00.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Backlog |
Components | n/a |
Labels | n/a |
Reporter | John Abraham |
Assignee | Unknown |
Created | 2013-06-14T20:31:59.000+0000 |
Updated | 2020-04-24T08:31:26.000+0000 |
Description
Titanium has been generally out of sync on this for sometime. However, the iOS7 "Accessories" enhancement means that Titanium will be even further behind on this issue. Given that mobile devices will be a big part of the glue holding the internet of things together (via primarily wifi and bluetooth), I think it is imperative for Titanium to address this to stay relevant. At least a response on the Q&A message boards would be appreciated.
I also want to support this, there is questions on the QA as well http://developer.appcelerator.com/question/411/what-about-bluetooth
In order to help prioritize this, what is the list of features being asked for? There are modules available here: https://marketplace.appcelerator.com/listing?1583505450&q=bluetooth#!/list/page/1/search=bluetooth What is the primary issue with these modules?
Of the 4 bluetooth modules in the marketplace right now, 3 of them are Logical Labs modules. 2 of our modules are LE (low energy) specifically. One is for iOS and the other is for Android. If the original ticket creator's wording > iOS7 "Accessories" enhancement < refers to the new iBeacons implementation in iOS7, then this is also going to be available in our iOS BT LE module when the 1.1.0 version is released. We are working with Appcelerator currently to resolve an issue in the SDK with this and when it is resolved, we will be ready to release 1.1.0 in the marketplace. If there are any questions about the modules and their capabilities, please contact us at titanium @ logicallabs.com John Pataki
The main reason is they are way too expensive and I won't be buying something only to find it not suitable for my app or won't work as expected. I have bought several modules in the market which was only thrown away later because they are not fit for task.
I would reinforce here that those modules are waaay too expensive. When we, developers, decide to study Titanium in favour of, say, PhoneGap, it's usually because we think it's features are superior, or that we believe that native apps are the future. But then we think about using a very, very old feature of phones - Bluetooth - and then we discover there's absolutely *nothing* in the docs about Bluetooh - except for the Tizen libs. Seriously? There are posts in the Q&A forums asking for bluetooth support from FOUR years ago, and *official* replies saying it was on the roadmap and whatnot. C'mon, we are in the fourth version of the Bluetooth stack and the only way to use it on a Titanium app is to pay $350 for each OS we want to support this *basic technology*? In a said ""free"" development environment? The more I get into the Titanium platform the more I see how sometimes we developers and some obvious features are put at the side for no clear reason at all. In short: Q&A answers won't fit. Please, develop Bluetooth modules for all the platforms as soon as possible. As said in many other pages, this is a very useful technology that other major players support. You should not be behind that.
Does AppC have any roadmap on implementation of BT support out of the box? Can you please share us the information as the information will help us a lot in planning our future plan and move. Moreover a mature framework like AppC should support BT natively without the use of any external modules, seeing the growth curve and potential of the framework.
bump
Is there any update on this? I've been trying to implement BLE through the LogicalLabs modules and have been sorely disappointed. * The iOS version has a crashing issue. * There is little compatibility across iOS and Android (which can be worked around). * Their support is pretty sad (they haven't responded to a majority of their support request in their community). This is the biggest issue as I tried contacting them finally through a phone call and they admitted to not having the resources to keep their modules up to date and they know there are problems. Titanium should absolutely support BLE natively. This has become a core mobile technology and without solid support in the Titanium platform, you WILL lose customers. Developers will go to competing platforms. I'm about to.
Dan, We apologize if you feel our support hasn't met your needs. We know this is not always this case as we do get positive feedback often on our support. We are aware that the modules need some more attention and we are in process of addressing this issue. We did have our resources stretched thin this past year and focused on some other priorities in the business but we are swinging back for an update on all of our titanium modules. We expect to have an update to the Bluetooth Classic, BLE, & Beacon modules in Q1.
Thanks for the response John. But Q1 doesn't help me hit my deadline for Jan 31. Nor does it change the fact that Bluetooth should be supported natively by titanium. It is a huge/core component of any mobile platform and should not be left for a 3rd party to implement.
Following up a recent TiSlack discussion: I hacked around some BLE API's and created [Ti.Bluetooth](https://github.com/hansemannn/ti.bluetooth). You can create characteristics, services and descriptors, scan for peripherals and receive events about state updates. Feel free to add more functionality and docs / examples. Thx! *UPDATE*: Thanks to @miga, we now also have an Android version for the above. While we already have some parity, we are still working on more improvements. Please feel free to jump in and contribute!
Thank you @hansknoechel and @miga! This is awesome! I've already started implementing.
[~hansknoechel] I'd like to integrate this when possible. Can you scope out the effort?
[~emerriman] Inside the core? I'd rather suggest to move the [ti.bluetooth](https://github.com/hansemannn/ti.bluetooth) module to the appc-namespace, so we can prepackage it with the SDK just like ti.touchid, ti.map and ti.facebook.
The functionality is available on iOS and Android via the third-party module [titanium-bluetooth](https://github.com/hansemannn/titanium-bluetooth). Please feel free to try it out and provide feedback!
@John V Pataki when can we expect the update? As you know I bought 3 Logicallabs packages (bt classic, ble android, ble ios) and I need the update for SDK6 / Android...
And indeed, tried to contact Logiallabs several times, but no response.
Hi [~ray@raymondverbruggen.nl], I responded to yesterday's email today. I apologize for the delayed response. We will update your support ticket on our side as we release updates to our modules. I will sync up with you directly next week.
Hi John, could you update with a time schedule? Shoudn't be too much work to update the modules would it? If you need someone for testing, I can do that easily :)
[~ray@raymondverbruggen.nl], I just realized I hadn't posted the update to your question here last summer even though we've continued support discussions directly with you through Logical Labs's support center since then. So others are aware in case they come across this thread later - all Logical Labs modules, including all of the Bluetooth related modules (Classic, BLE, and Beacons) were updated to Titanium 6.1 in June 2017 in the marketplace. Thanks Raymond for all of your input, enhancement requests and beta testing.
Hi John, The modules are working great. Even more; the module for Android BLE you updated on my request to add a 'requestConnectionPriority' method is working superb as well. Now I can make my Android app work as fast as the iOS app with my custom hardware bluetooth device. Great support!! Thanks a lot! Best regards, Raymond Verbruggen
Cleaning up older fixed issues. If this issue should not have been closed as fixed, please reopen.
Hello guys, is there any movement on this ticket? It was reopened and closed yesterday, but no new info, no new comment... Thanks