- Use apps from your Android device on your PC
- How do I interact with apps?
- How do I know I’m using the multiple apps experience?
- How do I pin Android apps into Windows?
- How do I remove pinned Android apps from my Windows taskbar or Start menu?
- Are the apps from my Android device now installed on my PC?
- Can I access Android apps without linking my device?
- Can I open multiple apps at the same time?
- Как работают Android-приложения в Windows 11? Разбор
- Эмуляторы
- Транслятор
- Intel Bridge
- Будущее Windows
- Выводы
Use apps from your Android device on your PC
With Your Phone apps, you can instantly access the Android apps installed on your mobile device right on your PC. Using a Wi-Fi connection, Apps allows you to browse, play, order, chat, and more – all while using your PC’s larger screen and keyboard. You can add your Android apps as favorites on your PC, pin them to your Start menu and taskbar, and open them in separate windows to use side-by-side with apps on your PC – helping you stay productive.
Note: For the best experience, we recommend making sure your Android device and PC are on the same Wi-Fi network and band. Some Wi-Fi networks offer different connection bands, like a 5 GHz or 2.4 GHz band. Make sure both your devices are connected to the same one. Learn more about how to do that in our Wi-Fi troubleshooting help.
How do I interact with apps?
You can use your PC’s mouse, trackpad, keyboard, pen or touch-enabled screen to open, type, scroll, and interact with apps. A few tips for using your mouse and keyboard:
Single click will behave the same as any single touch/tap interaction
Right click anywhere on your phone screen to navigate to the previous page
Click and hold will behave the same as a tap/hold interaction
Click and hold and drag to select content
Mouse scroll to move between pages vertically or horizontally
Some games and apps might not work with a mouse or keyboard. You’ll need to use a touch-enabled PC to interact with them.
If you’re encountering issues using Apps, our troubleshooting tips may help.
How do I know I’m using the multiple apps experience?
The requirements for using multiple apps are:
A PC running the Windows 10 May 2020 Update or later. For best performance, we recommend having at least 8GB of RAM.
An Android device running Android 11.0.
On your Android device, you need Link to Windows version 2.1.05.6 or higher, or Your Phone Companion version 1.20104.15.0 or higher.
Your Phone versions 1.20104.20.0 or higher.
How do I pin Android apps into Windows?
You can pin your Android apps to the Windows Start menu, taskbar, or add it to Your Phone app favorites.
To pin an app on your PC:
Open the Your Phone app
Right click on the app icon you want to pin or add to your favorites
How do I remove pinned Android apps from my Windows taskbar or Start menu?
If you’ve pinned an app to your taskbar, just right-click the app icon and select Unpin from taskbar.
If you’ve added an app to your Windows start menu, you’ll need to uninstall the app from your apps list. Go to Windows Settings > Apps & features, search for your app in the list. Select it, then select Uninstall.
Are the apps from my Android device now installed on my PC?
No, apps you open will be running from your Android device. The Your Phone app is mirroring apps from your Android device to your PC, meaning you’ll see the same thing on your PC that’s being displayed on your Android device.
Can I access Android apps without linking my device?
No, you need to connect your Android device to your PC via the Your Phone app in order to use this experience. Learn more about how to set up Apps here.
Can I open multiple apps at the same time?
If you have Android 11 on your Android device and one of select Samsung devices, yes. For most other Android devices, you can only open one Android app at a time.
Источник
Как работают Android-приложения в Windows 11? Разбор
Мы все очень ждали презентации Windows 11, но как-то нам ее подпортили. Незадолго до презентации слили рабочий билд и поэтому во время ивента ничего по-настоящему нового мы не увидели. Кроме одной вещи: Android-приложения на винде!
Вот это было действительно неожиданно. И мы даже успели немного порадоваться, но потом сразу возникли вопросы. А зачем это нужно и как это вообще будет работать?
Ведь не так давно Microsoft сильно облажались со своей Windows на архитектуре ARM, в которой очень плохо работали x86-приложения. А если у них ничего не получилось тогда, то по какой причине получится сделать фактически тоже самое сейчас, но только наоборот?
Разбираясь в этих вопросах мы буквально прозрели. И поняли, что на самом деле у Microsoft очень далеко идущие планы.
Поэтому сегодня мы узнаем как работает Rosetta от Microsoft, а заодно разберемся, чем эмулятор отличается от транслятора? Узнаем, как Windows стал на Линуксом? И поразмышляем о том, как Microsoft планируют завоевать мир?
Эмуляторы
Начнем с небольшой теоретической части. Программы общаются с процессором при помощи определенного набора инструкций. И для каждой архитектуры этот набор инструкций разный. Поэтому для того, чтобы запустить приложение, написанное под архитектуру ARM на процессоре Intel с архитектурой x86 надо как-то пояснить процессору, что от него хочет чужеродная программа.
Сделать это можно разными способами. И один из самых распространённых — эмуляция.
Например, эмуляторов Android под Windows есть огромное множество. Но в чём же тогда проблема и зачем придумывать что-то еще?
Дело в том, что эмуляторы — неэффективны. По большому счету, эмулятор — это программа, которая прикидывается железом. То есть эмулятор — это софт, который пытается имитировать аппаратную часть платформы.
Программа, засунутая в эмулятор, даже «не понимает», что сейчас она находится в чужеродной среде. Она как Нео внутри «Матрицы». Вроде вокруг реальный мир, но иногда закрадываются сомнения. Потому что-то там подлагивает, подглючивает, ложки гнутся. Ну вы понимаете. А происходит это потому, что эмуляция несёт огромные накладные расходы.
Представьте, чтобы софт 100% правильно работал вам нужно эмулировать целый процессор и поэтому эмуляторы работают медленно.
И ладно, если речь идет про какую-нибудь простенькую восьмибитную консоль типа Dendy. Такие эмуляторы не смотря на тотальную неэффективность, будут работать быстро даже на смартфоне времен Windows Mobile. Но вот эмулировать какой-нибудь процессор Intel куда сложнее.
Отсюда и тормоза в Windows на ARM. Ведь Microsoft использовал именно эмулятор для запуска x86-приложений. Кстати, эмулятор назывался WOW64, но получилось совсем не WOW, как вы знаете.
Более того, до сих пор в Windows на ARM не поддерживается эмуляция 64-битных приложений, только 32-битных, то есть именно x86, а не x64, что еще сильнее усугубляет ситуацию. Но этому есть объяснение.
Эмулятор WOW64 изначально был придуман для запуска 32-битных приложений на 64-битной Windows, то есть под важную задачу Microsoft даже эмулятор новый не сделали, а скорее всего просто модифицировали старый.
Но в прошлом году Microsoft обещали, что поддержка 64-битных приложений появится, и очень скоро. И возможно она будет реализована совсем по-другому.
Как, спросите вы? Давайте для примера вспомним как это сделал Apple при переходе с процессоров Intel на свои собственные чипы на архитектуре ARM. При помощи невероятной штуки под названием Rosetta 2.
Ведь там на ARM’е каким-то чудесным образом запускаются x86-приложения практически без потери производительности.
Транслятор
Что такое Rosetta 2? По научному, — это двоичный транслятор, то есть переводчик. Rosetta просто переводит набор инструкций одной архитектуры в другую и всё.
Но чем же это лучше эмуляции? Дело в том, что эмуляция всегда происходит в реальном времени. А Rosetta переводит приложение заранее во время его установки или при первом запуске.
Поэтому когда пользователь открывает приложения он уже работает с нативным кодом, который исполняется без каких-либо дополнительных издержек. И в итоге все работает почти также быстро, как на родном железе!
Но, естественно, всё не так радужно! Иначе никто бы не собирал разные версии приложений под разные архитектуры. У трансляторов есть серьёзные недостатки.
Во-первых, перевести весь исходный код, исполняемый для целевой архитектуры — это весьма непростая задача, а в большинстве случаев просто невозможная. Некоторые части исполняемого кода доступны лишь во время использования приложения. Поэтому такие части транслируются динамически, «прямо на лету».
И этот процесс называется Just In Time компиляцией. Или JIT-компиляцией.
Естественно, это накладный процесс, но даже его можно оптимизировать. Результирующую последовательность динамического кода можно кешировать. А к фрагментам кода можно применить агрессивную оптимизацию. Поэтому в некоторых случаях, переведенный под другую архитектуру, но при этом оптимизированный код может выполняться даже быстрее оригинального.
И этот эффект я сам постоянно наблюдаю на новых Mac. Например, неадаптированный Блендер, через Rosetta работал быстрее, чем нативно на моем MacBook Pro 16. Но и за это приходится платить. Как думаете чем? Вашим SSD-диском. Переведенный код занимает много места, а динамическое кэширование изнашивает ресурс SSD. В особенности, такой эффект наблюдается на тяжеловесных программах, которые еще не пересобрали под ARM. Поэтому, приходится выбирать либо быстрая работа, либо долгоживущий SSD.
Intel Bridge
Но почему мы так долго говорим про Apple, если мы тут Windows 11 обсуждаем?
Дело в том, что для запуска Android-приложений в новой Windows, Microsoft решили сделать, примерно тоже самое, что сделали купертиновцы.
Вместе с Intel они разработали технологию Intel Bridge, которую они сами называют пост-компилятор. Но, по сути, это такой же двоичный транслятор.
Microsoft описывает эту технологию так:
«Создается нативное прокси-приложение которое, выступает мостиком между моделью приложения Android и моделью Windows приложения».
Иными словами, как и с Rosetta. Приложение будет переведено в нативный код еще на этапе установки. А недоступные фрагменты будут транслироваться на лету.
А с учетом того, что Android-приложения в своей массе достаточно простые почти не возникает сомнений, что с переводом будет всё в порядке.
В случае Windows, трансляция кода с x86 на ARM — это не основная сложность. Ведь тут еще и несовместимость на уровне ОС.
Android и Windows — это совершенно разные системы. Android основан на модифицированном ядре Linux, а в будущем планирует перейти на чистое ядро Linux. А Windows — это просто Windows. С Linux у Windows нет ничего общего. Так каким же образом тогда будут запускаться Android-приложения?
И вот тут неожиданный момент. Оказывается, еще в 2016 году Microsoft представили подсистему Windows для Linux, Windows Subsystem for Linux или WSL — Windows subsystem for Linux.
Это была специальная подсистема которая позволяла запускать Linux приложения в среде Windows. Система работала хорошо, но медленно, так как она работала поверх ядра Windows NT.
Запросы системы Linux переводились в запросы, понятные ядру Windows, и только потом отправлялись дальше. Это было долго.
Но в 2019 году анонсировали вторую версию подсистемы WSL 2, в которой ядро Linux работает параллельно ядру Windows, что ускорило работу системы в двадцать раз и фактически сделало Windows наполовину Linux.
g
То есть вы правильно поняли, WSL работает и на Windows 10, просто её нужно ставить отдельно. А вот в Windows 11 подсистема Linux будут встроена из коробки.
Как понимаете, наличие полноценного рабочего ядра Linux позволило Microsoft добиться максимальной совместимости с Android-приложениями.
По описанию Microsoft Android-приложения будут вести себя также как и обычные приложения Windows и этому можно верить:
- Они будут открываться в отдельном окне
- Можно будет закрепить приложение на панели задач
- Будет полноценная поддержка: клавиатуры, мыши, тача и даже Bluetooth-наушников.
- Более того — можно будет перекидываться файлами между Windows и Android-приложениями.
- При этом уже сейчас Android поддерживает сборку универсальных APK, в которую можно запаковать бинарники как для ARM, так и для x86 архитектур? для чего нужно поставить одну галочку при сборке (разработчики исправьте меня в комментах если я не прав). Поэтому в каких-то случаях может Android-приложения даже не надо будет пропускать через транслятор Intel Bridge.
Да и вообще Android нынче уходит от классических APK и переходит на AAB, но в эту тему мы сейчас не будем углубляться.
Тем не менее, к реализации Android-приложений на Windows остаются вопросы.
Во-первых, что будет с поддержкой Google Play Сервисов? Скорее всего её не будет. Поэтому многие приложения, будут работать неполноценно, либо не будут работать вовсе.
И второй вопрос. А зачем это вообще всё надо? Ведь мобильными приложением на компе пользоваться просто не удобно.
Допустим, на MacBook я могу поставить массу приложений с iOS, но делать этого не хочется. Да на многих Windows-ноутбуках сенсорные экраны, но все равно.
Тогда зачем была проделана вся эта огромная работа по интеграции Linux в Windows, созданию транслятора Intel Bridge, доработки всей этой штуки под Android-приложения?
Будущее Windows
И тут мы готовы высказать смелое предположение. Нам кажется, что поддержка Android приложений это один из этапов полного отказа от ядра Windows NT и перехода на ядро Linux.
Да, это звучит дико. Но во-первых, не мы одни так думаем. Раньше такую же мысль высказал уважаемый человек, евангелист Open Source Эрик Реймонд.
Смотри сами как всё логично:
В мире почти все ОС основаны либо на Unix (как Mac OS) или Linux (Ubuntu, Android и прочее) и только Windows одна такая особенная сидит на своём ядре Windows NT, с которым куча проблем.
Во-первых, его нужно развивать на, что уходит много денег. А Linux-ядро бесплатное.
Во-вторых, в самом ядре куча уязвимостей, которые постоянно нужно прикрывать заплатками.
В-третьих, у Windows ничего не получилось в мобильном сегменте.
В-четвертых, Microsoft уже потратили много лет и ресурсов на создание подсистемы Linux под Windows.
Поэтому переход на ядро Linux вполне логичный шаг. Смотрите, как это может выглядеть:
Сначала мы все переходим на Windows 11 на архитектуре x86. И потихоньку привыкаем, что на Windows нормально работают Android-приложения.
Параллельно, благодаря стараниям Apple, все пилят софт под ARM архитектуру, отчего выигрывает и Microsoft. Поэтому мы потихоньку начинаем переходить на ARM Windows. На которой Android-приложения чувствует себя вообще как родные.
Постепенно Linux ядро становится основной средой, а Windows второстепенной.
А потом ядро Windows NT выпиливается, и Windows становится графической оболочкой для Linux. Ну а на ядре Windows NT остаются работать только серверы и различное оборудование, где наследие старой Windows никак не искоренить.
Это, конечно самый смелый сценарий. Тем не менее, он вполне возможен.
Но даже если этого не произойдёт. В любом случае поддержка Android-приложений — это очень интересный ход. И для Windows на ARM он точно будет полезен, вспоминая планшеты например!
Выводы
Ну и напоследок про сам Windows 11. Мы немного поигрались с новой Windows и у нас сложилось двоякое отношение.
С одной стороны, Windows 11 — это просто «десятка» с новой графической оболочкой. И это немного разочаровывает. Ведь если откинуть ядро Linux, которое теперь будет идти из коробки. Кроме дизайна под капотом не так многое поменялось, зато с совместимостью драйверов вроде проблем нет. Более того, до старого интерфейса, по-прежнему, очень легко добраться.
Тем не менее новый интерфейс действительно симпатичный и понятный.
В нем множество крутых фич как с меню «Пуск», так и с окнами. Привыкаешь к нему буквально за 10 минут. После чего возвращаться к старому скину совершенно не хочется. Еще раз — получилось красиво и удобно! А значит переход на новую Windows пройдет безболезненно и пользователи в целом останутся довольны. А это уже победа…
А там еще можно вспомнить про новый магазин без комиссии для разработчиков с блэкджеком. Но это уже совсем другая история и другие планы Microsoft по завоеванию мира магазинов приложений и ответ лаунчерам.
Источник