Μια νέα προσέγγιση στο application runtime
Το Mac.apk διαφοροποιείται από τις παραδοσιακές λύσεις όπως το BlueStacks ή το Android Studio Emulator, καθώς δεν επιχειρεί να «τρέξει» ένα ολόκληρο λειτουργικό σύστημα στο παρασκήνιο. Αντίθετα, επανασχεδιάζει το Android framework ώστε να λειτουργεί ως native layer πάνω στο macOS. Αυτό σημαίνει ότι οι κλήσεις συστήματος και τα γραφικά (μέσω ANGLE και MoltenVK) μεταφράζονται απευθείας σε native κλήσεις του macOS, εκμεταλλευόμενες πλήρως την ισχύ των Apple Silicon επεξεργαστών.
Τεχνική υλοποίηση και Bionic shim
Η καρδιά του εγχειρήματος βρίσκεται στο Bionic shim και στον recompiler για ARM32, τα οποία επιτρέπουν στο δυαδικό κώδικα των εφαρμογών Android να επικοινωνεί με το macOS kernel. Αντί για interpretation, το σύστημα εκτελεί τον κώδικα σε native ταχύτητα, ενώ η διαχείριση των πόρων γίνεται μέσω του native runtime. Η διαδικασία «προετοιμασίας» κατά το πρώτο launch είναι απαραίτητη για τη μετατροπή των πόρων του APK σε μορφή που μπορεί να διαχειριστεί το macOS, εξασφαλίζοντας ταχύτητα στις επόμενες εκτελέσεις.
Ασφάλεια και περιορισμοί
Είναι κρίσιμο να κατανοήσουμε ότι η απουσία virtualization συνεπάγεται και την απουσία του παραδοσιακού Android sandbox. Μια εφαρμογή που εκτελείται μέσω του Mac.apk έχει πρόσβαση στο σύστημα αρχείων του χρήστη με τα δικαιώματα του τρέχοντος χρήστη macOS. Συνεπώς, η ασφάλεια βασίζεται αποκλειστικά στην εμπιστοσύνη προς την πηγή του APK, καθώς δεν υπάρχει το επίπεδο απομόνωσης που παρέχει ένα τυπικό smartphone.