After upgrading to macOS Catalina, my project won't build anymore. This is due to Catalina believing the binaries in 'android-ndk-r17c' to not be from a trusted developer.
You get messages such as:
"“ld” cannot be opened because the developer cannot be verified."
"macOS cannot verify that this app is free from malware"
I have to use the old NDK due to problems with native openCV library SDK and newer NDKs. They are working on it, but the newer SDK is not stable enough for me yet.
I was able to get around "clang" and "clang++" not being able to work by going to the security pane and clicking "Allow Anyway" on the security alerts. However, when trying this with "Id", I can get past the first warning by clicking "Allow Anyway" but it seems to be called subsequently and on the subsequent call I do not have the option to allow it to open.
There is no code really. I just have (and have had for a long time) Android Studio NDK reference pointing to the old NDK via the config.
In IDE from NDK, it fails to load "Id":
"“ld” cannot be opened because the developer cannot be verified."
"macOS cannot verify that this app is free from malware"
I just found the solution.
It's a tedious process but:
MacOS: Open up System Preferences
MacOS: Go to Security & Privacy (keep this one open, you'll need it for the entire process)
Unity: Go and build your project. When the error appears click "Cancel"
MacOS: In the Security & Privacy window - go and click "Allow" near the "clang" error - so that the MacOS system will recognize the app and utilise it.
The error will appear again, but this time will ask you to "Open" it. Click "Open"
The build will fail several times due to various dependencies, but it will fail with different files that you will need to allow as in the previous steps.
Build again your project.
If it fails, do the steps again, until it stops failing. Every single error you get with the file not being recognized will be different each time
There is a better way to work it around now.
You could got to Security & Privacy, open Developer Tools and add your terminal app to the list of the tools. The same could be done for your IDE.
To allow apps downloaded from Anywhere on MacOs Catalana do this:
sudo spctl --master-disable
I'd like to add to Mudassar Ashraf's answer.
If you don't see «Allow» option after clicking «Cancel», switch «Allow apps downloaded from» in Security window to «App Store and identified developers». This somehow will make «Allow» button appear. Then switch it back to «Anywhere». Repeat if necessary.
If by some reason in your Security & Privacy window button allow doesnt appear then just move your ndk to different directory and try whole process again.
Find your clang++ program inside the ndk directory (ndkpath/toolchains/llvm/prebuilt/darwin-x86_64/bin/) then right click and open
The solution is mentioned above. go to Terminal and run this code to allow apps from "Anywhere" and in security make sure "Anywhere" is selected. This will prevent from asking you 100 times if you want to allow xxx file downloaded from xxx as well as multiple build failures.
sudo spctl --master-disable
I just want to ask "How can I speed up my Android Studio?". Though I do own:
Dell Inspiron 15R
12GB of RAM Core i7 (N5537),
these specs may look cool but still I am unable to working on Android Studio in Peace. As my Android Studio takes a lot of time when I reboot my machine and start the Android studio, its indexing process is way too long, the gradle build process is also way too laggy!
Even whenever I try to run my app on any device say on Virtual Device or any other real device it takes a lot of time, to switch between .java to .xml files is also way too long! For the most of times the Android Studio also stuck and hangs on different events especially on Gradle Build or refreshing the project and indexing the project files!
For the above issue, I have done some work around to speed up my Android Studio. In other words the results are just boosted my Android Studio!
Step 1 Increase Windows Virtual Memory
Goto Computer, Right Click and Choose Properties
Select Advanced System Settings
Select Performance Settings
Select the Advanced tab, and click the Change button on Virtual Memory Section
Uncheck the Automatically manage paging file size for all drives
Choose your desired drive to use as a Virtual Memory Part
Check the Custom Size Radio Box
Insert the Inital Size (MBs), this step is important! For me I have about 150GBs free in my C Drive so I set the initial size to 40GB!
Set the Maximum Size (MBs), I have set it to 50GB because have a lot of free space!
Click Set, then Ok
Step 2 Edit Custom VM Options in Android Studio
Start Android Studio
Click Help
Select Edit Custom VM Options
Click Yes to the Next dialog (If file didn't exists already it will prompt you to create one)
Add these Lines to that Opened File:
# custom Android Studio VM options, see http://tools.android.com/tech-docs/configuration
-Xms1024m
-Xmx4096m *****INCREASE THIS TO MAXIMUM OF YOUR RAM
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=1024m
-XX:+UseCompressedOops
-XX:+HeapDumpOnOutOfMemoryError
-Dfile.encoding=UTF-8
(You Should increase these values to the maximum of your machine resource, the above is for my own machine settings)
Step 3
Simply Invalidate Caches and Restart Your Android Studio
Don't forget to edit your startup programs and service, you have to disable all junk/useless or non important services at the startup and reboot! (This step is also very important)
Give your machine a Reboot
For me these all steps are a great workaround, so you should give them a try
Please Note that you should set all the said values according to your machine hardware and software resources
Thanks
Config + SSD made a huge difference!
Tweaking Paging Size, Clearing Temp Files and Cache do help but you wouldn't not have taken time to post here for saving a few seconds.
For marginal performance boost, We upgraded the machine and it's worth it.
Machine Specs: Alienware-i7 7820HK|16GB RAM|256GB PCie SSD|1TB HDD
Software Config: Android Studio in SSD|SDK in HDD|Project Folder in HDD
Clock Time to load Android Studio: 9s
Clock Time to create a new empty project: 20s till Gradle Build Finished
Clock Time to open an empty project: Less than 5s till Gradle Build Finished
Clock Time to open Android Studio; create a new empty project: 40s till Gradle Build Finished
If you could keep track and manage Android SDK properly, and predominantly use AS alone, we recommend an All-in-SSD approach.
Regards.
What SO are you using? I'm using the same version of Android Studio on an Acer with Windows 10, 8gb of RAM and i5-7200U, and I'm not facing these problems. Try to defrag your disk, or use a SSD, it helps a lot.
To prevent the excessive "Indexing..." when launching Android Studio (with multiple projects open), you can switch on File -> "Power Save Mode". This makes it start up much faster. It also saves a lot of CPU in general, for example when typing code. You can switch it back on when you need the live inspections.
More info: https://jwhh.com/2013/06/07/android-studio-power-save-mode/
I recently upgraded from Eclipse to Android Studio and I'm not really liking the experience. I'm comparing them both on a Windows 7 64 bit ultimate with 16GB of ram and Intel i7 4770 running NVidia Geforce 780 with the latest NVidia drivers if it matters and I'm running the latest JDK and the latest Android Studio.
The Android Studio is very slow in building the project which I can live with but it's also extremely resource intensive and sometimes slows down the PC to a crawl.
Whenever I'm building or running anything in AS, my PC seems to become extremely sluggish. It also causes flickering of screen and occasionally blanking my second monitor if I click on "Gradle build running" spinner which I find very odd. The RAM usage also shoots up to ~3GB which I find excessive for doing nothing (this is when it's idle after a few builds).
In addition, the panels at the bottom of AS keep jumping around which is a horrible user experience (moves from Android to Messages to Version Control or anything else on an ad-hoc basis depending on what's happening which is very, very annoying).
What I would like to know is basically:
1) How do I make Android Studio run better? I may be doing something wrong or missing some updates that I'm not aware of and I'm sure others have also noticed these behaviors and have found some solutions to it.
2) How do I "pin" the bottom panels so that they don't jump around and instead, let me, the user, navigate to them when I wish to instead of automatically switching them?
Many thanks and my apologies again if it's not the correct place for these questions.
Edit 1
Some more comments:
I'm using the latest stable build as of today. The build is Android Studio 1.2.2 Build # AI-141.1980579, Build on June 3, 2015
The behavior happens when using either Java 7 or 8. It doesn't appear to be related to the version of Java.
I am not using Presentation Mode. Just the vanilla view.
Doing the changes to the build configuration (thanks to #Blackbelt and his answer) appears to have helped with the build but the other problems with sluggishness and general user experience remain.
to sum it up
1) in AndroidStudio's settings > compile enable checkbox named Compile independent modules in parallel.
2) Under Help> Edit Custom VM Options I have:
-Xms1024m
-Xmx4096m # <------ increase this to most of your RAM
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=440m
-XX:+UseCompressedOops
-XX:-HeapDumpOnOutOfMemoryError
-Dfile.encoding=UTF-8
P.S. - Some people say Note, instead of VM options, it's better to combine can be overriden by combining those lines into one line single command in gradle.properties, like this :
org.gradle.jvmargs=-Xms1024m -Xmx4096m ......
3) I have an old dual core with 4GB ram, running ubuntu. Qs command line option I have only --offline (which specifies that the build should operate without accessing network resources). I also enabled the remaining checkboxes and now it's running ok:
Make project automatically
Use in-process building Configure on demand
Check the AndroidStudio's settings, under compile that the checkbox Compile independent modules in parallel is enabled.
Under Vmoptions I have
-Xmx2048m -XX:MaxPermSize=1024
I have an old dual core with 4GB ram, running ubuntu. Qs commandline option I have only --offline , which specifies that the build should operate without accessing network resources. I enabled also the remaining checkboxes:
Make project automatically
Use in-process building
Configure on demand
and it is running ok
Edit
It is possible to provide additional options through studio.vmoptions located at (just replace X.X with version):
Windows: go to %USERPROFILE%\.AndroidStudioX.X\studio.exe.vmoptions (or studio64.exe.vmoptions)
Mac: ~/Library/Preferences/.AndroidStudioX.X/studio.vmoptions
Linux: ~/.AndroidStudioX.X/studio.vmoptions (and/or studio64.vmoptions)
Increasing the value of -Xmx should help a lot. E.g
-Xms1024m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=256m
-XX:+UseCompressedOops
will assign 4G as max heap, with initial value of 1G
Edit:
On windows the defaults are stored into C:\Program Files\Android\Android Studio\bin\*.vmoptions. The IDE allows you to tweak those values through Help->Edit Custom VM options (thanks to #Code-Read for pointing it out).
EDIT 2:
Android studio 3.5 makes easier to change same of those values. Just go to:
Preferences > Appearance & Behavior > System Settings > Memory Settings
Tips to make android studio fast:
Enable Offline Work:
Click File -> Settings. Search for "gradle" and click in Offline work box.
Go to Compiler (in same settings dialog just below Gradle) and add --offline to Command-line Options text box.
Improve Gradle Performance
gradle can be optimized too. The easy way is to modify the settings in global gradle.properties (create it if not exists in the following folders: Windows - C:\users\your_name\.gradle\; Linux- /home/<username>/.gradle/; Mac- /Users/<username>/.gradle/; ) and in that file, add these two lines:
org.gradle.daemon=true
org.gradle.parallel=true
For More: http://www.viralandroid.com/2015/08/how-to-make-android-studio-fast.html
I detected another reason - Thumbs.db, which affected performance badly.
Go to File > Settings > Editor > File Types and in field Ignore files and folders add this: Thumbs.db;
Now, Android Studio runs like a charm.
Adding more memory helped me:
Click "Help"
Edit Custom VM Options
Android Studio 2.1.2 Edit Custom VM Options:
Change values
like below:
-Xms512m
-Xmx2560m
-XX:MaxPermSize=700m
-XX:ReservedCodeCacheSize=480m
-XX:+UseCompressedOops
Restart Android Studio
Recommendations:
MUST TO SAY: if you have any chance, spend some money for better PC(cpu),
it's Most important ..
Tweaks:
Some people say, that OS (Operating System) might cause much slowness. For example, XP or LINUX (or etc) was mentioned to perform 70% faster (don't know why..).
Disable VCS by File > Settings > Plugins and disable the following things :
CVS Integration; Git Integration; GitHub; Google Cloud ... things; Subversion Integration; hg4idea;
Editor is a resource eating too (especially on Large Monitors) and slow. Make it much much faster: click Help > Edit custom VM options and add these lines :
-Dsun.java2d.d3d=false
-Dsun.java2d.opengl=true
save it and Restart Android Studio.
If Android Studio has a proxy server setting and can't reach the server then it takes a long time to build and waiting for a timeout. Removing it helps much. File > Settings > Appearance & Behavior > System settings > HTTP Proxy.
Another Useful quote (from article):
Modules are expensive… On my current project I had to build some libraries from scratch and had to fork some that almost fitted my needs but not quite! If that modules are not constantly modified, it’s important to have this into consideration: the time needed to compile them from scratch, or even to check if the previous individual module build is up-to-date, can be up to almost 4x greater than to simply load that dependency as a binary .jar/.aar.
Hint: run the gradle build -profile for an HTML report showing where
the time goes regarding the build process.
Note: keep that “unnecessary” modules in your version control system
for the eventuallity of a quickfix/improvement in that dependency.
In your Gradle build script, use only
specific Google Service, like: compile 'com.google.android.gms:play-services-maps:...'
Instead of full Google Library: compile 'com.google.android.gms:play-services:...'
(Compile time goes from 2 minutes to around 25 seconds).
Gradle configures every project before executing tasks, regardless of whether the project is actually needed for the particular build. In global gradle.properties adding this will help much: org.gradle.configureondemand=true
Surprisingly, some people say , they solved problem by reducing: 1) heapsizes to -Xmx256m (instead of higher values); 2) Emulator Ram-size (from Edit AVD > Advanced Settings);
Everyday Recommendations:
Don't run multiple projects simultaneously.
Don't close emulator after using once (use same emulator for running app each time; If you test large apps, better to use a real mobile phone instead of emulator).
clean your project every time after running your app in emulator - click Build > Clean Project (or Rebuild), you can use keyboard shortcut.
An anti-virus is causing the slow-down
In one particular system I looked at, this issue was caused by an over-zealous anti-virus that was interfering with Gradle, the build manager for Android Studio. It seems every time Gradle was "touching" a .jar file, the virus checker was unzipping the .jar and scanning it for viruses first. The Gradle build could only continue once the unzipping and scan was complete, thus leading to very long build times (5 min plus). Since Android Studio, by default, runs a Gradle build when you start up, it manifests as an extremely slow start-up.
The problem is extremely easy to check for:
While you are experiencing the symptoms of a slow Android Studio, press Ctrl- Alt-Delete and open Windows Task Manager.
Click on the Processes tab to see the active processes and sort by CPU. If you see an anti-virus taking significant amounts of CPU percentage intermittently while Android Studio appears to be loading, it is likely to be the same issue.
You can verify further by looking at the scan logs of the anti-virus to see if it is indeed, examining the .jar files.
To solve this, you will have to add the correct directories to the "excluded folders" of your anti-virus. Assume that your Windows username is "Username" and you have installed Android Studio on C: drive. You would then request to exclude from the virus check the following directories:
C:\Users\Username\.android
C:\Users\Username\.AndroidStudio2.2
C:\Users\Username\.gradle
C:\Users\Username\.m2
C:\Users\Username\AppData\Local\Android\Sdk
Please note that you may need to take additional security precautions if you exclude these directories and you should co-operate with your security department in the workplace. This may involve setting up your own Maven repository if deemed necessary.
(I am aware that this is a late answer, but none of the previous answers have addressed this potential issue)
The best way to boost up android studio runtime performance is to use SSD Drive. It will boost the performance as very much. I did all the above things and felt I should go for new laptop, but suddenly I came to know about SSD Drive and I tried it. Its Much Much better.....
Starting from Android Studio 3.5 some of the settings can be configured via:
Preferences > Appearance & Behavior > System Settings > Memory Settings
As you are learning, performance problems with AS are not trivial to diagnose! In my case, an array of 9215-character-long strings (see below) was causing AS to dump threads every time I typed a few characters. The thread dump in turn caused AS to freeze for many seconds at a time. This bug appeared in the Windows 64 bit release of AS 2.2, still occurs in 2.2.1, but was not present in 2.1.
Finding out that long strings were causing my lockups involved a lot of trial and error. But, I learned a lot in the process, to wit:
idea.log contains excellent diagnostics (Help->Show Log in Explorer);
If you see extreme, but intermittent slowdowns, suspect AS is dumping threads. This will be reported in idea.log. If threads are being dumped, the dumps will tell what code AS was executing when the problem occurred;
Find out whether the problem occurs in other projects. If not:
Look for unusual content in the project file you are editing when it happens (atypical indentation, long lines, overall size, special characters, etc.);
Try exporting settings from another project (File->Export Settings) and importing them to the problem project (File->Import Settings);
If so:
If threads were dumped, consult these and text in idea.log near in time to the dump notices for details;
Consult idea.log for messages about memory consumption and see other answers to this question such as https://stackoverflow.com/a/30818099/5025060 for advice regarding memory and other tunables.
BTW, for the present I have worked around the problem I describe above by moving my long strings into a separate file (a new class containing only the array itself). I try not to edit this file with AS:
package com.code_read.numerous;
// Stored in this separate file as workaround for but in Android Studio 2.2 and 2.2.1:
public class numstrings {
// Array of long random numbers, pregenerated to save CPU:
public static String[] numStrings = {
"199480174700500684371420190688025369652294974898532667703870978918596743889034133861151427235088532762252190859715724937087994424214079133514743202613482472074004942240108422672013308512961698346232617905052490578458131173818163968088306365788124935229987389963310288307926351857183977760191417618209693717342383094977491190187330292385653783886145924147263878165609860155555740880616076742235066585775525946974068428032859462348789185664980466131158481988902160769240355605036247170008906461173632371674336904556655004329788696238223897234680357492949394186524384271378442506571046125386240017147676374848515226581822322873860294758364671523301932707269219884364668888296719810681914252024967226535139980038835402500469293303445385631066898382763993166693693891600944079638681397398367264401490441377833191085876891792887328136898520902148268395208138632765905189182445119192547131981262125997953230672094440970962973597034366673186995403431640556509145661772208699764304562424356210879969147034091389350776774099307413678640772848528929610792920689008507739250708291284695239814666712127874431690342513485124398592905398339314701750560443486724884409641301581250356812598254397195582041374207050524854721410717517826514256884605932903495291614152958393041446721244450203654252461792454977205340965473442168314446921087589856268559622056019215736207512553225494282253374340892190892964167854464270350359407498074340634452159050304590622713766142827196013111327741833914397311108235022871374679837822251636256816946000031801632697665029388147643065534169657637935011864906687144383247248575867393905547656023089908356955316327699678982262881769783281879024192545078595861099291383574264862512114130067137999586421949009586778213657551456231235508255794338865353976867429772427179918460616316131342501970048444481906603539188074631511252603708953524733006893213588956114050791560328718558587163598674421588217380809694917621993988723888733472235367656543521907102504160836734526706672672061129158228943943961208967494809881423654493768539990181950253198622321856894324399743506614313017879100091908634564608851227240409514256964261431166731255216249943382663958593911252365390104901951019163641553646386915867844316868296886856122097683605632869023634580949922723527949383421859260253787750248640586488155271705354318971930705305681639438500545630794869976987809742158447119320670554178634632109983849140691164486258482922700124353388939055409126960673867435504694534537972989184927497251539970824341488149544927174416431338978095499553363866217528144380339413096788582745229165179013109746529904790441634036324656629258183244396216977736609176927617841924291304236306725585481004526207256126249788205441106740479328308566203633303785210558827801926199279334869844921970247706896704588537079433072095445424535530854095822282531649200446125855450924096198151719358284629425483620333602513734130440802599571444639236468727586327901486711828547798932589324730675183636768495336889434743116373841074286121127947547754103882500005968494120728533889301116500651387720411937760371686364320729394390169544403796948255139588769868997312588780450158790560760093773180833497054203906896463690321778617639560964637561984865448197089236779186045120326461271783320113343686490407274805637853745997098574967843535555214227806718213323236579240122449595189776026857194861192260435592237583754498777823878919462358453553525468074152734416933788261651160608911358193365205774610833712659270259537468997175675611106769471773639491122956114410572271964037496252046002633139033229094067102926662843014688243495810764107876347939515840933639293755383642974182862980342270078605141586386956993823477302317789808723114028287869904362158728685338534454353886384668017657582003089836977765285161563767051590888534730491047324356587246491873963645331147759110815548406659559086623742565689131160816873078928719150806816828094339118862380985774989197433606765766698179872216924780614351925493388103444249169463919616530661916366867058921827320239545671233921815306937959970928487769990744894323260198942599949511829120527153889470305293747421875929597907863004936662249162616863538907259383989683557351124864962027711188603419729221915037041631423186559909007303718063435208812948660284585114603102538597611757387763679988962831024468515792778125928449962458120436831348703819770498415146367232423575963346662334586696284187440935738671265597243626878590482688540466283239505795285203222312952727768986993054183353764623988975079536152274635683995523743740674237109205318984477845559143807318533592235565607859418218764426920445870800448778289651837205082867361097390372276842811160616927570980788319948404234156903914893965657104289589790051123586608292524558595741415545621155770330883498473838958946706678756502460255029859500858857950640229689701775631558304956149273122701277512634671602844059638169586254728659407967362269959105419218416567093118243957542316274295498328248817394832630466984581744392334983388346309080227929827437548742182906915518737736211928504845091782481456286893146781544794159295091551690979113667607106910341688300199029887449503700494407767038172311101451145387305383586418395623858905393669579043267868910063346375438826548689323643777791563205248979849233001328183147648563739211128790317882512942976057274763094369736846067104652467759155731666690210808042980939553702716431018458310300829399315635070328956543394251955663239488509275645610557061416837507256175426220804774390422080366850103219147627475492147311993091462233708107815399346519610636302312501953470382656988296844245456380956448418706248790737380938971901188740142511500064909417579265118558940349387209436071467447553322059300256060882213572671888633311468806647866886714364480390741971261155146966455235245469216037781902665760552750139630086762191170698020993656670315633268514333717896691033913231320046383254246489147334950779602143851763331162696957861920662919779275597627512142784352182141445813314700768143243068609858396666573299094606418264269814358631471099430351875376096756985414279698633021999241922359616560734207061899223922960812283262525756913341822754012297564666186625578304476940819388933133524627367540790564522544564778697253990225087539167235818088172467629494330066609424362165903452686384032519162803665396381708558770446760515949895545741296290000569932285497599817855761012405729639826090606199167309178353879552491532632275280392848742608582274239730529782945165478328337271868836845191541561507500208302765174521037399945168283511465921684324919886458514198917808605615454461104693224591355736463666638896809273773847099278335819353734646745529499084220949854110923079439768551794882440443420790356174953271799037409969510616472239791991169317996129581919960609015888209147433981232988872613046167259127350908379785462051364248739967784342740440741101122829282932814615147660486375475931239052842925639656692838804305210923978980395884616464432067372256203421577994958229803819990849889517637605263836801607526144871336189683467963044999507242077754258044251900402909622687958520423101104141436068489671206919737260688257054648581817294964263976562185927570807911388018018258993650653884478612449747409649857255718750594340185450229237142106113706239341772394393537650157754917387723238567597362916800367131878174394802843379112357851740285545973436469806324934485196633484429168467828668601262966377703119558087801302745104185528840638941125570169525964145077815381271805810720809495436404303742978449708284706732193106170741321000772555673307985656286163852732962806975120835420863932323287224469231389811257137937311964638921084917958805713020592860162667905063938602685993936855490751349046724756605329409781900459600797487634904548282818720869599606861780977530250890161804971763916627465964744221537291053168212191636434331558216175364205277673887186837423218242958128611987999992758177897869145149526733124420365122337894731881057516805213861310033107963352309585687684446050606840221227910822989213514546762603795082253295181456389080556377952947742314716657931379603906644497934747404742170445520704889248852909123050926587050705346518656114252388410901469887789781852617252193018440532227714049598132339736764081531406292297426695168307774532183927565674228199289403241512915778463699914633503875989705880500660094881980955882992903315688284154677620736795450367750443201591100620839868814285991917187047458820949842767861309178482708477168470785039327561836424824805811165820104246196555794331332996669674045783102109040643272357674713449239668592816891229724897439143640828454023115418378970208060898790311768852380590403898569796811536628763765619516959616465670971025029199700641157243991360225331144567474481980740980668474128099060992445134897801758103355434948807029912167490453622803119627912623581848536805420633517354236148799130118992602264832753012209719060145941443653691895443984877692560563086567054695734773175413167885599427596673930470696429105758701992261543691172194016438106532173687638780672882677814493551318364786071441551104902517495593342110486408028970990714051385299637116595208818449861724282758368826773373374959971277798785804077474187828568828476934339459420148793412883150",
"538224164506517727168379814270004264954262890967803652129634085563292029281605229340786265842963091265375081322656426327691825397596305139095807229239401766181924729149454472921237119900736562299208507666998730548950184609967143155404571139681858767360957532407547767766581682749533474070778066308353055041737658281319225985623143723322979093908077261749579698949722143844865215753260704863233251983739190238438585852441601269285486958770074555894548287326458992187454462079069306138536753824858451724299502671847412359542456725524317603333127725189754333904127835917709082397117314374344841098649440198952614890746624715994850686377293277867933955487391617475414663233091117706057717653437506940130690492779072621106571276835896964128477419355461824833007422652722892089498401815585650339262735314718997015721760285362989670501888405449175944105348564991465379865502815442568994217413701289990025169571135430868678513387334362169047349385097189952383252809797239281560886730670313602788309858480241742834539376684722791418327801153139657791555902866428852378920616927209513842521394245291956399576801110297424150355942220383127708823635328491162642528500795465164461339897320905999182040888049657238854537216919531949022496815649153550998615631758342112481970649311069999931374418401873433024214179662539540883626504860812401222013654614884183265556578861843196602514379747643437577278486455637659461692515650033708286255995750664532809105614477191900536646989973294380911406440123202917020543294608335869356083501814588100186652356940293410193583108936507174010508730547579479594424713594002615307062956405060637859223904493241124826364582313371226790237755829730863075824362871968331865676368450061869716192958213846294980005144665140729523705625975650250913572426639956129293774660716629920750249524030812360814423275145704510305475471599108987851917139525934434155829774559599984930365268286061310405222779602887256748903477260217130747213255028270120814131477184214466827946467189929171109471222122321781698513717077961138680899475230521104220021956144708736321339718012605885629667271185753633589711538217011780317199309005150619910226290258606968201034831451279285351626936018493376731628135398444826695563731645399766722832213714326969977166479301504241269743154952405125518862249585946211635202670206079658236138581470119927833603919638673595466193694285521696174533703023847425191146225399211910859996212735505434202471982673116410979955302943872996222782251188889797453222122118340601140765762050865117038651251924809853248767149255310571487174953189406262461045337548275503362245324296778392145673240872161212904525195326091442868284645515492949181928962102650369388016101486909636578309464736085550719873530004572608218612771334204843378797447816965534882619866758953492744624542308949271562610878902677734983794103655386943014200382950775896136847248170152492053814891464245663515427967344370332218795309066345645753963683675310959651463186934113877748975354804724385336161212461668326293653878197970705660956307781435211341258181110817847199795550229343870629183131938496385393103613345446965343702524527285650585793819011062255528783572801384755547339757189973901102728798129755193065859838182563879981780954262005796062637576511231241443434331171809822894324123753165477778469728090079401173957345155941105580762201810708213077226618724235486083102862810041621061166403929820695859415790727065329954170405272420309443687650005312634780559478100510198693442377014278276554921873492874338296974328247512240058483178986970686481429662053321485231172147300032651945090781006753618086127522738639483880490609376294431040414520360826477062101428243729921142508398976634656490798240120553325502856616278098521671075879092501730718808714541228313275254145714018560781459353526353227881612961968793972766897143956572113542916207199147961710145111046554899487126641090524158317439204601922483991169906886478567971798641676381952943035217373454681987587805591011217498046449281585885528147735917241804752657592955740206966021211842392441403708809079502903010500379965582448141804577819122673871443655907443795539672468455979677549431293106288271932050346631500287602175371865943781936540554382984304724097222638329259252009624430698945188473581273102616186096857444455590249553427286857598862389440750330212575200947705079697958418126668654772650001967712891183376253390796458314338083748473931585515921615694157280199091233014626670437265932854816696073747199020367782282750469898234657723303623065763946721350199198124381089295881349043396200116870404706730447453694640127520344108293809433706053279580858859981831981145259642994156115348994153409515332190714496695178066164657038576407330756425651351910143884103008599258982342794361116576254544716333349447388917606521902296446129906799300892625933497927680934057875748488562502583788021088460847542122629532281540915167125712134059011294733193338806665352190898772064079614377396560467361735144910595159196625744894635765414508428182582195935281561176637424688405390881327676886203967634620641490139835786477852859151685333919226211419623843640736490696222368214514608866918660741740478728095699337580878621149576661678523829374300157157278668566218717849777314215124448445257696853651163171851588905845296279139538174221105885455390417634993814515761194372376448867312932698371439509465354789329167336154865083365498571678846394239876288801890960856391974200258201177558423866895944503981197241629075358819018115130381239431357293457670267116618421892520944925953400263676636028993365189377273814879596365094915787821109571143126831231452367431282415243511115547744416422407534808156629306675994132643059500315715827695321955177580261595331150963040058964908997344260596477846100309223669721566222470207499488952252338020599539432718661089801855181342526438803473636154594287887641549215962248635916039475197945009663236392713993500705974424791640227287724705650067537968801074155312570114797832465663858741483400901647799929721470159496987812679821111730689166463366606551267765697921569125290699944304326288818960384200871654827493100325409876812489682711348513244971620081481684340424449568972178318409815746267950146224549923943957635742728889238780346534385817477136072283022902565796081663160648252946167239546424890110821196529528358627773373504225125056523663954597433278174718610370606703664415945161199804631243562222965705129402104600647872785649693343767911111233647766743334611301999675427293224616809442969215988341973159678514604800342052145601875313047852364221840276228543970109429472341439373418554415700439864029182126126555780166736274177582219830001690249143731582595139837209895586321826391814999452798890753335597966118255461143209904547262657727956104064852211561674112309448805185831775145498725414208563477819053457809168792852008698630549450830647801496178703216613708137528937944005515930744164570843474855631165661539606334738839503279229149405656111162420879130403407319921975488206273446734836687100641841717998060185446298997678735552219275033859572628180793848617502491777291673575300297211101525633241431725253827221239047470633458965551885615810334846221083366721155246201486720296861488421251412585452371994052765854956667058152989005149411484243624208727100911576375413403608010677473400955778111396360452775514441825548741754598300817661240268852363212781602854367749994334862150630799392774768527973996929461527098114708300217955057684152676420039296978447817265256411524417754883187887445894130353022388842317869773150647952948848671583706699551985745434110794662277351457044771378507518729537365658152364234398609916864719216448498077322804149512833432154942424273393427629208749974623818973778078002180114151519862694544029256435686883829302646833505994223044918417887864451588047856834236569410763473387053946267508537900833300945851877436680980941544844525786853711677637705576181468642324785126166781221160451843898112783925287679639526886367820669455874656199565561430456794216944922544744491649466852864038501469041752223982614119494425752107037262844982748646605722535227272840737241614295262590818750600682152446698778395840797731822121652655104430172804976277739763346646973261475782149805868676545805017515372016402264906453096545897803426557477555439266024369075314101297725973100535662786670323833137704110282990903782350435888819622487815784902943846410347084957959806691311457091835651974879930411462198631314974388802219688546560811233248145760355918687984846313201786200839700173112807846243294546660463226871823957739032709878892254197891276394543557575946191838680926317472980812747870786530370508495402751983312199142752128770884996983711003898291322931887907171702897478102431849815742495249955783279530071100116870946788229251574041532557327826598269913255656761197623810457653412851472785896979416478595929500127189986637637036604571272745614510419960810914932566459678546613552623592183167012968748532550838681296741202414403822809009633668022825501012148809838864474143686730203083478893084391943797481539519935765574317583241228880915886149481239344051101576686476041869843825807899235712961395473752900914609987610792511497473444033564072045509623215604304751107341738227963259498893539",
... (13 lines total) ...
}
It's not compiling that's hurting me here, it's the typing. I could disable all the smart features and be back to notepad++ like TomTsagk suggested in a comment. For today I need more cores and RAM.
Playing devil's advocate I'd argue that typing shouldn't require a 16Gb PC octacore PC. Liked Sajan Rana's advice but things are so slow here it felt mostly a placebo.
To be fair I am using 1.4RC1, which is just short of being in the stable branch. Turning the internet off helped a little. The new feature of simultaneous Design (Preview) and Text views working with XML layouts is very helpful.
No, it is ridiculous. Never leave the stable channel.
This answer pertains to slow Gradle build speeds for Windows 10 after you've already gotten the Xmx and Xms memory settings straightened out.
Windows Defender
As far as Windows Defender is concerned it's simply not enough to add folders / files to the Windows Defender exclusion list via "Files" or "Folders".
You must add directories pertaining to Android Studio / Gradle / Java (embedded JDK or Oracle JDK) as "Process" exclusions to Windows Defender :
Go through the answer by David Rawson
During a Gradle build... monitor the Windows Task Manager's Processes
To Windows Defender, add "Process" exclusions for directories containing the file/executable you see utilizing the CPU during a build associated with Android Studio / Gradle
This obviously comes with security implications.
The following describes more details pertaining to using a "Process" exclusion in Windows Defender (as opposed to adding a simple "File" or "Folder" exclusion) :
A file name with full path causes the particular binary file to be excluded, i.e. any files it touches, regardless of where the file is located, will not be scanned by Windows Defender. A file name without any path causes any binary file with this file name to be excluded regardless of its location. A path followed by a "*" (e.g. c:\my\private\tools*) causes any binaries under this path to be excluded. Any files touched by these processes will be excluded. This is different from a path exclusion, where files touched by any process under the excluded path is excluded.
The key here being....adding these exclusions as "Process" type exclusions takes into account "files the binary touches" as opposed to manually finding and excluding every file / folder that is generated by Android Studio / Gradle.
Windows File Indexing
Windows file indexing seems to also slow down Gradle builds. Turn off Windows File Indexing for the directories used by Gradle / Android Studio.
Here are my "Windows File Indexing" and "Windows Defender Process" exclusions :
C:\Program Files\Android\*
C:\Users\<yourUserAcct>\.android\*
C:\Users\<yourUserAcct>\.AndroidStudio3.0\*
C:\Users\<yourUserAcct>\.gradle\*
C:<pathToYourAndroidStudioProjectFolder>
In case setting -Xmx4096m -XX:MaxHeapSize=256m (and etc.. mentioned in above answers) doest work, then do this manually:
Step 1 : Start Android studio and close any open project (File > Close Project).
Step 2 : On Welcome window, Go to Configure > Settings.
Step 3 : Go to Build, Execution, Deployment > Compiler
Step 4 : Change Build process heap size (Mbytes) to 1024 and Additional build process to VM Options to -Xmx512m.
Step 5 : Close or Restart Android Studio.
This might sound stupid and off topic but in my case I was using an external 4k Monitor with my MacBook Pro 13' (MacOS High Sierra, 2016) and I had the resolution set to the wrong scaled resolution. Switching to another scaled resolution where there was no "using a scaled resolution may affect performance" warning resolved my overall performance issues. In my case I had to increase the resolution to max.
So for me it was an overall performance problem which first surfaced with Android Studio, it was not an Android Studio specific problem.
EDIT 25.11.2017
As a result I had to increase font sizes in Android Studio:
and on my Mac in General. I followed some of these tips to get that done.
Just for anyone looking, after upgrading to El Capitan, I noticed a huge lag with the IDE. After increasing a ton of RAM and using the suggestions above, it turned out that I needed to update the legacy Java, and reinstall via: https://support.apple.com/kb/DL1572?locale=en_US
After installing this, all lag was gone.
Well, one thing that worked for me is using physical android device instead of emulator. As in my PC( i5 and 4GB RAM ) the android studio takes about 700MB of memory and the emulator takes another 700. Thus the whole performance of the computer goes down. Working with a physical device saves the strain from the emulator.
DO NOT EDIT studio.vmoptions ,It may not work.
In gradle.properties file (in app directory) add this :
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx7g -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
I followed this post and it worked great for me.
EDIT:
Following tips have been mentioned in the above post.
In gradle.properties, put this:
org.gradle.daemon=true
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true
And in build.gradle, put this (Note this will disable lint check):
tasks.whenTaskAdded { task ->
if (task.name.equals("lint")) {
task.enabled = false
}
}
I just want to share my case:
if you need play-store library, don't compile all of it, just compile library that you need. example: if you only need maps library instead of compile 'com.google.android.gms:play-services:9.0.2' do this compile 'com.google.android.gms:play-services-maps:9.0.2' on your gradle
Dont use OpenJDK for the java, I use java 7 oracle and it works well. if yout need to change default java do this on linux terminal sudo update-alternatives --config java and pick the number
I'm using ubuntu 32bit 4GB RAM. that's all the issue I ever encounter with AS.
There are many ways to speed up Android Studio.
Speed up gradle build time.
1.Go to Project gradle.properties file and remove comment from both line.
2.copy gradle.properties file to your .gradle folder so that you don't need to setup for every project.
Enable Work Offline so that Android studio/Gradle don't need to check for newer file over internet every time.
I've quickly resolved this issue by upgrading gradle (Android Studio seems to use old version).
1) Download latest version (https://gradle.org/gradle-download/) and unpack somewhere.
2) Update path in Android Studio: File > Settings > Build, Ex../Gradle
This worked for me!
Open build.gradle (it's inside your project) and change the both jcenter to mavenCentral
(you can do it in Global file too: C:\Program Files\AndroidStudio\plugins\android\lib\templates\gradle-projects\NewAndroidProject\root\build.gradle.ftl however, you will need to do this modification again after AndroidStudio upgrade)
My Android Studio was not only slow in general use, but also when building.
Here's what I did:
Uninstalled Android Studio (Don't delete, uninstall it and check delete the SDK too). Then delete Android folders located in C:\Users\\ folder namely: .android, AndroidStudioX.X
Uninstall the SDKs via the SDK manager, remove everything ( If there is lef SDK folder, delete them )
Download and Reinstall the latest build for Android Studio (v2.1.2 as of this writing); Install only the SDK/Emulators you need;
It's fast now.
My Story before that:
My laptop sports an Intel Core i7-3612QM and 8gig of ram. When I builded, all the 4 cores/8 threads were on 100% usage. My entire system froze until the ~10 minute wass done. Gradle took me like ~10 unproductive minutes of slow down. This is very annoying. I am using Android Studio since 1.4. There were also tremendous slow down when I copy paste code to and from, selecting menus, right-click context menus, editing manifest, editing gradle files, opening layout files, rendering in the UI Editor, etc. Its was very unusable most of the time.
Due to frustration, I did the above steps. Its fast now. Very usable just as before. I build for only ~20 seconds compare to ~10minutes before that. Also, Android Studio eats about 6gig with emulator and browser with lots of tab open, unlike before its hovering on 98% RAM usage. Not just that, I even saved 45 gigs of space for whatever reason. I only use couple of SDKs and Emulators when I checked the Android SDK folder, it occupies 45gig of space! I think the IDE is having a hard time accessing/IO on my SDK folder.
If you've tried other given solutions and still experiencing the same issue, it may be time to remove Android IDE/SDKs altogether and start anew (it might take you sometime to setup that newly, but its worth it. Considering I've been suffering this sluggishness for months and cost me my productivity).
I really guess that this might be caused by cumulative patches that has been done since then. Or the 45 gig SDK folder on my poorly defragmented drive. I don't know and I could be wrong.
Thank you! HTH
I should mention that if you are using Mac, downloading and running an app from the App Store (like "iBoostUp" etc.) which will clean out unused system files can speed up your computer dramatically, including AS.
I also found that adding more memory to my Mac sped up AS as well.
I noticed that AS transfers too much data from/to HDD. It is very annoying, especially when starting to write a new line of code. So, I think, better will be reinstalling a hard disk with SSD. I have i5 with 6 Gb of memory, and the CPU seldom loads more than 50% even at build time. So, the most weak place is HDD.
Click Help > Edit Custom properties and add this line:
sun.java2d.noddraw=false
... worked successfully for me to fix the speed issues (Windows 10 64-bit). It's absolute voodoo as far as I'm concerned (I haven't done any research on why that should work), and there is a warning above that property that it can cause blinking and fail to repaint on some graphics cards, but there you go. (Inspired by LairdPleng's comment, further information)
1 The most common cause of slowness is using Emulator, especially more than one. USB debugging with the external mobile device can be used.
2 Invalidate caches every month or so
One Simple thing that no one has mentioned is File>Invalidate Caches.
Please add in setting.gradle (root folder)
startParameter.offline=true
I have tried to measure speed of Android Studio 3.1.4 on the same hardware: Macbook Pro 2011, RAM 4Gb, SSD 240GB Samsung, Core i5 2.4Ghz. I have installed on this machine 3 different OS: Windows 10, MacOS Hight Sierra 10.13, Ubuntu 18.04. Avarage build time (running command: gradlew clean build, gradlew clean assembleRelease) on MacOS/Ubuntu was around 30% faster than on Windows.
On my another working machine: Core i5 3.0 Ghz 7400, RAM 16Gb, SSD 250Gb. Build time takes 4.34min on Windows 10 machine. The same project on a little bit slower processor, but with the same RAM and SSD and it is running Ubuntu 16.04 build time takes two times faster!! Well I was shocked with results, but still I choose Windows as development machine, because it's much more comfortable for me to use comfortable and usable keyboard and sotfware than on Unix like systems. And even if I had to choose between MacOS and Ubuntu - mac is really much easier to setup everything, and Ubuntu is too complex to use for usual people. Choise is up to you.
Apart from following the optimizations mentioned in existing answers (not much helpful, was still painfully slow), doing below did the trick for me.
HP Notebook with 6 GM RAM and i5 processor I have, still android studio was terribly slow.
After checking task manager for memory usage, noticed that there is a software called "HP Touchpoint Analytics Client" that was taking more than 1 GB memory.
Found that it's a spyware installed by HP in Windows 10 after searching about it in Google.
Uninstalled a bunch of HP software which does nothing and slows down the system.
Now, Android studio is considerably fast - Gradle build completes in less than 30 seconds when compared to more than 2 minutes before. Every keystroke would take 5 seconds to respond, now it is real time and performance is comparable with Eclipse.
This might be true for Laptops from other vendors as well like Dell, etc.
HP really messed up the user experience with their spyware for Windows 10 users.
Uninstall them, it will help Android studio and improves the overall laptop experience as well.
Hope this helps someone. Thanks.
Balance memory consumption and build speed using gradle options. For sample
Android Studio 2022.1.1 (PC RAM 16GB)
Gradle v7.3.3 (./gradle/wrapper/gradle-wrapper.properties)
AGP v7.2.0 (./build.gradle)
com.android.tools.build:gradle:7.2.0
Cache Fix Gradle Plugin
org.gradle.android.cache-fix:org.gradle.android.cache-fix.gradle.plugin:2.5.3
This Google Services dependency version supports Gradle Configuration Cache
com.google.gms:google-services:4.3.5
./gradle.properties
android.enableJetifier=true
android.jetifier.ignorelist=bcprov-jdk15on
android.useAndroidX=true
kapt.incremental.apt=true
kapt.use.worker.api=true
kotlin.daemon.jvm.options=-Xms1g -Xmx4g
manifestmerger.enabled=true
org.gradle.caching=true
org.gradle.configureondemand=true
org.gradle.daemon=true
org.gradle.jvmargs=-XX:InitialHeapSize=1g -XX:MaxHeapSize=6g -XX:MaxPermSize=2g -XX:MaxMetaspaceSize=2g -XX:NewSize=1g -XX:MaxNewSize=2g -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.unsafe.configuration-cache=true
org.gradle.unsafe.configuration-cache-problems=warn
Useful links:
https://proandroiddev.com/how-we-reduced-our-gradle-build-times-by-over-80-51f2b6d6b05b
https://developer.android.com/studio/build/profile-your-build#using-the-gradle---profile-option
This one is really weird. I had a perfectly working Eclipse + Android 2.2 SDK working in both Administrator account and LUA (Limited User Account) under Windows XP.
Then I decided to add the Android 1.6 SDK (I could do it from an Administrator account only). It seemed to have gone well, since it still works perfectly -- but only in that Administrator account!
When I try to start Eclipse under a LUA, I receive the following error message box:
Which disappears within 2-3 seconds and replaced with:
I then tried to check the Preferences page, but again, all I receive is error messages:
and:
Any idea why this is happening and how to fix this?
(I would love to be able to continue working from a LUA)
Update: I have uploaded the error log file (referred to in the "Show Error Log" in the message boxes), for your expert examination. Hopefully this can shed some light on the mystery.
The full answer is somewhat complex, concerning Eclipse's configuration area, the workspace area, etc. This is all documented on the Eclipse site, if you're interested.
But there's a simpler, more immediate approach, since you're not trying to run multiple users simultaneously on the same copy, over a network -- in which case you'd need the full answer.
Simply install Eclipse in a directory, say, C:/dev/Eclipse. Make sure both your limited user and your admin have write access to everything. Run Eclipse as the limited user. It should start right up, as there's nothing privileged that is needed by Eclipse.
At this point, you can lock it down as read-only if you desire. By default, all the configuration is stored within the Eclipse installation directory.
I'd suggest starting with a fresh install at this point, to eliminate any inconsistencies that you may have introduced. Though you should be able to reset things by deleting all the subdirectories of the configure/ directory (but not the config.ini). There's an official way to do that, but that's part of the full answer. :=)
I'd also suggest using a different workspace for each user, to avoid any permissions problems.
But my BIG suggestion is -- upgrade to Windows 7, and do NOT run Eclipse as an administrator!
Anyway, once you have it working -- to upgrade in the future, make the Eclipse directory completely writable by the limited user, and then update as the limited user, and then make it read-only again if needed.
Note: This is the cheating way. The REAL answer is to give each user their own configuration directory. This is only viable because you have control over both users and can coordinate any updates.
Try running eclipse by downloading the binary and unzipping and directly running the .exe rather than "installing" it. The android tools should work this way if you configure the appropriate paths to them, and if eclipse isn't "installed" but simply run from a the archive folder, it should try to download plugins and such into its own directory (owned by your user), which may solve your problem.
I doubt the Android developers who built the tools run under LUAs, so they probably didn't run into this problem...
Workaround found: Run Eclipse as Administrator (Right-click exe/shortcut, then select "Run as...", then enter Administrator's password).
This is a workaround, not a solution, but it does allow me to continue working while logged in LUA.
Thanks to #David who suggested this solution here: Android ADT Plugin doesn't show up in Eclipse
Update: Solution found:
Enable the Security tab in Windows XP Pro (""Use Simple File Sharing.")
Add the LUA account to C:\eclipse with Modify permissions.
That's it. No need to run Eclipse via "Run as". Also eliminates the need for a fresh install (which takes more time).