GitHub - nnnlog/phone-link: Your Android phone, on your Mac. Connects through Microsoft's Link to Windows app on your phone. Written by Rust.

GitHub

4 min read Original article ↗

Phone Link app icon

Phone Link for macOS

Your Android phone, on your Mac.

The Phone Link window with the notification list, and its Settings window

Connects through Microsoft's Link to Windows app on your phone.

Phone Link for macOS is an independent project and is neither affiliated with, nor authorized, sponsored, or approved by, Microsoft Corporation.

Features

  • See your phone's notifications on your Mac and reply to them. You choose which apps can send them.
  • Read and send SMS, MMS and RCS messages.
  • See your phone's recent calls, and place, answer, decline and end calls from your Mac over Bluetooth. The call itself stays on your phone: you talk on the phone or a headset connected to it. Turn it on in Settings › Calls.
  • Browse your phone's contacts and write to them.
  • Browse recent photos.
  • Mirror your phone's screen, or one app, in a window.
  • Use your phone's camera as a webcam.
  • Open your phone's storage in Finder.
  • Send files both ways. Files from your phone go to Downloads › Mobile Devices.
  • Copy text or an image on one device and paste it on the other.
  • Pause or skip what your phone is playing.
  • See battery and signal, set Do Not Disturb or the ringer, ring your phone, or join its hotspot from the menu bar.
  • Let your phone lock, sleep, restart or shut down your Mac. To stop this, turn off Allow the phone to control this Mac in Settings.

More screenshots, including Settings, are in docs/screenshots.md.

Differences from Windows

  • You sign in to your Microsoft account in the app's own window.
  • Your phone can't wake your Mac or start a connection to it.
  • Calls you place or answer on your Mac stay on your phone. You talk and listen on the phone, not through the Mac's microphone and speakers, because macOS gives apps no voice link to a phone over Bluetooth. So there is no mute, hold, keypad or moving a call to the Mac.
  • Calls reach your Mac only while Phone Link is open.

Install

You need macOS 14 or later and an Android phone with Link to Windows.

Get PhoneLink-<version>.dmg from Releases, open it and drag Phone Link into Applications. Open the app, sign in with your Microsoft account and pick your phone, or scan the QR code to pair a new one.

The app checks for updates once a day. To change that or get beta versions, go to Settings › General › Updates.

Signing out deletes the messages, photos, contacts and notifications kept on your Mac. For a bug report, save the log from Settings › Advanced › Log. Personal details in the log are redacted.

Build from source

You need Xcode 26 or later, Rust, just and python3.

git clone https://github.com/nnnlog/phone-link.git
cd phone-link
just dmg

This builds gui/build/PhoneLink-<version>.dmg. Run just to list the other recipes.

To sign with your own team, set it in gui/Signing.local.xcconfig as gui/Signing.xcconfig describes. Without a team the app is signed ad-hoc, and macOS asks for keychain access again after every build.

The camera requires a paid Apple Developer account and a provisioning profile with the System Extension capability. Everything else works without it.

Builds for other Macs need a team with Developer ID certificates: just distribute signs one, and just distribute-notarized also notarizes it.

Development

just check runs the lints and tests, all of which run offline.

Directory Contents
engine/ The Rust core and the phonelink command-line tool
gui/ The SwiftUI app

Disclaimer

This software is provided "as is", without warranty of any kind, and you use it at your own risk. The authors are not liable for any damages arising from its use, including any action Microsoft takes on your account or devices. See LICENSE for the full terms.

License

Distributed under the MIT License. See LICENSE for more information.

Microsoft, Link to Windows and Windows are trademarks of the Microsoft group of companies. All other trademarks are the property of their respective owners.