我最近从Eclipse升级到Android Studio,但我并不喜欢这种体验。我比较的是Windows 7 64位终极版,16GB内存,英特尔i7 4770运行NVidia Geforce 780,如果重要的话,我运行的是最新的JDK和最新的Android Studio。

Android Studio在构建项目时非常缓慢,我可以接受,但它也非常消耗资源,有时会使PC速度变慢。

每当我在AS中构建或运行任何东西时,我的PC似乎变得极其缓慢。如果我点击“Gradle build running”旋转器,它也会导致屏幕闪烁,偶尔会让我的第二个显示器空白,我觉得这很奇怪。内存的使用也飙升到3GB,我发现什么都不做就过度了(这是在几次构建后空闲的时候)。

此外,AS底部的面板一直在跳来跳去,这是一种糟糕的用户体验(从Android移动到消息到版本控制或其他任何临时的基础上,这取决于正在发生的事情,这是非常非常恼人的)。

我想知道的基本上是:

1)如何让Android Studio运行得更好?我可能做错了什么,或者错过了一些我不知道的更新,我相信其他人也注意到了这些行为,并找到了一些解决方案。

2)我如何“钉”底部面板,使他们不跳,而是让我,用户,导航到他们当我希望而不是自动切换他们?

非常感谢,如果这不是这些问题的正确位置,我再次道歉。

编辑1 更多评论:

我使用的是今天最新的稳定版本。这个版本是Android Studio 1.2.2 build # AI-141.1980579,于2015年6月3日发布 这种行为发生在使用Java 7或Java 8时。它似乎与Java版本无关。 我没有使用演示模式。只是普通的观点。 对构建配置进行更改(感谢@Blackbelt和他的回答)似乎对构建有所帮助,但迟缓和一般用户体验等其他问题仍然存在。


当前回答

在您学习的过程中,诊断As的性能问题并非易事!在我的例子中,一个9215字符长的字符串数组(见下文)导致AS在我每次输入几个字符时转储线程。线程转储反过来导致AS一次冻结数秒。此错误出现在Windows 64位的AS 2.2版本中,在2.2.1中仍然出现,但在2.1中没有出现。

发现长字符串导致了我的锁定涉及了大量的试验和错误。但是,在这个过程中我学到了很多,比如:

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.

顺便说一句,目前我已经通过将我的长字符串移动到一个单独的文件(一个只包含数组本身的新类)来解决上面描述的问题。我尽量不使用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) ...
}

其他回答

提高android studio运行时性能的最佳方法是使用SSD Drive。这将极大地提高性能。我做了以上所有的事情,觉得我应该去买一台新的笔记本电脑,但突然我知道了SSD驱动器,我尝试了一下。Its Much Much better.....

单击帮助>编辑自定义属性并添加这一行:

sun.java2d.noddraw=false

... 为我成功地解决了速度问题(Windows 10 64位)。就我而言,这是绝对的巫毒(我没有做过任何研究为什么它应该工作),在这个属性上面有一个警告,它可能会导致闪烁和无法在某些显卡上重新绘制,但你还是去吧。(受LairdPleng的评论启发,进一步信息)

总结一下

1)在AndroidStudio的设置> compile启用名为compile独立模块并行的复选框。

2)在帮助>编辑自定义虚拟机选项我有:

-Xms1024m 
-Xmx4096m # <------ increase this to most of your RAM 
-XX:MaxPermSize=1024m 
-XX:ReservedCodeCacheSize=440m 
-XX:+UseCompressedOops 
-XX:-HeapDumpOnOutOfMemoryError 
-Dfile.encoding=UTF-8

附注:有些人说注意,而不是虚拟机选项,它是更好的组合可以通过组合成一行命令在gradle覆盖这些行。属性,像这样:

org.gradle。jvmargs=-Xms1024m -Xmx4096m…

3)我有一个老的双核4GB内存,运行ubuntu。Qs命令行选项我只有——offline(它指定构建应该在不访问网络资源的情况下运行)。我还启用了其余的复选框,现在它运行正常:

自动制作项目 使用进程内构建按需配置 检查AndroidStudio的设置,在compile下的复选框“并行编译独立模块”已启用。

在Vmoptions下,我有

-Xmx2048m -XX:MaxPermSize=1024

我有一个老的双核4GB内存,运行ubuntu。Qs命令行选项我只有——offline,它指定构建应该在不访问网络资源的情况下运行。我还启用了其余的复选框:

自动制作项目 使用过程中构建 按需配置 运行正常

Edit

可以通过工作室提供额外的选项。vmoptions位于(只需将X.X替换为version):

Windows:转到%USERPROFILE%\. androidstudix . x \studio.exe。Vmoptions(或studio64.exe.vmoptions) 麦克:~ /图书馆/ / .AndroidStudioX.X / studio.vmoptions偏好 Linux: ~ / .AndroidStudioX.X /工作室。Vmoptions(和/或studio64.vmoptions)

增加-Xmx的值应该会有很大帮助。如

-Xms1024m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=256m
-XX:+UseCompressedOops

将分配4G作为最大堆,初始值为1G

编辑:

在windows上,默认值存储在C:\Program Files\Android\Android Studio\bin\*.vmoptions中。IDE允许您通过Help->编辑自定义虚拟机选项来调整这些值(感谢@Code-Read指出这一点)。

编辑2:

Android studio 3.5更容易更改这些值。请访问:

Preferences > Appearance & Behavior > System Settings > Memory Settings

嗯,对我来说有用的一件事是使用物理android设备而不是模拟器。在我的个人电脑(i5和4GB RAM)中,android工作室占用大约700MB内存,模拟器占用另外700 mb内存。因此,计算机的整体性能下降。使用物理设备可以节省模拟器带来的压力。

在情况设置-Xmx4096m -XX:MaxHeapSize=256m(等。在上面提到的答案)做的工作,然后手动做这个:

步骤1:启动Android studio并关闭任何打开的项目(文件>关闭项目)。

步骤2:进入“Welcome”界面,进入“Configure > Settings”。

步骤3:选择构建、执行、部署>编译器

步骤4:将“Build process heap size (Mbytes)”修改为1024,“Additional Build process to VM Options”修改为-Xmx512m。

第五步:关闭或重启Android Studio。