How to Use iMessage on Android and Windows

Most things you can do on an iPhone can be done with an Android phone. A big exception is iMessage. Can you be a blue bubble with an Android phone? What about a Windows PC? Yes you can.

How is it possible? Ever since Apple refused to give up its grip on iPhone users’ phone numbers, people have been trying to get iMessage to work on Android for a long time. The big breakthrough came when Apple introduced iMessage on Mac. Therein lies the key to making it work.

Before you hope too much, you should know that there are some very big catches. First, and most importantly, you’ll need a macOS device or macOS virtual machine, although it’s highly recommended to do this with actual Apple hardware.

This device will need to be on Mac OS X El Capitan (released in 2015) or newer, but you’ll want to take a minute to decide which version will best suit your needs. Some iMessage features aren’t supported by the software we’ll be using with some versions of macOS (more on that later).

We will be using an open-source tool called BlueBubbles. AirMessage is another popular solution, but we think BlueBubbles has a few advantages. It’s self-hosted, so you don’t depend on servers run by other people. BlueBubbles is community-driven and offers desktop apps for Windows and Linux, a web app, and tons of customization features.

As mentioned, some features of BlueBubbles are not available on all versions of macOS. Check the table below to see which version best suits your needs.

Features of BlueBubbles El Capitan–Catalina Big Sur Monterey
Sending/receiving messages
Sending attachments ✓**
Receive attachments
Receive tapbacks, stickers, and mentions
Receipt of receipts/read receipts
Receive responses
Creation of DMs
Creating group chats
  • ✓** – Sending Monterey attachments may not be as reliable as previous versions of macOS, as it relies on UI automation (simulating keystrokes) rather than actual code.
  • – Replies will display as a normal message on macOS 10.x devices, instead of displaying with the Replies UI.

This is the state of BlueBubbles as of June 2022. Check the FAQ page for updated macOS release information.

Of course, you will also need an Apple ID to use iMessage. Other than that, we’re all set. In short, you need a Mac running a compatible version of macOS, the Messages app signed in with your Apple ID, and the BlueBubbles server. So let’s get started.

Configure the BlueBubbles server

The most important part of the puzzle is the BlueBubbles server. The server runs on your macOS device and acts as a sort of “hub” for iMessages to be sent to BlueBubbles apps on your Android phone and Windows or Linux PC.

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 it is installed. You can now open the app.

Drag BlueBubbles to the Applications folder.

You will first be asked to give BlueBubbles “Full Disk Access”. This is required for BlueBubbles to read from the iMessage chat database. Click “Open System Preferences”.

Go to the “Security & Privacy” section of Settings and select “Full Disk Access” from the sidebar.

Select "Full disk access."

Click the lock icon in the lower corner to enter your Mac password, then activate BlueBubbles. You will be asked to restart BlueBubbles.

Enable "Blue bubbles."

Before leaving the “Security & Privacy” settings, go to the “Accessibility” section and also activate BlueBubbles.

Enable "BlueBubbles" have "Accessibility" to access.

At some point during this initial setup, you will also be asked to grant BlueBubbles access to your contacts. Click “OK” to allow this.

This is where things get a little complicated. BlueBubbles uses Google Firebase Cloud Messaging for notifications on your devices. This allows BlueBubbles to not require a server connection at all times, which means you get notifications even when the app is running in the background and it doesn’t use as much battery.

To get started, go to the Google Firebase console and sign in with your Google account. Click on “Create a project” and name it “BlueBubblesApp”. You do not need to activate Google Analytics for the project.

Name the project "BlueBubbles app."

Then under “Build” in the sidebar menu, navigate to Realtime Database > Create Database.

Choose your location, then click Next > Enable with “Start in locked mode” selected.

Next, click the gear icon next to “Project Overview” in the sidebar menu and navigate to Project Settings > Service Accounts > Create Service Account > click “Generate New Private Key ” and save the file to your Mac.

Select "Generate a new private key."

Now switch to the “Cloud Messaging” tab and click on the three-dot menu icon for “Cloud Messaging Legacy API” and navigate to Manage API in Cloud Console > Activate.

Drag and drop the JSON file we uploaded that includes “firebase-adminsdk” in the filename to the BlueBubbles app.

Drag the json file to BlueBubbles.

Back in the Project Settings menu on the Firebase website, navigate to the “General” tab. Click the Android icon at the bottom of the page.

Enter “com.[yourname].bluebubbles for the “Android Package Name” and click “Register Application” to upload the google-services.json file.

Name the package and "Save the app."

Now we can also drag the google-services.json file to the BlueBubbles app. Click “Next” after doing this.

Drag the json file to BlueBubbles.

Enter a strong password for your server and click the save icon. Click the “Next” button when you’re done.

The next screen is for “Private API Configuration”. This is one of the most advanced features of BlueBubbles. If you want to be able to send reactions, replies, topics, see hit indicators and effects, you will need to follow the instructions on this page. Note that this requires disabling some additional security measures on your Mac.

Advanced private API features.

The last thing you need to do is enable “Get started with macOS” and “Keep macOS awake” to make sure the BlueBubbles server keeps running. You can also have BlueBubbles check for and install updates automatically.

Make sure your Mac continues to work.

Connect server to BlueBubbles apps

With the server up and running, we can connect the Android and Windows BlueBubbles apps to start using iMessage! We’ll start with the Android app, which can be downloaded here.

You will need to grant some permissions to the app when you first open it and make sure you are signed in with your Apple ID with iMessage on your Mac.

Give BlueBubbles permissions.

Then, back in the BlueBubbles app on your Mac, click on the QR code icon, then scan it with the phone app.

Generate the QR code to scan.
View QR code on Mac.
Scan the QR code with your phone.
Scan with the Android app.

Tap “Start Sync” in the phone app after scanning the QR code.

Faucet "Start synchronization."

Once the synchronization is complete, tap “Finish”.

Faucet "Finish."

You are now using iMessage on Android! You can find plenty of customization options in the three-dot menu on the chats screen. If you have private API features enabled, you will want to enable them.

Go to the "Settings" for more options.

The Windows app can also be found on the BlueBubbles download page.

Select the "Desk" application.

The setup for the desktop app is the same as the Android app, but you probably won’t be able to scan a QR code with your PC. Instead, you will need to manually enter server details. You can find them in the Android app under Settings > Connection & Server (same password we created earlier).

You now have the same BlueBubbles experience as your phone on your Windows PC! Note that there is also a BlueBubbles web application which can be configured in the same way.

Things to know

One important thing to understand is that this essentially turns iMessage into a separate instant messaging service. All of your iMessage conversations will be in the BlueBubbles app, while standard SMS/RCS conversations will always be in your device’s default SMS app.

The second thing to know is that this is an inherently hacky workaround to make something work that was never meant to work that way. Therefore, you will be experience 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 of up-to-date information.

BlueBubbles is not a perfect solution and it certainly takes some effort to set up. However, it is a solution and you should only have to go through this process once. It’s pretty amazing once everything is working.

RELATED: How to Set Your Default Texting App on Android

Source link

Steven L. Nielsen