Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
Gradle for AndroidϵÁУºÎªÊ²Ã´GradleÕâô»ð
 
×÷Õߣºshixinzhang À´Ô´£º51CTO ·¢²¼ÓÚ£º2017-1-3
  2388  次浏览      27
 

Android Studio Õ¼ÁìÊг¡ºó£¬¹¹½¨¹¤¾ß Gradle µÄµØÎ»ÎÞÈËÄܱȣ¬ÎÒÃÇÓбØÒªÑ§Ï°¡¢Ê¹ÓÃËüÀ´ÎªÎÒÃÇ´´Ôì¼ÛÖµ¡£

ÔÚÉîÈëѧϰ Gradle ֮ǰ£¬ÎÒÃÇÓбØÒªÁ˽âÏÂËüΪʲôÕâôÁ÷ÐС£

Android Ó¦ÓõĹ¹½¨¹ý³Ì

Android Ó¦ÓóÌÐòµÄ¹¹½¨¹ý³Ì·Ç³£¸´ÔÓ£¬ÈçͼËùʾ£º

Android Ó¦ÓóÌÐòµÄ¹¹½¨¹ý³Ì·Ç³£¸´ÔÓ

Ö÷ÒªÓÐÒÔϼ¸²½£º

1.Ö÷ÒªµÄ×ÊÔ´Îļþ(layout, values µÈ)¶¼±» aapt ±àÒ룬²¢ÇÒÔÚÒ»¸ö R ÎļþÖÐÒýÓÃ

2.Java ´úÂë±» Java ±àÒëÆ÷±àÒë³É JVM ×Ö½ÚÂë(.class Îļþ)

3.JVM ×Ö½ÚÂëÔÙ±» dex ¹¤¾ßת»»³É dalvik ×Ö½ÚÂë(.dex Îļþ)

4.È»ºóÕâЩ .dex Îļþ¡¢±àÒë¹ýµÄ×ÊÔ´ÎļþºÍÆäËû×ÊÔ´Îļþ(±ÈÈçͼƬ)»á±»´ò°ü³ÉÒ»¸ö apk

5.apk ÎļþÔÚ°²×°Ç°»á±» debug/release µÄ key ÎļþÇ©Ãû

6.°²×°µ½É豸

¼¸¸ö×¢Òâµã

1.ÉÏÃæµÄ²½ÖèÖеÚÒ»²½×¢ÒâÊÇÖ÷ÒªµÄ×ÊÔ´Îļþ£¬ÓÐÐ©ÌØ±ðµÄ×ÊÔ´Îļþ¾Í²»»á±»±àÒ룬±ÈÈç assets Ŀ¼ÏµÄÎļþ£¬raw Ŀ¼ÏµÄÎļþ»¹ÓÐͼƬ£¬¶¼²»»á±»±àÒë¡£Ö»²»¹ý raw ϵÄÎļþ»áÔÚ R ÎļþÀïÉú³É id

2.Èç¹û¶Ô apk ÕýʽǩÃû£¬»¹ÐèҪʹÓà zipalign ¹¤¾ß¶Ô apk ½øÐÐ¶ÔÆë²Ù×÷£¬ÕâÑù×öµÄºÃ´¦Êǵ±Ó¦ÓÃÔËÐÐʱ»á¼õÉÙÄÚ´æµÄ¿ªÏú

ͨ¹ýÉÏÃæµÄ½éÉÜ¿ÉÒÔ¿´µ½£¬Õâô¸´ÔӵĹ¹½¨¹ý³ÌÈç¹ûÐèÒªÈËÊÖ¶¯È¥Íê³ÉδÃâÌ«¹ý²ÐÈÌ£¬ÓÚÊÇÓÐÁ˸÷ÖֵĹ¹½¨¹¤¾ß¡£

Android ¹¹½¨µÄ¾É°®£ºAnt, Maven

ÔÚ Gradle ֮ǰ±»¹ã·ºÊ¹ÓõÄÊÇ Apache Ant ºÍ Maven¡£

Ant

Ant 2000 Äê·¢²¼£¬ºÜ¿ì³ÉΪ Java ÏîÄ¿×îÁ÷ÐеĹ¹½¨¹¤¾ß¡£

Ant µÄÓŵã¾ÍÊÇ£º

1.¼òµ¥¡¢Ò×ѧ£¬²»ÐèÒªÊ²Ã´ÌØÊâ×¼±¸¾ÍÄÜÉÏÊÖ

2.»ùÓÚ¹ý³Ìʽ±à³Ì˼ÏëʹµÃ¹¹½¨·Ç³£Áé»î

3.ºóÀ´»¹ÄÜÖ§³Ö²å¼þ¡£

²»×ãÖ®´¦¾ÍÊÇʹÓà XML ×÷Ϊ½Å±¾ÅäÖøñʽ£¬³ý·ÇÊǺÜСµÄÏîÄ¿£¬·ñÔòËüµÄ XML ÎļþºÜ¿ì¾Í´óµÃÎÞ·¨¹ÜÀí¡£

Maven

Maven ·¢²¼ÓÚ 2004 ÄꡣĿµÄÊǽâ¾öʹÓà Ant Ëù´øÀ´µÄһЩÎÊÌâ¡£

Maven Ò²ÊÇʹÓà XML ×÷Ϊ¹¹½¨ÅäÖõÄÎļþ¸ñʽ£¬²»¹ýÎļþ½á¹¹È´ÓÐÁ˾޴óµÄ±ä»¯£º

1.Ant ÐèÒª¿ª·¢Õß½«Ö´ÐÐ task ËùÐèµÄÈ«²¿ÃüÁî¶¼ÁгöÀ´

2.¶ø Maven ÒÀ¿¿Ô¼¶¨²¢ÌṩÏֳɵĿɵ÷ÓõÄÄ¿±ê

²»½öÈç´Ë£¬Maven ¸üÖØÒªµÄÒ»¸ö½ø²½ÊǾ߱¸´ÓÍøÂçÉÏ×Ô¶¯ÏÂÔØÒÀÀµµÄÄÜÁ¦(µ±È» Ant ºóÀ´Í¨¹ý Ivy Ò²¾ß±¸ÁËÕâ¸ö¹¦ÄÜ)£¬Õâ¸ïÃüÐԵظıäÁËÎÒÃÇ¿ª·¢Èí¼þµÄ·½Ê½¡£

Maven µÄȱµãÊÇ£º

1.ÒÀÀµ¹ÜÀí²»Äܺܺõش¦ÀíÏàͬ¿âÎļþ²»Í¬°æ±¾Ö®¼äµÄ³åÍ»(IvyÔÚÕâ·½Ãæ¸üºÃһЩ)

2.XML ×÷ΪÅäÖÃÎļþµÄ¸ñʽÓÐÑϸñµÄ½á¹¹²ã´ÎºÍ±ê×¼£¬¶¨ÖÆ»¯Ä¿±êºÜÀ§ÄÑ

Maven Ö÷Òª½â¾öÁËÒÀÀµ¹ÜÀíµÄÎÊÌ⣬Ȼ¶øÊ¹Óà XML µÄ´íÎóʹËüÖØµ¸¸²ÕÞ£¬Êµ¼ÊÉÏÓà Maven ºÜÄÑд³ö¸´ÔÓ¡¢¶¨ÖÆ»¯µÄ¹¹½¨½Å±¾£¬ÔÚ´óÐÍÏîÄ¿ÖУ¬Ëü¾­³£Ê²Ã´¡°ÌرðµÄ¡±Ê»¹Ã»¸É¾ÍÓм¸°ÙÐдúÂ룬ÉõÖÁ²»Èç Ant¡£

ǰ±²ÃÇÔÚ·´Ê¡Ç°Á½ÖÖ¹¹½¨¹¤¾ßµÄ´íÎóÖ®ºó£¬Ìá³öÁË DSL (Domain Special Language, ÁìÓòרÓÃÓïÑÔ)µÄ¸ÅÄĿ±êÊÇÉè¼ÆÒ»Ì×Äܹ»½â¾öÌØ¶¨ÁìÓòÎÊÌâµÄÓïÑÔ¡£ÔÚ¹¹½¨Õâ·½Ãæ£¬DSL µÄÒ»¸ö³É¹¦°¸Àý¾ÍÊÇ Gradle¡£

Android ¹¹½¨µÄл¶£ºGradle

2012 Äê·¢²¼µÄ Gradle Éî¿ÌÎüÈ¡Ç°Ãæ¼¸Î»Ç°±²µÄ¾­ÑéºÍ½Ìѵ£¬¼¯´ó¼ÒÖ®Ëù³É£¬×öÁ˺ܶà¸Ä½ø¡£

Gradle ÓÐÔ¼¶¨ÓÅÓÚÅäÖõÄÔ­Ôò£¬¼´ÎªÉèÖúÍÊôÐÔÌṩĬÈÏÖµ£¬ÕâʹµÃËü±È Ant »òÕß Maven ¸üÈÝÒ×ÉÏÊÖ¡£

Gradle ¹¹½¨½Å±¾²»ÔÙʹÓà xml £¬¶øÊÇʹÓûùÓÚ Groovy µÄ DSL ½øÐÐÊéд(Groovy ÊÇÒ»ÖÖ»ùÓÚ Java ÐéÄâ»úµÄ¶¯Ì¬ÓïÑÔ£¬Òò´Ë Android ¿ª·¢Õß¿´×Å»áºÜÊìϤ)£¬´Ó¶øÊ¹µÃ¹¹½¨½Å±¾±ÈÓà Ant ºÍ Maven дµÄ¸üÇåÎú¡¢¼ò½à£¬ÏÂÃæÊÇʵÏÖͬÑùÄ¿±êµÄ Maven ´úÂëºÍ Gradle ´úÂë¶Ô±È£º

Gradle ¼ÈÓÐ Ant µÄÇ¿´óºÍÁé»î£¬ÓÖÓÐ Maven µÄÒÀÀµ¹ÜÀí£¬Ö§³Ö²å¼þÇÒÒ×ÓÚʹÓá£Òò´ËÒ»ÍÆ³ö¾Í»ñµÃ¹ã·º¹Ø×¢£¬2013 Äê±» Google ѡΪ Android Studio µÄĬÈϹ¹½¨¹¤¾ß¡£

Gradle Éè¼ÆµÄ·½Ê½Ê¹µÃËü¿ÉÒÔºÜÈÝÒ×µØÀ©Õ¹¹¹½¨ºÍ²åÈëµ½ÏÖÓеĹ¹½¨¹ý³ÌÖУ¬Google ÍÆ¹ã Gradle ºÍ Android Studio ʱ£¬Ä¿±êÊÇÈôúÂ븴Óᢹ¹½¨ variant¡¢ÅäÖúͶ¨Öƹ¹½¨¹ý³Ì±äµÃ¸ü¼Ó¼òµ¥¡£

ÓÐÈË¿ÉÄܵ£ÐÄÊÇ·ñÐèҪרÃÅȥѧϰÐÂÓïÑÔ Groovy£¬¡¶Gradle for Android¡·ÊéÖÐרÃÅÌáµ½£º

Groovy ´úÂë·Ç³£Ò×¶Á£¬Èç¹ûÄãѧϰ¹ý Java£¬ÄÇôѧϰ Groovy µÄÇúÏß²»»á¶¸ÇÍ¡£ Èç¹ûÄãÏë¹¹½¨×Ô¼ºµÄÈÎÎñºÍ²å¼þ£¬ÄÇô¶Ô Groovy ÓиüÉî²ã´ÎµÄÀí½âÓÈÎªÖØÒª¡£ ²»¹ýÒòΪ Groovy ÊÇ»ùÓÚ Java ÐéÄâ»úµÄ£¬ËùÒÔÄãÍêÈ«¿ÉÒÔÓà Java »òÕ߯äËû»ùÓÚ Java ÐéÄâ»úµÄÓïÑÔÀ´±àдÄãµÄ×Ô¶¨Òå²å¼þ¡£

Gradle µÄ¹Ø¼ü¸ÅÄî¼°¹¹½¨ÉúÃüÖÜÆÚ

Gradle ÖÐÁ½¸ö¹Ø¼üµÄ¸ÅÄÏîÄ¿ºÍÈÎÎñ¡£

ÿ¸ö build.gradle ¹¹½¨½Å±¾Îļþ´ú±íÒ»¸öÏîÄ¿ project:

ÿ¸ö build.gradle ¹¹½¨½Å±¾Îļþ´ú±íÒ»¸öÏîÄ¿ project

ÈÎÎñ task ¶¨ÒåÔÚ¹¹½¨½Å±¾Àï:

ÿ´Î¹¹½¨ÖÁÉÙ°üÀ¨Ò»¸öÏîÄ¿£¬Ã¿¸öÏîÄ¿ÀïÓÖÖÁÉÙ°üÀ¨Ò»¸öÈÎÎñ¡£

¹¹½¨ÉúÃüÖÜÆÚ

Ò»¸ö Gradle ¹¹½¨Í¨³£°üÀ¨ÏÂÃæÈý¸ö½×¶Î£º

1.³õʼ»¯

ÏîĿʵÀý»áÔÚÕâʱ±»´´½¨£¬Èç¹ûÕâ¸öÏîÄ¿ÀïÓжà¸ö module£¬»òÕßÒÀÀµ¶à¸ö library£¬²¢ÇÒËüÃǶ¼ÓжÔÓ¦µÄ build.gradle Îļþ£¬¾Í»á´´½¨¶à¸öÏîĿʵÀý

2.ÅäÖÃ

ÔÚÕâ¸ö½×¶Î¹¹½¨½Å±¾±»Ö´ÐУ¬²¢ÇÒΪÿ¸öÏîĿʵÀý´´½¨ºÍÅäÖÃÈÎÎñ

3.Ö´ÐÐ

ÔÚÕâ¸ö½×¶Î Gradle ½«¸ù¾Ý¹¹½¨½Å±¾µÄÅäÖþö¶¨ÄÄЩÈÎÎñ»á±»Ö´ÐÐ

²»Í¬ÈÎÎñÖ®¼ä¿ÉÄÜÓÐ Ï໥ÒÀÀµ£¬Òò´ËÔÚÅäÖý׶ΠGradle »áÉú²úÒÀÀµ¹ØÏµÍ¼£¬Ã»ÓÐÒÀÀµµÄÈÎÎñͨ³£»á±»ÓÅÏÈÖ´ÐУ¬È»ºóÒ»¸ö½ÓÒ»¸öÖ´ÐÐÆäËûÈÎÎñ¡£Ò»µ©Ò»¸öÈÎÎñ±»Ö´Ðйý£¬¾Í²»»á±»ÔÙ´ÎÖ´ÐС£

Gradle Wrapper

Gradle ÔÚ²»¶ÏµÄ·¢Õ¹£¬ÓпÉÄÜ´æÔÚа汾²»¼æÈݾɰ汾µÄÇé¿ö£¬ÓÚÊǹٷ½ÎªÎÒÃÇÌṩÁË Gradle Wrapper£¬¾ÍÊÇΪÁ˼æÈݺÍÊÊÅ䲻ͬ°æ±¾£¬È·±£¹¹½¨ÊÇ¿ÉÖØ¸´µÄ¡£

ÆÕͨµÄ Gradle ½Å±¾ÃüÁîÊÇ£º

gradle ... 

¶ø Gradle Wrapper ÃüÁîÖ»ÊÇÔÚ gradle ºó¼ÓÁ˸ö w:

gradlew ... 

ÔÚ Mac ÏÂÂÔ΢ÓÐЩ²»Í¬£º

./gradlew ... 

¿ª·¢Õß»òÕß×Ô¶¯¹¹½¨ÏµÍ³¿ÉÒÔͨ¹ýʹÓà wrapper À´ÔËÐÐ gradle ÃüÁÓÉËüÀ´¸ã¶¨¼æÈݵÈÎÊÌâ¡£Òò´ËÎÒÃÇÉõÖÁ¶¼²»ÐèÒª°²×° gradle£¬Ö±½ÓʹÓà gradle wrapper ¼´¿É£¬¾ÍÏñ Android Studio ÀïÍÆ¼öµÄÒ»Ñù£º

ÉÏͼÎÒ²¢Ã»ÓÐʹÓà wrapper£¬ÊÇÒòΪµ±ÄãÔËÐÐ gradlew ÃüÁîʱ£¬gradle wrapper »á×Ô¶¯ÏÂÔØÐèÒªµ«ÊÇÄãûÓÐµÄ gradle °æ±¾²¢Ê¹ÓᣠÕâÔÚ¶àÈËЭ×÷ʱ£¬ºÜ¿ÉÄÜÒòΪ±ðÈËÐÞ¸ÄÁË gradle °æ±¾¡¢ÉÏ´«µ½ git£¬È»ºóµ¼ÖÂÄãÔËÐÐÃüÁîʱÐèÒªÏÂÔØ°ëÌì¡£

²»¹ý¹Ù·½»¹ÊÇÍÆ¼öʹÓà wrapper£¬±Ï¾¹ÕâÑù¸üÎȶ¨¡£

×ܽá

ÕâÆªÎÄÕÂ¶Ô±È Ant ºÍ Maven ½éÉÜÁË Gradle µÄһЩÓŵãºÍ»ù´¡¸ÅÄÔÚÀí½â Gradle Ϊʲô»á±»Ê¹Óá¢ËüÓÐʲôÓŵãÖ®ºó£¬ÓÐÖúÓÚÎÒÃǺóÐøÉîÈëѧϰ Gradle µÄʹÓá£

 

   
2388 ´Îä¯ÀÀ       27
 
Ïà¹ØÎÄÕÂ

ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖÓë̽ÌÖ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
 
Ïà¹ØÎĵµ

Android_UI¹Ù·½Éè¼Æ½Ì³Ì
ÊÖ»ú¿ª·¢Æ½Ì¨½éÉÜ
androidÅÄÕÕ¼°ÉÏ´«¹¦ÄÜ
Android½²ÒåÖÇÄÜÊÖ»ú¿ª·¢
Ïà¹Ø¿Î³Ì

Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
Androidϵͳ¿ª·¢
AndroidÓ¦Óÿª·¢
ÊÖ»úÈí¼þ²âÊÔ
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

androidÈË»ú½çÃæÖ¸ÄÏ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
AndroidÊÖ»ú¿ª·¢£¨¶þ£©
AndroidÊÖ»ú¿ª·¢£¨Èý£©
AndroidÊÖ»ú¿ª·¢£¨ËÄ£©
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖ̽ÌÖ
ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
ÊÖ»úÈí¼þ×Ô¶¯»¯²âÊÔÑо¿±¨¸æ


Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
AndroidÓ¦Óÿª·¢
Androidϵͳ¿ª·¢
ÊÖ»úÈí¼þ²âÊÔ
ǶÈëʽÈí¼þ²âÊÔ
AndroidÈí¡¢Ó²¡¢ÔÆÕûºÏ


ÁìÏÈIT¹«Ë¾ android¿ª·¢Æ½Ì¨×î¼Ñʵ¼ù
±±¾© Android¿ª·¢¼¼Êõ½ø½×
ijÐÂÄÜÔ´ÁìÓòÆóÒµ Android¿ª·¢¼¼Êõ
ijº½Ì칫˾ Android¡¢IOSÓ¦ÓÃÈí¼þ¿ª·¢
°¢¶û¿¨ÌØ LinuxÄÚºËÇý¶¯
°¬Ä¬Éú ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ
Î÷ÃÅ×Ó Ç¶Èëʽ¼Ü¹¹Éè¼Æ