There are many things you can do on an iPhone with an Android phone. A big exception is iMessage. Can you have a blue bubble with your Android phone? What about Windows PC? Yes, you can.
How is this possible? People have been trying to use iMessage on Android for a long time because Apple refuses to control the phone numbers of iPhone users. The big breakthrough came when Apple brought iMessage to the Mac. Here’s the key to getting started.
Before you can be too optimistic, you need to know that you have great potential. First and foremost, you need a macOS device or a macOS virtual machine, although it is highly recommended to do so with an actual Apple device.
That device should be on Mac OS X El Capitan (released in 2015) or later, but you’ll want to take a minute to decide which version is best for your needs. Some features of iMessage are not supported by the software we will use in some versions of macOS (more on this later).
We will use an open source tool called BlueBubbles. AirMessage is another popular solution, but we think BlueBubbles has several advantages. It is self-hosted, so you don’t trust other people’s servers. BlueBubbles is community-managed and features customization with desktop applications, web applications, and tones for Windows and Linux.
As mentioned, certain BlueBubbles features are not available in all macOS versions. See the table below to see which version is best for your needs.
|BlueBubbles Features||The Captain – Catalina||Great Sur||Monterey|
|Sending / Receiving Messages||✓||✓||✓|
|Sending attachments||✓||✓||✓ **|
|Acceptance of attachments||✓||✓||✓|
|Tapbacks, Stickers and notes making||✓||✓||✓|
|Receipt of Delivery / Reading Receipts||✓||✓||✓|
|Acceptance of answers||†||✓||✓|
|Creation of DMs||✓||✓||✓|
|Creating Group Chats||✓|
- ✓ ** – Sending a Monterey attachment may not be as reliable as previous versions of macOS, as it is based on UI automation (which simulates keystrokes) rather than actual code.
- † – The answers will be displayed as a normal message on macOS 10.x devices, instead of showing the answers with the UI.
This is the situation of BlueBubbles as of June 2022. Check the FAQ page for updated information about macOS versions.
Of course, you also need an Apple ID to use iMessage. In addition, we are all ready. In short, you need a Mac running a compatible version of macOS, a Messaging app with your Apple ID, and a BlueBubbles server. So let’s get started.
Set up BlueBubbles Server
The most important part of the puzzle is the BlueBubbles server. The server runs on your macOS device and acts as a kind of “hub” for sending iMessages to BlueBubbles applications on your Android phone and on your Windows or Linux computer.
First, go to the GitHub page on your macOS device and download the latest DMG file from the BlueBubbles server.
Then, open the DMG file and drag it to the “Applications” folder after installation. You can now open the program.
You will first be asked to provide BlueBubbles with Full Disk Access. This is required for BlueBubbles to read from the iMessage chat database. Click the “Open System Preferences” button.
Go to the “Security and Privacy” section of the settings and select “Full Disk Access” in the sidebar.
To enter your Mac password, click the lock icon in the lower corner, and then activate BlueBubbles. You will be asked to restart BlueBubbles.
Before leaving the Security and Privacy settings, go to the Accessibility section and activate BlueBubbles as well.
During this initial setup, you will also be asked to allow BlueBubbles to access your contacts. Click “OK” to allow this.
The work here is a bit complicated. BlueBubbles uses Google Firebase Cloud Messaging to notify your devices. This allows BlueBubbles not always require a server connection, which means you get notifications even when the app is running in the background and it doesn’t use much battery.
To get started, sign in to the Google Firebase Console and sign in with your Google account. Click on “Create Project” and name it “BlueBubblesApp”. There is no need to activate Google Analytics for the project.
Then, in the sidebar menu, under “Create”, create a Real-time database> Database.
Select your location, then click Next> Activate with the “Start in Offline” option.
Then, in the sidebar menu, click on the gear icon next to “Project View” and click on Project Settings> Service Accounts> Create a Service Account> “Create a New Personal Key” and save the file on your Mac.
Now go to the Cloud Messaging tab and click on the three-dot menu icon for the Cloud Messaging Legacy API and go to API Management> Activate in the Cloud Console.
Drag the JSON file with the file name “firebase-adminsdk” into the BlueBubbles application.
Return to the Project Settings menu on the Firebase website, go to the “General” tab. Click the Android icon at the bottom of the page.
Enter “com.[yourname]Click on “Register Application” to download the .bluebubbles and google-services.json file for “Android Package Name”.
Now we can also download the google-services.json file to the BlueBubbles application. After doing this, click “Next”.
Enter a strong password for your server and click the Save icon. When finished, click “Next”.
The next screen is for Private API Setup. This is one of the most advanced features of BlueBubbles. If you want to send reactions, answers, topics, look at writing indicators and effects, you should follow the instructions on this page. Note that this requires you to turn off some additional security measures on your Mac.
The last thing to do is to activate the “Start with macOS” and “Keep macOS awake” functions to keep the BlueBubbles server running. You can also automatically check for and install updates to BlueBubbles.
Connect the server to BlueBubbles Applications
We can combine Android and Windows BlueBubbles apps to start using iMessage when the server is running! We’ll start with the downloadable Android app here.
When you open the app for the first time, you need to give it some permissions and make sure you’re signed in with your Apple ID on your Mac with iMessage.
Then, go back to the BlueBubbles app on your Mac, click on the QR code icon, and then scan it with the phone app.
After scanning the QR code, click on “Start Synchronization” in the phone application.
When the synchronization is complete, click “Finish”.
Now you use iMessage on Android! You can find many personalization options under the three-point menu on the chats screen. If you enable the Private API features, you may want to activate them.
You can also find the Windows application on the BlueBubbles downloads page.
Installing a desktop app is the same as installing an Android app, but you probably won’t be able to scan a QR code with your computer. Instead, you must enter the server details manually. You can find them in the Android app under Settings> Connection and Server (same password as we created earlier).
Now you have the same BlueBubbles experience as your phone on a Windows PC! Note that there is a BlueBubbles web application that can be installed in the same way.
Those who need to know
One important thing to understand is that it turns iMessage into a separate instant messaging service. All your iMessage conversations will be in BlueBubbles, and standard SMS / RCS conversations will still be in your device’s default text program.
The second thing to know is that this is essentially the wrong solution to launch something that was never designed to work that way. That’s why you will be face problems. The good news is that the BlueBubbles community is very active and helpful on Reddit and Discord. The official BlueBubbles website is also a good source for the latest information.
BlueBubbles is not a perfect solution and certainly requires some effort to set up. However, it is a solves and you only have to go through this process once. After all, it’s amazing.
RELATED: How to Set Up Your Default Messaging App on Android