Android Question Bluetooth app

luke2012

Well-Known Member
Licensed User
Longtime User
Hi all, I state that it has been a long time since I have had to analyze an app that is based on bluetooth technology and I should understand the technical feasibility of a request I had, namely: assuming we're using Android devices where the app is installed, is it technically possible for smartphone A, which contains instance A of the app, to read via Bluetooth the profile pictures contained in instances B, C, and E of the same app installed on Android phones B, C, and E, reachable via Bluetooth connection?

Out of curiosity and because it's so fashionable lately, I asked an artificial intelligence (also for brainstorming purposes) and the answer was this::

"No, it is not technically possible for a single instance of app A on smartphone A to directly read the profile pictures contained in instances B, C, and E of the app installed on other Android devices (B, C, and E) via a Bluetooth connection. Bluetooth connectivity between Android devices mainly allows for the exchange of limited data, such as files, text, or commands, but it does not allow direct access to the internal data of other apps without their explicit consent and support."

I was wondering if the answer the artificial intelligence gave is in line with the natural intelligence answer (in this specific case) ? :)

1688018896518.png
 
Last edited:

luke2012

Well-Known Member
Licensed User
Longtime User
I'm not sure that I understand. You can connect to other devices and you can send any data you like.

Start with this example: [B4XPages] Bluetooth Chat Example
Hello Erel, and first of all, thank you for your appreciated response. The logic of what I would like to implement is essentially a kind of airdrop (like Apple's) within an app that has the user profile (within a file) as its main data.

So in this case, the app should present to the user who wants to send their own profile file to another user, the list of user profiles that are using the same app on other smartphones and are within Bluetooth range, so that they can select the desired recipient (following the same logic implemented with Apple's airdrop, where instead of users, there are Mac devices compatible with airdrop within Bluetooth range).
 
Upvote 0

luke2012

Well-Known Member
Licensed User
Longtime User
Another relevant example: [B4X] [B4XPages] Network + AsyncStreams + B4XSerializator
It isn't based on Bluetooth but the logic is exactly the same and it shows how to send objects between devices.
Hi Erel, and again thank you for your appreciated reply.

I still need to try out this example, but if I understand correctly, essentially:
  1. It is based on a client-server architecture, and both components are within the app.
  2. Therefore, any device that has an instance of the app can both transmit and receive objects.
  3. This (version) of the solution only works on an IP network.
It would be great, but one of the specifications that my client wants is for the solution not to depend on an IP network but to be implemented through Bluetooth connections.
 
Upvote 0

luke2012

Well-Known Member
Licensed User
Longtime User
Thanks again for your reply.
To better understand the technical feasibility of the solution I would like to implement, with an implementation based on AsyncStreams & Bluetooth serial, would it be possible for smartphone A to receive the objects from other n smartphones, (B, C, and E, for example), that are reachable via Bluetooth from smartphone A, without the users of smartphones B, C, and E voluntarily initiating an AsyncStreams transmission (Obviously, assuming that users of smartphones B, C, and E have already granted the necessary permissions during the app installation and first launch)?

In other words, on smartphones B, C, and E, there are instances of objects B, C, and E derived from the same class but with different data (for example, contextualized to the user profile). Through a customized implementation, is it possible for the app (using AsyncStreams with Bluetooth serial) present on smartphone A to create a list of objects present in the app instances (using AsyncStreams with Bluetooth serial) on smartphones B, C, and E that are within the Bluetooth range?

So, to conclude the reasoning, the logic I would like to implement is that every smartphone that has installed the app is capable of initiating a Bluetooth scan (action voluntarily triggered by the user through a dedicated button) to detect other smartphones, and for each smartphone (reachable via Bluetooth), initiate the reception of the object present on every smartphone that has an instance of the app with the respective object (mentioned above).
 
Last edited:
Upvote 0
Top