Android studio windows defender

Android Studio is a must-have software solution for Android developers, allowing them to extensively create, test, and debug their applications. However, sometimes Android Studio on the Windows 11 system can be annoying and slow down the development process as Android Studio not working. To resolve this, here is an in-depth guide to help you troubleshoot and repair Android Studio on a PC.

We will look at practical techniques to get your Android Studio up and running smoothly, from checking system requirements to executing various processes like updating JDK, verifying system variables, running Android Studio with administrative privileges, and more. You can fix issues and ensure a smooth development experience with Android Studio on your Windows machine by following these troubleshooting methods.

What are the Requirements for Android Studio?

In some cases, users face some performance-related issues that can make it difficult to use Android Studio at its full potential. Below we have mentioned some minimum and preferred system requirements that your Windows 11 PC must have.

The minimum requirements for running Android Studio are:

  • 64-bit operating system.
  • A minimum screen resolution of 1280 x 800.
  • x86_64 CPU architecture; Intel Core 2 Duo or later; or AMD CPU with Hypervisor capability.
  • 8GB of RAM or higher.

The following are the recommended system requirements for a smoother experience:

  • Operating system: Windows 11 64-bit
  • Processor: Intel Core i5-8400 3.0 GHz or above
  • RAM: 16 GB or more
  • Free storage space: 30 GB of SSD storage
  • 1920 x 1080 screen resolution

Now, that we know about the system requirements, let’s look at some of the major fixes that can help you in case Android Studio is not working fine on your Windows 11 PC:

1. Install the Latest JDK Version

The first step is to ensure that you have the latest version of the Java Development Kit (JDK) installed in your system. Android Studio relies on the JDK to function properly, so having the most up-to-date version on your system is essential for compatibility and performance.

You can check out our guide on how to install Java JDK on Windows 11 for this step. After installing the JDK, configure the Java system environment variables to ensure that Java JDK is working properly.

2. Check Java System Variables

The Java system variables for Android Studio are checked to ensure that the Java Development Kit (JDK) is properly set up and accessible by the IDE. Android Studio compiles, builds and runs Android applications using the JDK.

We verify that Android Studio can discover the JDK installation and its related executables by validating the Java system variables, notably the JAVA_HOME and PATH variables. We suggest you verify the Java system variables on your PC, by following the linked guide.

3. Update Android Studio

Once you are sure that there is no issue with the Java installation and setup, let’s start by updating Android Studio to the latest version. Updates often contain bug fixes, performance improvements, and compatibility enhancements that can resolve various issues.

Here are the steps you can follow to update Android Studio to the latest version:

1. Launch Android Studio on your Windows 11 PC.

2. Once open look for the File option on the top left corner and from there move into File > Settings. Alternatively, you can open Settings in Android Studio by pressing Ctrl + Alt + S on your keyboard.

Locate Settings in Android Studio

3. In the Settings menu, on the left sidebar locate Updates under System Settings.

4. Now, click on Check for Updates and Android Studio will look for the latest updates available.

Locate Updates Menu in Android Studio

5. Once it is done checking Android Studio and Plugin Updates you will see a pop-up if there are any updates available to download.

6. Click on the Update Now button inside the pop-up screen and Android Studion will begin downloading updates in your system.

Updating Android Studio

Once the updates are successfully downloaded and installed, restart the Android Studio before using it again and check if Android Studio is working or not.

4. Run Android Studio as an Administrator

Sometimes, Android Studio may encounter permission-related issues. Running it as an administrator can help overcome these problems.

To do so, press the Windows button on your keyboard and search for Android Studio. When it appears in the search result Right-click on it and select the Run as administrator option.

Run Android Studio as Admin

5. Run Android Studio with Compatibility Mode

Running Android Studio with compatibility mode can be helpful if you’re experiencing compatibility issues between Android Studio and your Windows 11 operating system. Compatibility mode allows the application to run as if it were on an earlier version of Windows, potentially resolving any compatibility-related problems.

Here’s how you can run Android Studio with compatibility mode on Windows 11:

1. Right-click on the Android Studio shortcut on your desktop. After that, click on Show more options from the context menu.

Locate Android Studio on Desktop

2. Now, you will see a long list of options, look for the Properties present at the bottom of all the visible options.

Locate Properties Option

3. After that, click on the “Compatibility tab from the Android Studio Properties windows.

4. Then check the box present next to Run this program in compatibility mode for: and click on OK and last hit the Apply button to save the changes.

Turn on Compatibility Mode for Android Studio

After that, run Android Studio, and it will launch in compatibility mode. This will fix the compatibility issue you are experiencing on Windows 11.

6. Clear Cache and Restart Android Studio

Clearing the cache and restarting Android Studio can often resolve various issues or inconsistencies that may be affecting its performance. If your Android Studio is crashing frequently you can fix it by clearing cache files.

Here’s how you can clear the cache files in Android Studio:

1. Launch Android Studio on your Windows 11 PC and look for the Invalidate caches option under the File menu located in the top left corner.

Locate Cache Menu in Android Studio

2. Check all the boxes under Optional and click on the Invalidate and Restart button.

Confirm cache Clearing Android Studio

Android Studio will close and reopen automatically. During the restart, the cache will be cleared, and the IDE will rebuild the necessary data and configurations. This process may take a few moments.

7. Edit the vmoptions File

The .vmoptions file is a configuration file that allows you to change the RAM allocation and heap size (storage). Tweaking both can help solve issues like crashing or unexpected freezes in Android Studio.

Here are the steps you can follow to edit vmoptions file:

1. First locate vmoptions file on your Windows 11 PC. It can be found in the Android Studio installation directory. The default location is typical – C:\Program Files\Android\Android Studio\bin

2. The vmoptions file is usually named studio64.exe.vmoptions for the 64-bit version of Android Studio.

Locate vmoptions file Android Studio

3. Now, right-click on vmoptions file and open it with any text editor. In our case, we are using Notepad for the same.

Open vmoptions with Text Editor

4. Now, you can change the -Xmx values to increase the RAM allocation. To increase the RAM allocation to 4GB, change –Xmx1280m to -Xmx4096m. Depending on the hardware configurations of your PC, you can increase or decrease the RAM usage by Android Studio. The more memory more smoother the performance.

Changing vmoptions values

5. After you have made the required changes, press Ctrl + S to save the changes.

8. Disable Windows Defender Firewall

The Windows Defender Firewall is a built-in security feature in Windows that helps protect your computer from unauthorized network access and potential threats from the internet. It acts as a barrier between your computer and the outside world, filtering incoming and outgoing network traffic.

However, it can sometimes interfere with Android Studio’s operation. We can temporarily disable the firewall to see whether it is causing the problem.

Follow these steps to disable Windows Defender Firewall:

1. Press the Windows button on your keyboard and search for Settings. Alternatively, you can also press the Win + I button together to launch Windows Settings.

2. In Settings search for Windows Defender Firewall, you can do this by typing this in the search box present on the left side below your profile.

3. Once the search results appear, click on the Windows Defender Firewall settings option.

Search Windows Firewall in Settings

4. A new window will now appear. Here, on the left pane click on the Turn Windows Defender Firewall on or off option.

Turn off Windows Defender Firewall

5. Select the option to disable Windows Defender Firewall under Private and Public network settings, then click the OK button to save the changes.

Turn off Windows Defender Firewall

9. Reinstall Android Studio

If you’re still facing persistent issues with Android Studio and other troubleshooting methods have not resolved the problem, reinstalling it might be a suitable solution. Reinstalling the software can help fix any corrupted or missing files, restoring it to a clean and functional state.

Here’s how you can reinstall Android Studio:

1. Press the Windows button and search for Control Panel. Once it appears in the search result, click on it to launch Control Panel.

Find Control panel Settings in Windows

2. In the Control Panel setting look for Uninstall a Program present just below the Programs option.

Find Uninstall Settings In Control Panel

3. Now, all your installed apps will appear. From here, look for Android Studio and Right – click on it, and then click on Uninstall to begin the uninstallation process.

Uninstall Android Studio

4. Andoird Studio Uninstall wizard will launch. From here, tick the box corresponding to Android User Settings and hit Next.

Android Studio Uninstall Wizard

5. This is the last step, click on the Uninstall button and wait for some time before the Android Studio is completely removed from your PC.

Finalise Android Studio Uninstall

Once we have uninstalled Android Studio, it’s time to download and fresh install it again. We have a detailed guide with simple steps on how to install Android Studio on Windows 11, you can check it out.

Conclusion

Finally, troubleshooting and fixing bugs with Android Studio on Windows 11 is important for uninterrupted Android app development. Verifying JAVA system variables assures appropriate JDK configuration, while running the IDE in compatibility mode can help with compatibility issues. If problems persist, reinstalling Android Studio can bring it back to a clean and functional condition.

By following these guidelines, you can create a stable and productive environment for Android Studio on Windows 11. If you still have any issues while using Android Studio, feel free to tell us in the comments section and we will be happy to help you with the best solution.

  1. Can you use Windows Defender on Android?
  2. Does Windows Defender affect performance?
  3. How do I get Windows Defender exclusion?
  4. Is Windows Defender Av any good?
  5. Does Microsoft Defender for endpoint can protect Android devices?
  6. Why is Windows Defender so slow?
  7. Does Windows Defender cause game lag?
  8. Does Microsoft Defender slow down PC?
  9. Is Microsoft Defender good enough 2021?
  10. Is Windows Defender good enough 2021?
  11. Will Windows Defender detect a Trojan?

Can you use Windows Defender on Android?

Microsoft Defender for Endpoint on Android is available on Google Play now. You can connect to Google Play from Intune to deploy Microsoft Defender for Endpoint app, across Device Administrator and Android Enterprise entrollment modes.

Does Windows Defender affect performance?

Windows Defender aims to keep your PC safe with built-in, real-time protection against viruses, ransomware, spyware, and other security threats. However, Windows Defender’s real-time protection will also dramatically slow file system access and build speed when developing Android apps.

How do I get Windows Defender exclusion?

Go to Start > Settings > Update & Security > Windows Security > Virus & threat protection. Under Virus & threat protection settings, select Manage settings, and then under Exclusions, select Add or remove exclusions. Select Add an exclusion, and then select from files, folders, file types, or process.

Is Windows Defender Av any good?

Windows Defender Review: Quick Expert Summary. Windows Defender comes pre-installed on all PCs, and for a free antivirus, it’s not bad. It’s definitely not the best free antivirus (there are better), but it’s OK if you’re not doing anything important on your Windows machine. That said, it’s still a free antivirus.

Does Microsoft Defender for endpoint can protect Android devices?

Defender for Endpoint on Android supports Android Enterprise enrolled devices. For more information on the enrollment options supported by Intune, see Enrollment Options. Currently, Personally owned devices with work profile and Corporate-owned fully managed user device enrollments are supported for deployment.

Why is Windows Defender so slow?

Another Windows Defender feature that may be responsible for slowing down your system is its Full Scan, which performs a comprehensive check of all files on your computer. … While it is normal for antivirus programs to consume system resources when running a scan, Windows Defender is far greedier than most.

Does Windows Defender cause game lag?

If you’ve been experiencing lag spikes in the past days and you can’t get to the bottom of it , try deactivating Windows Defender real time protection.

Does Microsoft Defender slow down PC?

Windows Defender is one of the most lightweight antivirus there is. It’s impact on system performance is close to nothing. It most definitely won’t slow down your PC.

Is Microsoft Defender good enough 2021?

Overall Security

Even if you don’t have any other antivirus software installed, your Windows 10 PC will start with some basic protection in place. In January 2021, AV-Test (an independent security testing lab), rated Microsoft Defender as a Top Product with a perfect 6.0 score.

Is Windows Defender good enough 2021?

In essence, Windows Defender is good enough for your PC in 2022; however, this was not the case some time ago. Previously the antivirus program was not sophisticated enough to handle modern threats. It also used to crash a lot during updates, which has, unfortunately, giving it a bad reputation even in 2021.

Will Windows Defender detect a Trojan?

Windows Defender comes packed with the Windows 10 update and offers top-notch antimalware protection to keep your device and data safe. Although, Windows Defender is not capable of handling all kinds of viruses, malware, trojan, and other security threats.

Some antivirus software can interfere with the IDE build process, causing builds to run dramatically slower. When you run a build in the IDE, many class files are created on your computer. If your antivirus software has real-time scanning enabled, the antivirus can force the build process to halt each time a file is created while the antivirus scans that file.

If you’re using Windows Defender, the IDE automatically checks whether you have real-time scanning enabled, and whether the scanning is configured to process directories where the IDE writes a lot of files.

The IDE offers you a possibility to exclude those directories from scanning automatically (this feature is available in 2019.2+ IDE versions).

If you prefer to perform the necessary configuration manually, you can do so by following these steps:

Click the Start button
Type “Windows Security”
Click on “Virus and threat protection”
Click on “Manage settings” under “Virus & threat protection settings”
Scroll down if needed, and then click on “Add or remove exclusions”
For every folder shown in the notification, press the + button, select “Folder” from the menu, and select the folder.
If you’re using a different anti-virus product, you still may be impacted by the problem, but there is no possibility to detect or correct this automatically. If you’re experiencing poor build performance, please follow the instructions of your anti-virus product to exclude the following directories from real-time scanning:

The directory of your project
The directory used by IntelliJ IDEA to store settings and caches
The Gradle cache directory (%USERPROFILE%\.gradle)
We also recommend excluding the IDE process from the antivirus to improve startup performance.

Caution: To ensure that your computer is safe from malicious software, you should not completely disable real-time scanning or your antivirus software.

Note: IDE runs powershell.exe process to detect if Windows Defender is active and to exclude the folders from the antivirus. This may trigger suspicious activity detection by some other antivirus tools like TrendMicro. This behavior is by design and the corresponding source code can be found on GitHub. It’s safe to permit running PowerShell from the IDE.

Android Studio 3.5 Virus Checker

Android studio tips: Your anti-virus program might be impacting your build performance.

tags: Report an error  Android Studio  

This is because the computer security guard will scan the Android studio file directory, causing the compilation process to slow down.
Solution: Add the folders prompted by Android studio to the trust area of ​​Trojans to the 360 ​​security guard I used in the picture:

Restart Android studio

Intelligent Recommendation

More Recommendation

4.0, Android Studio configure your build

The Android build system compiles your app resources and source code and packages them into an APK that you can use for testing, deploying, signing, and publishing. Android Studio uses Gradle, an adva…

Android Studio debugs the program on your phone

Article catalog step step Take a millet phone as an example 1. Open the developer model of the mobile phone system, Android system generally hide developer mode, we need to be in mobile phone system i…

Всем доброго времени суток!

Насколько производительно работает Android Studio? Считаете ли Вы, что она работает шустро на Вашем ПК или Mac? Или, иногда, сталкиваетесь с лагами или долгой сборкой? А на крупных проектах?

В любом случае, всем нам хочется получать максимальную производительность от железа и софта. Потому я подготовил перечень пунктов и советов для начинающих и опытных разработчиков, которые помогут Вам комфортно работать с крупными проектами или просто поднять производительность. Так же Вы поймете, нужен ли Вашему оборудованию апгрейд.

Пользователи других популярных IDE, возможно, тоже могут найти для себя кое что полезное.

Мотивация

Android Studio была неповоротливой еще во времена перехода с Eclipse. И уже тогда я начал искать способы оптимизации работы этой IDE. Однако, большинство коллег относилось к этому «никак». Работает. Не всегда быстро. И ладно.

Но вот уже год я работаю в другой компании. Климат другой, разработчикам читают доклады по разным технологиям. На одном из таких докладов мне показалось, что тема данной статьи может быть востребованной. Особенно в рамках проектов повышенной технической сложности.

Поговорив с коллегами и знакомыми разработчиками, мне стало понятно, что даже не каждый «профи» понимает нюансы работы железа, ОС и IDE. Потому здесь я постарался собрать полный ликбез на основе собственного опыта.

DISCLAIMER! Все упомянутые в статье модели и бренды не являются рекламой!

Железо

Вот что сказано о железе на официальном сайте Android Studio в графе System requirements (не считая дискового пространства):

3 GB RAM minimum, 8 GB RAM recommended; plus 1 GB for the Android Emulator
1280x800 minimum screen resolution

Этого достаточно, чтобы студия просто запустилась и работала. О каких либо производительности и комфорте здесь речи не идет.

В этой главе я расскажу о том, какое железо желательно иметь для комфортной работы с крупными проектами и что может стать «бутылочным горлышком» в Вашей системе.

Здесь для нас наиболее критичны 5 параметров:

  • Производительность CPU
  • Количество аппаратных потоков CPU
  • Количество оперативной памяти
  • Скорость произвольного чтения и произвольной записи дисковой подсистемы
  • Скорость мелкоблочного чтения и мелкоблочной записи дисковой подсистемы

Поскольку я чаще работал на конфигурациях на базе продукции Intel, то далее речь пойдет о них. Однако, если у Вас AMD- просто при прочтении делайте для себя поправки на аналогичные технологии «красных». Единственный минус, с которым я сталкивался на AMD, уже был описан на Хабре.

Пара слов о Mac

Существует мнение, что Mac является лучшей машиной для разработки. Чаще так говорят о MacBook Pro.

Лично я считаю это мифом. С приходом технологии NVMe Mac растерял свою «магию». Так что сегодня, даже среди ноутбуков, Mac не является лидером по соотношению цена-качество-производительность. Особенно в контексте разработки под Android Studio.

В остальном для комфортной разработки имеет смысл MacBook Pro 2015 или 2016 года не с U-процессором. Об остальных характеристиках и обслуживании читайте ниже.

Процессор

По производительности процессора- очевидно и понятно. Чем она выше- тем лучше. Единственное, что нужно отметить- при наличии достаточно быстрого накопителя, слабый процессор станет «бутылочным горлышком» в Вашей системе. Особенно критично в случае NVMe-накопителя. Часто, при работе с ним, упор идет именно в мощности CPU.

С потоками всё немного сложнее. Читал о том, что пользователи снижают приоритет студии и ее подпроцессов, чтобы ОС «не зависала» во время сборки. Причина здесь одна- 1-2 аппаратных потока. Этого мало не только для IDE, но и для современной ОС. Единственное «но»- на моей практике были ситуации, когда двухъядерные U-процессоры с Hyper Threading (то есть 2 ядра на 4 потока) нормально работали с относительно мелкими проектами, но на крупных начинались вышеперечисленные проблемы.

Само собой, наличие аппаратной виртуализации обязательно.

Потому рекомендую смотреть в сторону Core i5 HQ Skylake c 4+ потоками и мощнее.

Оперативная память

По поводу стандартов- DDR3 и выше. Тут, думаю, понятно.

Если есть возможность работы в 2х или 4х-канальном режиме и у Вас они не активны- настоятельно рекомендую задействовать, так как можно получить существенную прибавку к отзывчивости IDE. Активируется эта возможность либо в настройках BIOS\UEFI, либо установкой дополнительных модулей оперативной памяти (если у Вас до сих пор один модуль).

Какой нужен объем? Для мелких (действительно мелких) проектов хватает 4ГБ. На проектах крупнее студия способна быстро занять 4ГБ памяти и больше. Добавим сюда эмулятор на HAXM (скажем 2 ГБ) и учтем, что современная ОС (за исключением некоторых дистрибутивов Linux) занимает в памяти около 2ГБ- и вот получается, что 8ГБ уже «впритык».

Это без учета, например, Slack (который занимает в среднем около 500 мб в памяти) и Chrome (там счет идет на гигабайты).

В целом, при 8ГБ оперативной памяти работать быстро и комфортно можно- спасает быстрый накопитель и swap\файл подкачки. Но стоит задуматься об апгрейде.

Потому компания закупает новые, либо предоставляет апгрейд текущих рабочих машин на 12ГБ RAM и более.

SSD

Дисковая подсистема является самым частым «бутылочным горлышком», потому на нее надо обращать внимание в первую очередь.

Работа с Android Studio на HDD в 2018 году сравнима с мучениями- чем больше проект, тем больше фризов Вам обеспечено. Потому, очевидно, использовать только SSD.

Как было упомянуто выше, здесь два критичных параметра:

  • Скорость произвольного чтения и произвольной записи дисковой подсистемы
  • Скорость мелкоблочного чтения и мелкоблочной записи дисковой подсистемы

Чем они выше- тем отзывчивее будет студия, и тем быстрее она будет загружаться и производить сборку.

Обращаю Ваше внимание, что о скоростях линейного чтения\записи речи не идет- для студии это не критично. Потому, при выборе накопителя, нужно смотреть не на его скорость чтения\записи на сайте производителя или магазина, а на количество IOPS (чем больше- тем лучше).

Само собой, здесь не идет речи о Mac, так как там накопитель либо имеет собственный стандарт либо просто распаян на плате. Замена возможна, разве что, на больший объем. Скоростные характеристики здесь поднять вряд ли получится.

NVMe

Если Вашей материнской платой поддерживается технология NVMe — то лучше использовать накопитель с ее поддержкой. Она позволяет получить скорости, сравнимые с SSD на Mac и выше.

При наличии скоростного накопителя, упор идет на шину PCIe и мощности Вашего CPU. Потому, если, например, Ваша материнская плата поддерживает вывод на накопитель PCIe 2.0×4\3.0×2 или у Вас не очень мощный CPU- не стоит покупать очень дорогой накопитель. Смотрите на возможности Вашей системы и толщину Вашего кошелька.

SATA3

Да, SATA3 живее всех живых. И на нем можно быстро работать на студии.

В этом сегменте скоростные накопители более доступны, потому имеет смысл сразу смотреть на топовые решения объемом 120 GB и выше.

Intel Optane

Использовать Android Studio на машине с данным накопителем (если его так можно назвать) мне не приходилось. Если у кого-то есть опыт- пишите в комментарии.

GPU

Тут много говорить не нужно.
Если пишете обычные пользовательские приложения- для самой студии и эмулятора чего-то вроде Intel HD 500 Series хватит за глаза.

Если Вы разрабатываете игры или это- Ваша личная машина, то имеет смысл дискретная графика. Какая- смотрите по Вашим потребностям.

Система охлаждения и троттлинг

Здесь речь не о апгрейде, а о обслуживании.

Большинству из нас известно такое явление, как троттлинг. Его реализацию применяют для защиты от перегрева.

Само собой, троттлинг ведет к понижению производительности. Не всегда заметному. В одних случаях работа Turbo Boost снижается до минимальных значений, в других начинается падение максимальных частот процессора. Причина- недостаточно эффективная работа системы охлаждения. Так же важно понимать, что большинство стресс-тестов (вроде AIDA) диагностируют штатную работу Turbo Boost как троттлинг.

В случае десктопных PC всё давно есть в сети. В случае мобильных систем, основанных на тепловых трубках, много противоречивой информации. Сюда относятся большинство ноутбуков, неттопов, MacBook и iMac. Далее речь пойдет именно о них.

На современных мощных мобильных CPU 80-90 градусов на кристалле под нагрузкой- это норма. При этом SOC с этими CPU имеют конструкцию с открытым кристаллом, от того площадь теплопередачи небольшая. Вся эта куча тепла отводится вот этим посмешищем подобной конструкцией с небольшим закрытым жидкостным контуром.

Современная мобильная система охлаждения

Нужно понимать, что такие системы охлаждения испытывают бОльшие нагрузки и нуждаются в более частом обслуживании. Особенно в случае ноутбуков и MacBook- при переноске от вибраций слой засохшей термопасты разрушается быстрее. А несвоевременное обслуживание чревато не только потерей производительности, но и протечкой термотрубок и «отвалами» кристаллов.

Обслуживание заключается в замене термопасты и чистке радиатора раз в полгода-год после окончания гарантийного срока. Во всяком случае, у нас так и поступают.

Из-за маленькой площади кристалла имеет смысл использовать диэлектрическую термопасту с высокой теплопроводностью (такая стоит в районе 800-1000 р за грамм). Ни в коем случае не используйте жидкий металл! Иначе отделить кристалл от пластины Вы, скорее всего, уже не сможете!

Если у Вас не хватает навыков для данной процедуры- лучше обратитесь в сервис.

Аппаратные настройки

В этой главе речь пойдет о функциях и настройках оборудования. Многое, скорее всего, Вам уже знакомо.

Intel Hyper Threading

Это технология Intel, которая разделяет аппаратный поток ядра на два «виртуальных». Благодаря ей система видит 4-ядерный процессор как 8-ядерный. Такой подход позволяет эффективно утилизировать процессорные мощности. Аналогичная технология есть и у AMD.

Часто сталкиваюсь с тем, что у многих разработчиков эта функция отключена и они вообще о ней не знают. Однако, ее включение может повысить отзывчивость студии и производительность сборки. В отдельных случаях на 10-15%.

Включается она в настройках BIOS\UEFI Вашей материнской платы или ноутбука. Называется пункт аналогичным или похожим образом. Если Вы еще не знали о этой технологии- то имеет смысл проверить ее наличие и включить если этого не было сделано.

Intel Turbo Boost

Еще одна широко известная технология. По факту является автоматическим кратковременным разгоном CPU и дает существенный прирост при сборке. И, в то же время, имеет свойство раскалять мобильные процессоры до температур, не далеких от Tjunction.

Потому, если эта технология ранее была отключена, перед включением желательно проверить состояние системы охлаждения и, возможно, выполнить ее обслуживание, о чем было написано в предыдущей главе.

Включаться она может как BIOS\UEFI, так и в настройках ОС.

Intel Rapid Storage

Поддержка этой технологии мат.платой крайне рекомендуется. Более подробно можно почитать здесь.

Могу порекомендовать только своевременно обновлять драйверы для этой технологии до самой свежей версии с официального сайта Intel. Даже если производитель Вашего ноутбука поставляет Вам драйверы более старых версий.

В моем конкретном случае, обновление с версии драйвера от производителя до актуальной, повысило скорость линейной записи примерно на 30%, а произвольной- на 15%.

Как устанавливать и обновлять драйверы IRST на Linux- я не знаю (и вообще, возможно ли это?). Если кто знает- пишите в комментарии, я с удовольствием дополню статью.

SSD Secure Erase

Производительность недорогих моделей SSD может со временем падать. Это не всегда происходит из-за «деградации» накопителя. Возможно, в Вашей модели TRIM реализован не очень эффективно.

Secure Erase заставит контроллер пометить все ячейки памяти пустыми, что, теоретически, должно вернуть производительность SSD к заводскому состоянию. И, также, сотрет все Ваши данные! Будьте аккуратны, делайте бекапы!

Осуществить процедуру можно с помощью фирменной утилиты от производителя. В случае, если Ваш диск- системный, то Вам понадобится флешка, которую утилита сделает загрузочной. Далее следуйте инструкциям.

На одном из этапов, возможно, накопитель придется переподключить прямо во время работы. Потому, в случае M.2 очень желательно наличие переходника.

Использовать сторонние утилиты для этой операции крайне не рекомендуется.

Впрочем, если Ваш SSD существенно потерял в скорости за время менее года- лучше поменять накопитель на другую модель.

Аппаратная виртуализация

Эта технология необходима для быстрой работы x86-эмулятора. Если у Вас она отключена- включите ее в настройках BIOS\UEFI. У разных вендоров могут быть разные названия настроек.

Да, мы все знаем про Genymotion и BlueStacks, которые прекрасно обходятся без аппаратной виртуализации. Однако, в образах этих эмуляторов некоторые или многие реализации Android API сильно изменены с целью увеличения скорости работы. Это может провоцировать поведение, которое Вы никогда не встретите на реальном устройстве. Или при отладке Вы можете упустить пару багов. Потому наличие рабочего и шустрого AVD крайне желательно.

ОС и Сторонний софт

В этой главе речь пойдет о возможной настройке ОС и установке стороннего софта с целью увеличения производительности.

Индексация

Здесь речь пойдет о поиске Windows и Spotlight на Mac OS. Эти механизмы могут отнимать до 15% мощностей CPU при сборке поскольку пытаются индексировать всё, что генерируется в /build.

Само собой, из под индексации необходимо исключить все директории, с которыми работает студия:

  • Директория SDK
  • Директория студии
  • Директория проектов (крайне рекомендуется)
  • ~/.gradle
  • ~/.android
  • ~/Android StudioX.X
  • ~/lldb
  • Директория кеша Kotlin

Антивирус

Знаю, не у всех в среде разработки принято использовать антивирус. Но многие его используют. В том числе, иногда, на Linux и Mac OS. И его использование совершенно оправдано.

Даже если у Вас Windows 10 и нет антивируса- его функции выполняет Windows Defender.

При сборке антивирус может отнимать очень существенную долю CPU. Потому все директории, перечисленные в графе «Индексация», следует добавить в исключения антивируса. Также, в исключения имеет смысл добавить имена процессов самой студии и JetBrains JVM.

В зависимости от реализации антивируса, потребление CPU им во время сборки снизится существенно, либо он вообще перестанет потреблять мощности CPU. А время самой сборки заметно уменьшится.

Шифрование диска или домашней директории

Эти функции присутствуют на всех популярных ОС или реализуются сторонним софтом. Само собой, работа студии в шифрованном файловом пространстве может требовать бОльших мощностей CPU. Насколько- зависит от реализации шифрования. Потому рекомендуется такие функции отключать либо совсем, либо, если это возможно, для перечисленных в графе «Индексация» директорий.

А работает ли TRIM?

TRIM может быть реализован как аппаратно, так и программно. В последнем случае обязанность вызова TRIM ложится на ОС. И, по разными причинам, периодический вызов может отключаться, что приводит к падению скорости накопителя.

Проверить работоспособность и возобновить вызовы TRIM можно с помощью специализированных утилит. Рекомендуется использовать утилиты от производителя накопителя.

RAMDisk

Что такое RAMDisk большинству давно известно. Но насколько он эффективен в работе со студией?

По своему опыту скажу- не очень. Разве что Вы перенесете в RAMDisk сам проект, SDK, студию и так далее. Если у вас хватает RAM…

С простым переносом проекта весом в более чем 500 мб (цифра указана с build-кэшем), у меня не получалось добиться прироста более 15%. По всей видимости, тормозятся вызовы к SDK и системным API. В итоге такой прирост обходится достаточно дорого.

Следующий способ существенно эффективнее и обходится куда дешевле.

Кэширование запросов к накопителю

Нечто похожее реализовано в Mac OS. Однако, в сравнении с перечисленными ниже технологиями- не настолько эффективно.

К сожалению, мне известны только две реализации, и обе жестко завязаны на продукцию производителей. Речь о Samsung R.A.P.I.D. и PlexTurbo.

Обе технологии работают по схожим принципам (описываю так, как понял сам):

  • Если был запрос на чтение небольших объемов, то они откладываются в RAM и при повторном чтении берутся уже оттуда. Стандартный RAM cache.
  • Если был запрос на запись небольших данных- они откладываются в RAM-кэш. Далее запросы на запись сравниваются с кэшем. Если Вы повторно пишете одни и те же данные по одним и тем же путям- зачем их повторно записывать аппаратно? И SSD так дольше проживет.

Единственная разница- R.A.P.I.D. использует свободный остаток оперативной памяти в качестве кэша. Меньше остаток- меньше размер кэша, меньше ускорения. PlexTurbo позволяет ограничить максимальный объем кэша и подгружать его с жесткого диска при старте системы.

В случае использовании на SATA 3 можно получить прирост до 50%. При использовании NVMe-накопителя- меньше, но, часто, тоже существенный.

В данный момент у меня в работе Samsung 860 EVO SATA 3. Под спойлером бенчмарки с i7 6700HQ и отключенным Turbo Boost.

860 EVO до включения R.A.P.I.D. и два прогона после

R.A.P.I.D. выключен

Первый прогон

Второй прогон

Наглядно видно, как система начинает кэшировать данные на первом прогоне. Итоговый результат существенно выше показателей SATA 3. Однако, эффективность работы данной технологии больше зависит от мощностей CPU. Что наглядно видно при включении Turbo Boost.

860 EVO + R.A.P.I.D. + Turbo Boost

Синтетика- это, конечно, хорошо. Но это всё работает при чтении\записи повторяющихся мелких файлов. И это- самые частые операции при работе Android Studio.

У меня сейчас в работе проект суммарным с кэшем весом более 700 MB, состоящий из 10 модулей. Один из модулей- собственный кодогенератор на базе kapt с весьма тяжелой логикой. Два NDK-модуля, один из которых ссылается на Boost по внешнему пути. Остальное- тонны Kotlin-кода.

Если сравнить время полного ребилда данного проекта, то результаты следующие:

  • С выключенным R.A.P.I.D. время составило 1m 47s 633ms. Терпимо.
  • С включенным R.A.P.I.D. первый ребилд прошел за 1m 41s 633ms. Укладывается в погрешность.
  • С включенным R.A.P.I.D. второй ребилд прошел за 1m 7s 132m. Вот и прирост. Чуть больше 37%, что существенно. Дальнейшие ребилды показывают еще меньшее время но уже с разницей не более 3-5 секунд от последнего замера. Что несущественно.

В менее длительных процессах прирост в студии заметен сразу.

Как итог можно рекомендовать эти технологии и накопители как хороший способ повысить производительность. По стабильности нареканий не возникало.

Android Studio

Многие из этих советов взяты отсюда и дополнены моими комментариями. Остальные- результат моих изысканий и опыта.

Обновления

Совет хоть и банальный, но всегда актуальный. Если у Вас не legacy-проект, то, по-возможности, старайтесь держать версии студии и сопутствующих компонентов (таких как Gradle, Android Plugin, Kotlin Plugin) в актуальном состоянии. Google и JetBrains делают много работы в плане оптимизации скорости работы и сборки в новых версиях.

Иногда, конечно, случаются конфузы, когда новые версии перестают вести себя предсказуемо и провоцируют ошибки. Потому у нас есть регламент, как поступать в таких ситуациях.

В некоторых случаях нужно выполнить File->invalidate caches and restart после отката. Если обновляете саму студию- лучше сделать бекап директории студии и директории настроек. Это актуально в том случае, если Ваш проект содержит какие-либо костыли нестандартные подходы, чувствительные к механизмам сборки или самой студии.

Структура проекта

При возможности, старайтесь выносить большие части Вашего проекта, которые общаются с основным кодом посредством API, в отдельные library-модули. Это позволит задействовать функцию инкрементальной сборки. Она позволит не пересобирать неизмененные модули и, тем самым, существенно сократить время билда.

Однако, не возводите всё в абсолют. Выносите компоненты в модули осмысленно, думайте своей головой.

Instant Run

Совет больше для новичков. Эта функция позволяет подменять байткод и ресурсы в уже установленном приложении «на лету». Само собой это существенно уменьшает время отладочной сборки. В новых версиях студии включена по-умолчанию.

Однако, по моему опыту и опыту моих коллег, эта функция работает корректно не всегда. Зависит больше от проекта и вносимых Вами изменений. Потому, если после сборки Вы не увидели изменений или Ваш код стал работать некорректно- прежде чем искать баг, попробуйте отключить Instant Run.

Включить и отключить функцию можно в меню Build, Execution, Deployment -> Instant Run флагом Enable Instant Run.

Attach to Process

Тоже совет банальный и для новичков. С удивлением обнаружил, что некоторые джуны (а иногда даже мидлы) об этой функции не знают. Она позволяет подключиться к уже запущенному на устройстве процессу для отладки тем самым пропуская этап сборки.

Потому, если на устройстве актуальный билд и перед отладкой никаких изменений вносить в код не требуется- смело жмем Attach debugger to Android process.

Gradle build configs

При возможности, если на Вашем основном рабочем buildConfig или flavour есть компоненты, которые используются только в release-сборках (например, crashlytics, различные annotation-процессоры или собственные gradle-процедуры)- отключите их для debug или для Вашего отладочного конфига. Как это сделать- можно найти здесь, либо на официальных страницах компонентов, либо просто загуглите.

В случае, если у Вас кастомный buildConfig, то для него следует отключить PNG crunching, так как по-умолчанию эта опция выключена только для debug-конфига. Эта опция применяет компрессию к png при сборке. Отключить ее можно следующим образом:

android {
   buildTypes {
       myConfig {
           crunchPngs false
       }
   }
}

//Для старых версий android plugin
android{
   aaptOptions {
       cruncherEnabled false
   }
}

WebP

Если minimum api level Вашего проекта больше 18, то имеет смысл конвертация изображений в WebP. Этот формат более компактный, быстрее читается и к нему не применяется компрессия во время сборки. Потому конвертация всей растровой графики в проекте рекомендуется всегда. Соответственно, чем больше растра в Вашем проекте- тем меньше время сборки после конвертации.

Параллельная сборка

Если Ваш проект содержит несколько независимых модулей (например, несколько app-модулей), то для него будет актуальной опция Compile independent modules in parallel в Settings->Build, Execution, Deployment -> Compiler. Это позволит более эффективно утилизировать потоки CPU при сборке. Минус- больший heap size и, как следствие, больший расход оперативной памяти.

Так же эту опцию можно включить посредством строчки в gradle.properties

org.gradle.parallel=true

Gradle daemon

Эта опция в свежих версиях студии включена по-умолчанию и этот совет для тех, кто до сих пор ее не задействовал.

Данная опция позволяет держать отдельный инстанс jvm и gradle в оперативной памяти в течении трех часов с момента последней сборки. Таким образом не тратится время на их инициализацию и наращивание кучи. Минус- больший расход оперативной памяти. Включается строчкой в gradle.properties

org.gradle.daemon=true

Offline-сборка

При сборке Gradle периодически проверяет web-ресурсы зависимостей, чтобы их разрешить. Можно отключить данное поведение. Этот совет подходит для тех, кто имеет медленное интернет-соединение или соединение с большими задержками.

В меню Build, Execution, Deployment -> Gradle отмечаем чекбокс Offline work.

Увеличение heap size Android Studio или IDEA

Такая опция пригодится для больших проектов. По умолчанию в студии указан xmx1280m (тем не менее, вместе с подпроцессами студия поглощает RAM сильно больше). Маленький максимальный размер кучи может провоцировать более частые вызовы GC и, тем самым, замедлять работу.

Увеличить стартовый heap size можно как самой студии, так и Gradle.

Для Gradle пишем в gradle.properties

org.gradle.jvmargs=-Xms1024m -Xmx4096m

что соответствует 1ГБ стартового размера кучи и максимума в 4 ГБ для наращивания. Подберите размер в соответствии с ресурсами, которые хотите выделить из доступных Вам.

Для самой Android Studio или IDEA идем в меню Help -> Edit Custom VM Options и пишем те же JVM-параметры с нужными Вам объемами.

Этими же способами можно корректировать поведение JVM в случае, если у Вас возникают с ней какие-либо сложности. Полный список аргументов можно получить с помощью команды java -X.

Плагины

Нет каких либо плагинов, которые могут ускорить IDE. А вот избавиться от пары-тройки можно. Это может повысить отзывчивость или уменьшить время запуска. Особенно если Вы установили несколько сторонних.

Конкретных рекомендаций здесь давать не буду- потребности у всех разные. Просто идете в Settings -> Plugins и отключаете то, что вам не нужно, внимательно прочитав описание и очень хорошо подумав. Не факт, что Вам вообще нужно что-то отключать.

Inspections

Отключение некоторого количества пунктов в меню Settings -> Editor -> Inspections может повысить отзывчивость IDE. Иногда существенно.

Здесь тоже не будет конкретных рекомендаций, отключайте с умом. Помните- Вы не робот и допускаете ошибки, а инспекции помогают Вам их избежать.

Power Save mode

Активация этого режима находится в меню File. В нем отключаются все фоновые процессы (индексация, статический анализ кода, Spell Checking и т.д.). И студия начинает вести себя заметно шустрее. Но и по функционалу становится не сильно лучше, например, VS Code.

В общем режим для ситуаций, когда всё совсем плохо.

Settings Repository

Этот совет не о быстродействии, а о комфорте. Ваши настройки удобнее будет хранить в отдельном репозитории и использовать эту функцию. При переезде на другую машину это удобно.

Если Вы работаете в команде с утвержденным codestyle- то новому разработчику будет удобно сделать свою ветку в Git, поменять в ней copyright и настройки для своей машины, и использовать те же настройки codestyle вместе со всеми остальными.

Можно, конечно, коммитить .idea в репозиторий, но это- плохой подход.

AVD

С самого начала своего существования AVD был неповоротлив и прожорлив. В последние 3 года он был сильно усовершенствован, что позволило запускаться и работать на современных машинах относительно быстро (хотя бы в x86-варианте).

И тем не менее, даже сегодня x86-версия Pie на AVD умудряется тормозить. Даже на мощных железках. Ниже представлены варианты, как исправить ситуацию.

Само собой, включение аппаратной виртуализации и установка HAXM с выделением минимум 2 ГБ RAM обязательны.

В случае, если AVD сильно загружает CPU и при этом тормозит- боюсь, уже ничего не сделать. Однако, если нагрузка на CPU остается не высокой- значит дело в графической подсистеме.

Чаще всего это происходит из-за некорректного определения наиболее подходящего для Вашей машины рендера. Вы можете вручную выбрать наиболее подходящий в меню Settings -> Advanced эмулятора. Конкретные настройки подсказать не смогу, так как всё зависит от конфигурации железа и ОС. Просто смените пункт, закройте эмулятор и вызовите Cold Boot. Остановитесь на наиболее подходящем для Вас варианте.

Меню выбора рендера в AVD

При наличии дискретного GPU можно попробовать запустить эмулятор на нем, так как по-умолчанию эмулятор запускается на том же GPU, который обрабатывает рабочий стол. Делается это так же, как и с любой игрой. После не забудьте вызвать Cold Boot.

Итог

Так или иначе, не все перечисленные пункты обязательны к применению. Старайтесь решать проблемы по мере их обнаружения.

Время- самый ценный ресурс. Надеюсь, этот материал поможет Вам более продуктивно его расходовать.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как подключить usb принтер по сети windows 10
  • Bugcode usb driver windows 10 как исправить
  • Что такое windows security notification icon в автозагрузке
  • Microsoft windows diagnostics performance operational
  • Как найти фотографии после переустановки windows