원문 캡처 · github.com
원문 캡처 · github.com

Mac.apk는 애플 실리콘 맥에서 안드로이드 앱을 에뮬레이터나 가상 머신 없이 실행하는 오픈소스 프로젝트다. 실행한 앱은 일반 macOS 프로세스로 작동하며, 독에 표시되고 각자 창을 갖는다. 현재 알파 단계라 앱마다 호환성이 다르며, macOS 26.4 이상을 실행하는 애플 실리콘 맥에서 사용할 수 있다.

실행 방식과 호환성

Mac.apk는 macOS 위에서 안드로이드 앱 실행 환경을 직접 구현한다. 앱은 맥의 GPU를 통해 화면을 그리고 CPU에서 기본 속도로 실행된다고 프로젝트는 설명한다. 독에 아이콘이 나타나고, 신호등 버튼 옆에 뒤로 가기 버튼이 있는 창으로 열린다. 창 크기를 조정하거나 회전할 수 있으며, 맥의 라이트 모드와 다크 모드 설정도 따른다.

안드로이드를 백그라운드에서 부팅하는 에뮬레이터나 가상 머신은 사용하지 않는다. 그 아래에서 리눅스 커널을 실행하지 않으며, 명령어를 하나씩 해석하는 방식도 아니라고 프로젝트는 밝힌다. 작동 방식 설명과 프로젝트 위키에서 자세한 내용을 볼 수 있다.

Mac.apk는 활발히 개발 중인 알파 소프트웨어다. 일부 앱은 원활히 실행되고, 일부는 부분적으로 작동하며, 아직 실행되지 않는 앱도 있다. 프로젝트는 현재 버전이 사용할 수 있을 만큼 안정적이라고 설명하지만, 앱별 호환성은 직접 시험한 앱 목록에서 확인해야 한다. 현재 릴리스의 문제는 알려진 문제 목록에서 확인할 수 있다.

설치와 사용

필요한 운영체제는 macOS 26.4(Tahoe) 이상이다. Apple Silicon을 탑재한 맥이면 사용할 수 있으며 MacBook Neo도 포함된다. 인텔 맥은 지원하지 않는다. Mac.apk 자체는 약 280MB이고, 설치한 앱마다 APK 파일 크기의 약 1.5~3배에 해당하는 디스크 공간이 필요하다. macOS 27은 v1.0.1702부터 작동한다.

시작하려면 최신 릴리스에서 디스크 이미지를 내려받아 Mac.apk를 응용 프로그램 폴더로 옮긴다. 앱은 애플 서명과 공증을 거쳐 일반적으로 열 수 있다. Mac.apk를 실행하고 왼쪽 위의 Runtime: 옆에서 Install을 누른다. 다음으로 톱니바퀴 모양 설정을 열어 File types를 찾고 Make Default를 누른 뒤, macOS 확인 요청을 승인한다. 이후 .apk, .apkm, .xapk, .apks, .apkx 파일을 두 번 클릭하거나 Mac.apk 창에 끌어다 놓으면 된다.

앱을 처음 실행할 때는 Mac.apk가 준비 작업을 하므로 큰 앱의 경우 최대 1분이 걸릴 수 있다. 이후 실행은 빠르다. 설치와 업데이트, 앱 스토어 이용 방법은 설치 안내와 앱 스토어 안내에서 확인할 수 있다. 앱 설치 방법과 관리 방법은 앱 설치 안내, 설치 방식 설명, 앱 관리 안내에 정리돼 있다.

안드로이드 앱의 저장 데이터는 해당 앱의 .app 안에 있다. 앱을 휴지통으로 옮기면 저장 데이터도 삭제되므로, 삭제할 때는 Mac.apk의 제어판에서 앱을 제거해야 한다. 입력과 조작은 컨트롤 안내, 창과 화면 설정은 창 및 모양 안내, 파일과 개인정보 설정은 파일 및 개인정보 안내에서 볼 수 있다. Google 계정과 Play 서비스, 고급 설정과 개발자 메뉴에 관한 문서도 각각 계정 및 Play 서비스, 플래그 안내, 플래그 참조, 개발자 메뉴에 마련돼 있다.

보안과 문제 신고

Mac.apk는 불특정 안드로이드 앱을 검증하거나 보증하지 않는다. 프로젝트 운영사 Voltare는 제3자 APK를 시험하거나 감사할 수 없다고 밝히며, 사용자가 불러오는 앱에 대한 책임은 사용자에게 있다고 설명한다. 신뢰하는 출처의 APK만 설치해야 한다. Mac.apk에서 실행되는 앱은 일반 네이티브 코드로 작동하고 macOS 사용자 계정의 권한을 사용한다. 휴대전화의 앱처럼 격리하는 샌드박스가 없으므로, 실행 중인 다른 맥 앱과 마찬가지로 파일을 읽고 쓸 수 있다. 내려받아 직접 실행하는 프로그램과 똑같이 취급해야 한다.

문제를 신고할 때는 Mac.apk 버전, macOS 버전, 문제가 발생한 앱과 앱을 받은 곳, 발생한 현상, ~/Library/Logs/macapk/에 있는 앱 로그를 함께 제출한다. 로그는 공개하기 전에 내용을 확인해야 한다. 문제 신고 안내를 참고해 이메일로 보내거나 이슈를 등록할 수 있다.

소스 코드와 라이선스

저장소에는 안드로이드 프레임워크 재구현, 네이티브 런타임, arm64 로더와 Bionic 호환 계층, ARM32 재컴파일러, macOS 앱 등 Mac.apk를 구성하는 코드가 들어 있다. 빌드는 BUILDING.md, 수정 사항 제출은 CONTRIBUTING.md에서 안내한다. 코드뿐 아니라 앱 관련 보고도 프로젝트에 도움이 된다고 설명한다.

Mac.apk는 광고와 앱 내 구매를 제공하지 않도록 설계됐다. Mac.apk에서 실행되는 앱의 게시자가 제휴를 논의하거나 앱 실행을 원하지 않는 경우, 프로젝트에 이메일로 연락할 수 있다. 프로젝트는 AGPL v3.0 오픈소스 라이선스로 제공되며, AGPL 조건 없이 제품에 포함하거나 제공하려는 기업을 위한 상용 라이선스도 있다. 공식 앱은 무료다. 세부 사항은 상용 라이선스 안내에서 확인할 수 있다. Mac.apk 이름과 로고는 별도로 상표 보호를 받으며, 관련 내용은 상표 안내에 있다.

Mac.apk는 어떤 종류의 보증도 없이 제공된다. 앱을 통해 실행되는 코드로 인한 손해, 데이터 손실, 악성코드, 보안 사고, 저작권 분쟁 등 결과에 대해 Voltare는 책임지지 않는다고 고지한다. 프로젝트에는 ANGLE, MoltenVK와 Vulkan 로더, Capstone, libpng, libvpx, stb_vorbis, Bouncy Castle, OpenJDK 기반 JRE와 FreeType·HarfBuzz·GLib 등 글꼴·이미지 처리 라이브러리, AOSP 소스에서 빌드한 안드로이드 플랫폼 리소스가 포함된다. 구성 요소마다 자체 라이선스를 적용하며, 전체 고지는 THIRD_PARTY_NOTICES.txt에 있다. 앱 내부에도 Contents/Resources/THIRD_PARTY_NOTICES.txt로 제공된다.

GLib와 GNU gettext의 libintl은 LGPL을 따른다. 각 릴리스에는 해당 버전의 업스트림 소스, 패치, 빌드 절차를 포함한 전체 소스가 첨부되며, 수정 빌드 방법은 LGPL-SOURCE-README.txt에 설명돼 있다. 소스는 릴리스 페이지에서 받을 수 있다.