I am currently developing a xplattform Android/iOS App and evaluating, if iOS devices using RxBluetoothKit can communicate with Android devices running RxAndroidBle from Polidea GitHub?
I already looked through the FAQ, Stackoverflow and Gitter questions, but could not find a precise answer.
I am quite sure, that a communication should be possible, but I'd love to have a confirmation from someone who is not a total noob in BLE like me.
BLE(Bluetooth Low Energy) is a network technology designed by Bluetooth SIG and adopted by many platforms (iOS, Android, Windows, etc). The technology is independent of the Reactive Extensions(Rx) frameworks you mentioned. The Rx frameworks just supply a FRP(Functional Reactive Programming) interface to the technology. So RxBluetoothKit is basically a wrapper around Apple's Core BlueTooth framework, providing the Rx features. According to Wikipedia, BLE is supported by iOS 5 and later as well as Android 4.3 and later. You can find the specification here Bluetooth Core Specification V4.0
Related
I am new to flutter.
I came across flutter_bluetooth_serial it works only for android ..please suggest
One suggestion could be to use Android ;-) Howsoever, flutter_bluetooth_serial implementation uses Classical Bluetooth and here we enter the land of Apples MFI (Made for iPhone/iPod/iPad) licensing programme . This is the reason for the lack of support in libraries like flutter.
I suggest using another interface with fewer restrictions, for example Bluetooth LE.
Just started reading about this ibeacon that apple is selling out to retailers. If I wanted to created an app that connects to these beacons.. how can I do so? Cant seem to find any apis or any help for doing this, it is a relatively new technology. Also, can Android devices also utilize this technology?
Apple has an app called AirLocate that they released at WWDC this year. If you search on "AirLocate" you can find it online.
It is an app that lets you turn your BLE-capable iOS device (iPhone 4S or later, iPad mini/ iPad 3 or later, or 4" iPod) into either a beacon or a beacon detector.
With that source it's quite easy to figure out the basics of iBeacon programming.
As the other poster said, the newest Androids are able to detect beacons, but so far the firmware does not support sending as a beacon.
Yes, Android devices can interact with iBeacons using Radius Networks' Android iBeacon Library.
You can find a table that compares the APIs for both Android and iOS on this page. You may also want to Google for a tutorial.
We want to build a smartphone app which uses geolocation, etc. and target the most important smartphones. Which OS would you support for a b2c application? I found a german statistic here: http://de.statista.com/statistik/daten/studie/150842/umfrage/prognostizierte-marktanteile-der-smartphone-betriebssysteme-in-2013/ which forecasts the smartphone usage for 2013. To summarize it lists the following OS, ordered by priority:
Symbian, Android, Blackberry (RIM), Windows Mobile, iPhone
Would you agree with this priority or should we start with the classical: iPhone/Android combo?
It probably depends on the market you're targeting. The statistics you're quoting might be right for Germany but in the US situation is quite different. Blackberry still holds the biggest share, but if your app is a consumer (not business) one, iPhone/iPad and Android is the clear choice. Symbian is not a large player here at all, besides, there's a lot of talks going on about a crisis of the platform so I wouldn't even take it into consideration.
Wright now and in a foreseeable near future, iPhone and iPad are the trendy options, for most categories of consumers. Blackberry and Windows Mobile devices are more the tools of business oriented people. So I guess it's more about your target audience than general usage. iPhone OS and Android will cover, in my opinion, the most ground.
The only "crisis" in the Symbian Platform is the gradual shift towards Qt. If you develop a new app for Symbian, use Qt, which is a very nice and powerful environment. The Nokia Qt SDK is worth a try.
In Europe and large parts of Asia, Symbian outsells all the other platforms combined, so the market is huge. In the US, Symbian barely exists, because Nokia isn't much of a player there.
I would recommend you to take a look at Mobile Community Framework (MCF). This is a cross-platform framework that supports all today's smartphone OS - iPhone, Android, Symbian, Blackberry and WinMobile. It can perform tasks like simple object transfer over network in Wi-Fi Ad-Hoc mode (for direct connections) or through dedicated proxy server, defining and exchanging geolocation and discovering peers running specific MCF-enabled apps in a given radius. It is free and simple to use.
More info at http://uvamobiltec.com
I'd do a quick prototype for Android (as it's a simple platform to develop for) first. Then consider iPhone & probably RIM.
Do any libraries or other development resources exist that can help reduce the effort involved in porting applications between various mobile platforms? In particular, I am interested in supporting iPhone, Android, and Windows Phone 7. Some areas of concern include UI, client-server communication, and hardware support (e.g., camera, GPS, etc).
MonoTouch allows you to write iPhone apps using .NET (C#). In the near future, an Android version will also be available (MonoDroid)
As for Windows Mobile, I'd forget about that and concentrate on Windows Phone 7, which will use Silverlight for apps. And of course, Silverlight is .NET as well, so you can share all your business logic between Silverlight, MonoTouch (iPhone) and MonoDroid (Android)
There is actually a really good tool out there that allows you to write apps for android and iphone in javascrpit, HTML and CSS. Then the program will port the app for either iphone or android, building the objective C code (iphone) or java code (android) as it compiles. Later revisions of the program are said to include the ability to port to palm and blackberry as well. And the bonus... free and open-source!!
PhoneGap supports Android, Blackberry, and iPhone formally. They tweeted that it works on Windows Phone 7, but it's a bit early to feel certain of that, since that OS has not shipped yet. Has reasonable but far from complete hardware support.
Well it appears that iSpectrum seems to be what you're looking for.
You'll find a video on their website homepage ( http://www.flexycore.com/ ) which shows a 3D android game they ported in only 2 days!
All mobile platforms I've encountered so far have C89-compatible compilers, so that is what you want to use for the core application logic if you have high portability requirements.
The product I'm working on can currently be built and run on Android, iPhone, Symbian, Windows Mobile and some other proprietary platforms (Nintendo handhelds) and legacy platforms (PalmOS, OSE) as well as "real" machines (Linux and Solaris servers).
Of course the UI code has to be written specifically for each platform, but the core is built from the same source code for all targets.
Does mono touch allow you to do cross iPhone communication? (iPhones in the same room)
If so, what's the API?
Use the MonoTouch.GameKit API to communicate with other nearby iPhones. It is available in MonoTouch 1.1.1 (released on October 8th).
Here is an introduction to GameKit programming:
http://developer.apple.com/iPhone/library/documentation/NetworkingInternet/Conceptual/GameKit_Guide/Introduction/Introduction.html
I would start here (MonoTouch API) and also reference this (MonoTouch Assemblies) which lists System.dll and includes the System.Net.Sockets namespace so some communication seems possible although I don't believe any of the interaction will be built for you. You might however be able to utilize and recompile some existing communication libraries using .NET against MonoTouch for distribution on the iPhone.
This is not a MonoTouch problem, it is a Cocoa Touch problem. Using MonoTouch really requires that you still learn Cocoa Touch as well.
What you want to use is the GameKit framework that is a zero-config local networks over bluetooth. There are no GameKit bindings for MonoTouch yet, so you must look into:
Learn the internals of MonoTouch.
Learn the internals of Objetive-C.
Use what you learned to write C# to Objective-C bindings for the GameKit framework.
As you might imagine, a faster solution is to skip MonoTouch for this use case, and go directly to Cocoa Touch where everything is already in place. Brace yourself and spend a few days learning Objective-C.