I need a your help
I'm making a file transfer app By Bluetooth and Wifi
But i can't find how send files from Android to iPhone by bluetooth
1 ) How send files from Android to iPhone ??
2 ) Where is sample codes ?
On iOS there are currently two ways to send/receive files over Bluetooth. The first way is over Bluetooth Classic which uses the External Accessory Framework. This does however require that the device you are connected to is MFi enabled, which (to the best of my knowledge) no Android-phone is. The other way is over BLE (Bluetooth Low Energy) which uses the Core Bluetooth Framework. BLE is designed to be very low power and thus have a pretty low throughput. It is possible to send larger files (like images) over it though, but you will probably have to cut the image in smaller pieces and stitch the data back together on the receiver side. You can read about the framework in the Core Bluetooth Programming Guide here: https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/CoreBluetooth_concepts.pdf
Related
I'm making a project with ESP32 that involves communication with a mobile application. Currently I'm using BluetoothSerial(built on Classic) just for debugging, but I plan to make a dedicated mobile application to have all kinds of data related to the project, and I'll gather this data from the controller through duplex communication, maybe via a command-response interface.
What I want to know is what kind of Bluetooth would be preferable to communicate with an Android application? Things that I want to keep in consideration:
Auto-connection capabilities when in range.
OTA possibility.
Range.
Hardware Requirements (Like timers and such)
Data Security
Port capability to iOS.
I do not care about:
Battery Usage (If the practical difference is minimal)
Transmission Speeds (I'm just transmitting 2-3 kb numerical data once a second)
It doesn't make a huge difference as most of the things you listed above can be achieved via either method, so it comes down to your personal preference and your existing familiarity with the wireless technology. However, I would personally go for BLE because unlike classic Bluetooth, BLE is now a lot more mature in terms of applications and resources for both Android and iOS. You will end up finding a lot more documentation and source code when it comes to BLE when compared to classic Bluetooth. Futhermore, as Michael Kotzjan mentioned, classic Bluetooth is relatively new on iOS and has a few restrictions.
The links below can maybe give you a nudge in the right direction:-
Bluetooth classic vs BLE on Android
Android Bluetooth vs BLE
Bluetooth security and privacy on iOS
Classic Bluetooth, BLE or WiFi direct
I have a feature in the app I'm developing. It requires broadcasting of data. Now I have implemented the functionality to advertise the data using the support of new BLE feature. I want this app to be legacy supportive. I want this feature to be usable by broader set of devices (Even devices without BLE & below android 5.0). Can it be done using classic bluetooth. If no, why not? If yes, how to do that?
Thanks,
Kedar
Yes we know that Bluetooth 5 can advertise data more than you described 32 bytes.
However for classic Bluetooth, it may not possible since there are no advertisement mechanism at classic Bluetooth and even for CSB(Connectionless Slave Broadcast), I wonder there are not too much device support it.
One work around method would be you can set your parameters to the Bluetooth local name dynamically...... once your classic device searched the device can parse the name. how tricky it is.
I would like to create an application where near phones/devices can send data between each other.
it should look like that all devices except one turn on some listening function. One device create game and add each of devices from list to game.
I know how to accomplish this task with use of intermediary server. But I would like to achieve this in a different way without server. For example I can create app which find near ibeacons and displays them in a list, and get data from them. Is it possible to make to way communication by bluetooth between phones with bluetooth?
Maybe other technologies? I do not want to use NFC, because range is to short.
Another limitation is that, this solution should be an cordova/phonegap plugin?
Edit:
I need to communicate between users devices. For example I want to make app where two users standing near each other chat together. Messages should be send between phones, without server.
It sounds like iBeacons is the perfect solution for what you're attempting to achieve. It doesn't require NFC or a server–only devices that have Bluetooth 4.0 LE (Low Energy).
If you're unhappy with iBeacons, I recommend the Multipeer Connectivity framework that also became available in iOS7:
https://developer.apple.com/library/ios/documentation/MultipeerConnectivity/Reference/MultipeerConnectivityFramework/
Here's a good tutorial on AppCoda:
http://www.appcoda.com/intro-multipeer-connectivity-framework-ios-programming/
Another benefit to using the Multipeer Connectivity framework as opposed to iBeacons, is that it doesn't require Bluetooth 4.0 LE, which isn't available on iPad 2 and iPhone 4 devices.
I want to know how iBeacon works actually. I found the sample code of AirLocate, but couldn't figure out how it works. iBeacon is works on BLE, so it may be possible for do data communication with other BLE supported devices via bluetooth?
As it possible to make data transfer between iOS - android device via bluetooth using BLE or beacon?
iOS had already announced iBeacon technology, but didn't find out any technical specification document regarding this. I also want to know how it works on android?
Can some one please describe about this technology and is it possible to make data-communication via bluetooth between iOS-iOS device, and iOS-Android Device?
No, you cannot communicate between devices using iBeacons because an iBeacons are transmit only. Mobile devices, both iOS and Android can both hear iBeacons, but they cannot talk back.
iBeacons work by transmitting a 3-part identifier and a transmitter power reference value every second (or more often.) That's it. They do nothing more. SDKs in iOS and Android listen for these signals and report them to your app, but the rest is up to the app developer.
What you suggest may be possible with a custom Bluetooth LE beacon, but it would need to be significantly more complex than an iBeacon, and you would have to build your own.
Here are a couple of links to give you more info:
How iBeacons work on Android from Radius Networks
iBeacon overview by Dave Addey
Full disclosure: I work for Radius Networks.
My company wants to develop an Apple or Android app to tackle with an external sensor device, lets say the temperature of milk via a temperature sensor. The external device is tbd and currently under investigation, could be using a connector or WIFI or Bluetooth.
Do we need to apply for Apple MFI program to get access to the protocols used for that?
Since we do not want to implement the external device, i guessMFI license is not needed. But where do we get ressources to learn how to connect?
For Android you could do this using an Arduino Module
You can do this using Bluetooth / WiFi as your need!
Then make an Android app and communicate with the Arduino Module to get your data via Bluetooth / WiFi
For Ios/Apple
A Plus side of using Arduino
You can use Arduino for Iphone As Well as For Android
How? here you go ----> http://www.raywenderlich.com/38841/arduino-tutorial-temperature-sensor
If you really need to Know the temperature of milk via a temperature sensor here is a Full Tutorial
Which uses a Temperature sensor to find the Temperature and Query it to your Iphone
1 All the Requirements are given.
2 Cost Of all the parts with links
3 Source Code is also provided
4 Working
5 Circuit Diagrams
6 Step by Step Guide to code
7.Libraries are provided
8 Everything needed is provided for free (Software part)
Know everything About Arduino http://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&ved=0CCsQFjAA&url=http%3A%2F%2Fwww.arduino.cc%2F&ei=K344UpiFCo2yrgfXi4CACQ&usg=AFQjCNENSvy_VhDmp9YsE0x0X702I5teeQ&sig2=utVrSYYIMBFAFStVGq--RQ&bvm=bv.52164340,d.dGI
Tutorials :-
http://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=5&cad=rja&ved=0CFEQtwIwBA&url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DkS5C5Xhsv24&ei=g3w4UrDcLsOQkQWA44DQAQ&usg=AFQjCNHED0FWP8FpK29uEnUzxDeyh6751g&sig2=2rfcYp4Zqx5dt-KVri5sfw&bvm=bv.52164340,d.dGI
http://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=6&cad=rja&ved=0CFgQtwIwBQ&url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DY9R5O0mbvME&ei=g3w4UrDcLsOQkQWA44DQAQ&usg=AFQjCNHSbk25-B0KJTejgr4QewfK5aNivw&sig2=YZCyYJb_AVmvgmXVoAWLLw&bvm=bv.52164340,d.dGI
http://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&ved=0CCsQFjAA&url=http%3A%2F%2Fblog.arduino.cc%2F2013%2F07%2F09%2Flet-your-arduino-talk-to-your-android-phone-without-any-android-programming%2F&ei=g3w4UrDcLsOQkQWA44DQAQ&usg=AFQjCNHRdHAkS8MBau7hN3Bv5HtN-fvU0A&sig2=lboevloczOpc28XwVM9cmQ&bvm=bv.52164340,d.dGI
http://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&ved=0CDMQFjAB&url=http%3A%2F%2Fforum.arduino.cc%2Findex.php%3Ftopic%3D168329.0&ei=g3w4UrDcLsOQkQWA44DQAQ&usg=AFQjCNGQE5LOB60XfXmuiJdNYbIxqAqgJw&sig2=yk3dGNYeUOitvr6a4S8DkQ&bvm=bv.52164340,d.dGI
Just to expand a little more on Metalhead's answer. If you go the Arduino route, you will need to buy an Ethernet Shield or a Wifi Shield to use Ethernet or WiFi respectively. You can use Bluetooth if you are close enough to the sensor; you will still need to buy a Shield
One advantage of using the Wifi or Ethernet Shields is that you can use MQTT to remotely monitor your sensors over the Internet.
You can also look into a Raspberry Pi. It has more processing power than the Arduino and it comes with a built-in Ethernet card. If you are a Java programmer, you can install Java in a Raspberry Pi; you can't in an Arduino.
Android also gives you the option of using Android Open Accessory if you want to communicate and control the Arduino using USB or Bluetooth. You will have to be connected to the board directly via a USB cable (if using USB to communicate) since it needs the 5V from your phone to operate.