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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Cocoa°ü¹ÜÀíÆ÷Ö®CocoaPodsÏê½â
 
  1832  次浏览      27
 2018-6-1
 
±à¼­ÍƼö:
±¾ÎÄÀ´×ÔÓÚ²©¿Í,±¾ÎÄÖ÷Òª½éÉÜÁËCocoaPodsµÄʹÓ÷½Ê½ºÍ¹¤×÷Ô­Àí£¬Ï£Íû¶ÔÄúµÄѧϰÓаïÖú¡£

CocoaPodsÔÚCocoa¿ª·¢ÈÕ³£¹¤×÷Öо­³£Óõ½µÄ°ü¹ÜÀíÆ÷£¬¼´ÒÀÀµ¹ÜÀí¹¤¾ß¡£ÓеÄÏîĿҲÓÐÓÃCarthageµÄ£¬CarthageÊÇÒ»¸ö±È½ÏеÄÒÀÀµ¹ÜÀí¹¤¾ß£¬ÊÇʹÓÃSwiftÓïÑÔ¿ª·¢µÄ¡£

CocoaPodsÊǸöÀÏÉú³£Ì¸µÄ»°Ìâ¡£

Ò»¡¢What is CocoaPods

Ê×ÏÈÀ´¿´Ò»ÏÂʲôÊÇCocoaPods, Ï·½ÊÇCocoaPods¹ÙÍøÉ϶ÔCocoaPodsµÄ½âÊÍ¡£

CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has over 45 thousand libraries and is used in over 3 million apps. CocoaPods can help you scale your projects elegantly.

ÉÏÃæ´ó¸ÅÒâ˼ÊÇCocoaPodsÊÇSwiftºÍObjective-CÓïÑÔÖÐCocoaÏîÄ¿ÖÐÒÀÀµµÄ¹ÜÀí¹¤¾ß¡£ÆäÖк­¸ÇÁË4.5Íò¸ö¿â£¬±»300Íò¸öAppʹÓá£CocoaPods¿ÉÒÔ°ïÖúÄãÓÅÑŵÄÀ©´ÓÄãµÄÏîÄ¿¡£

¼òµ¥µã¶ù˵CocoaPods¾ÍÊÇCocoa¹¤³ÌÖб»¹ã·ºÊ¹Óõİü¹ÜÀíÆ÷¡£

¶þ¡¢Install CocoaPods

¿´Íê½éÉÜ£¬½ÓÏÂÀ´¼òµ¥¿´Ò»ÏÂCocoaPodsµÄ°²×°¡£CocoaPodsµÄ±àÒëºÍÔËÐÐÐèÒªRuby»·¾³µÄÖ§³Ö¡£ÔÚOS XÉÏÒѾ­Ä¬Èϰ²×°ÁËRuby»·¾³£¬¹Ù·½ÍƼöʹÓÃĬÈϵÄRuby»·¾³¡£

¿ÉÒÔͨ¹ýÏ·½µÄÃüÁîÀ´°²×°CocoaPods¡£ÔÚ°²×°Ê±ÐèÌí¼ÓÉÏsudo, ʹÓÃϵͳȨÏÞÀ´½øÐа²×°¡£Ï·½µÄÃüÁîÒ²¿ÉÒÔÓÃÀ´¸üÐÂCocoaPods

°´ÕÕÃüÁsudo gem install cocoapods
Ð¶ÔØÃüÁgem uninstall cocoapods

ÒòΪÎҵı¾µØÖ®Ç°ÒѾ­°²×°¹ýCocoaPods, Ï·½ÊǽøÐеĸ²¸Ç°²×°£¬Ò²Ï൱ÓÚ¸üÐÂÁË¡£¾ßÌåÈçÏÂËùʾ

Èý¡¢Get Started

°²×°ÍêCocoaPodsºó£¬À´¿´Ò»ÏÂCocaPodsµÄ¼òµ¥Ê¹Óá£ËäÈ»ÔÚ֮ǰµÄ²©¿ÍÖв»Ö¹Ò»´ÎµÄÓõ½CocoaPods, µ«ÊÇÔÚ±¾Æª²©¿Í°²×°ÍêCocoaPodsºó£¬½ÓÏÂÀ´ÎÒÃÇÀ´¼òµ¥µÄ¸ÐÊÜÒ»ÏÂCocoaPodsµÄ¾ßÌåʹÓá£

1¡¢Create Podfile

ÔÚCocoaPods¹ÜÀíµÄ¹¤³ÌÖÐͨ¹ýÃûΪPodfileµÄÎı¾ÎļþÀ´ÃèÊöÏà¹ØµÄÒÀÀµÐÅÏ¢¡£Ï·½¾ÍÊÇÔÚÎÒÃÇÒÑÓеŤ³ÌÖд´½¨ÁËÒ»¸öPodfileÎļþ£¬½«Ï·½µÄÄÚÈÝÊäÈëµ½ÎļþÖС£ÔÚ¸ÃÎļþÖÐͨ¹ýpodÀ´ÒýÈëÏà¹ØµÄ²Ö¿â£¬ºó·½¸úµÄÊDzֿâµÄ°æ±¾ºÅ¡£Ï·½µÄuse_frameworks!Ôò±íÃ÷ÒÀÀµµÄ¿â±àÒëÉú³É.frameworkdsµÄ°ü£¬¶ø²»ÊÇ.aµÄ°ü¡£

platform :ios, '9.0'
use_frameworks!

target 'CocoaPodsTestProject' do
pod 'AFNetworking', '~> 2.6'
end

Ï·½¾ÍÊÇ´´½¨PodfileÎļþ£¬È»ºó½«ÉÏÊöµÄÄÚÈÝÊäÈëµ½¸ÃÎļþÖС£

ÉÏÃæµÄplatformÖ¸¶¨µÄ°æ±¾ÊÇ²Ö¿â¼æÈݵÄ×îС°æ±¾¡£targetÔòÖ¸¶¨µÄÊÇ×÷ÓÃÓÚ¹¤³ÌÖеÄÄǸöÄ¿±ê¡£podÔòÓÃÀ´Ö¸¶¨Ïà¹ØµÄ²Ö¿â¼°²Ö¿â°æ±¾¡£Ï·½ÊÇÏà¹Ø²Ö¿â°æ±¾µÄ¼¸ÖÖ³£¼ûµÄÖ¸¶¨·½Ê½£º

pod 'xxxx' : ºó·½Ã»ÓÐÖ¸¶¨°æ±¾£¬Ôò±íʾʹÓòֿâµÄ×îа汾¡£

pod 'xxxx', '2.3' : ʹÓÃxxxx²Ö¿âµÄ2.3°æ±¾¡£

pod 'xxxx', '~>2.3': Ôò±íʾʹÓõİ汾·¶Î§ÊÇ 2.3 <= °æ±¾ < 3.0¡£Èç¹ûºó·½Ö¸¶¨°æ±¾ÊÇ~>2.3.1, ÄÇôÔò±íʾʹÓõİ汾·¶Î§ÊÇ 2.3.1 <= °æ±¾ < 2.4.0¡£

pod 'xxxx', '>2.3': ʹÓôóÓÚ2.3µÄ°æ±¾¡£

pod 'xxxx', '>=2.3': ʹÓÃ2.3¼°ÒÔÉϵİ汾¡£

pod 'xxxx', '<2.3': ʹÓÃСÓÚ2.3µÄ°æ±¾¡£

pod 'xxxx', '<=2.3': ʹÓÃСÓÚµÈÓÚ2.3µÄ°æ±¾¡£

³ýÁËÉÏÊöµÄ°æ±¾Ö¸¶¨·½Ê½£¬ÎÒÃÇ»¹¿ÉÒÔͨ¹ýÖ¸¶¨Ïà¹Ø´úÂë²Ö¿âµÄ·¾¶À´Ö¸¶¨Ïà¹ØµÄÒÀÀµ£¬±ÈÈçʹÓÃpathÀ´Ö¸¶¨±¾µØµÄÏà¹Ø²Ö¿â£¬Ê¹ÓÃgitÀ´Ö¸¶¨Ô¶¶ËµÄgit²Ö¿â¡£Ï·½Êdz£Óõļ¸ÖÖ·½Ê½£º

pod 'xxx', :path => '±¾µØ´úÂë²Ö¿âµÄ·¾¶/xxx.podspec' #ʹÓø÷½Ê½¿ÉÒÔÖ¸¶¨±¾µØ´æÔÚµÄÒÀÀµÂ·¾¶(podspecÎļþÉÔºó»á½á½éÉܵ½)¡£

pod 'xxx', :git => 'git²Ö¿âµØÖ·' #¿ÉÒÔͨ¹ýgit²Ö¿âµØÖ·À´¼ÓÔØÏà¹ØÒÀÀµ¡£

pod 'xxx', :git => '±¾µØ´úÂë²Ö¿âµÄ·¾¶', :tag => '2.2.2' :#ºó·½¿ÉÒÔ¸ú:tag²ÎÊýÀ´Ö¸¶¨Ïà¹ØµÄtagºÅ¡£µ±È»ºó±ß»¹¿ÉÒÔͨ¹ý:branch => '·ÖÖ§ºÅ'À´Ö¸¶¨ÒÀÀµÓÚij¸ö·ÖÖ§£¬Í¨¹ý:commit => 'commitºÅ'À´Ö¸¶¨ÄǸöÌá½»¡£

2¡¢Pod Install

ÅäÖÃÍêPodfileÎļþ£¬½ÓÏÂÀ´¾ÍÊǸÃÔÚÏà¹ØµÄ¹¤³ÌÖа²×°Ïà¹ØµÄÒÀÀµÁË¡£Ï·½Ê¹ÓÃÁËpod installÀ´°²×°Ïà¹ØµÄÒÀÀµ£¬Ê¹ÓÃpod updateÀ´¸üÐÂÏà¹ØµÄÒÀÀµ¡£ÔÚ°²×°ÒÀÀµÊ±»áÌáʾ°²×°ÁËÄÄЩÒÀÀµµÄ¿â¡£ÒòΪCocoaPodsÔÚ°²×°ºó»áÐÞ¸ÄÎÒÃǵÄXcode¹¤³Ì£¬Éú³ÉÒ»¸ö¹¤×÷¿Õ¼ä£¬Õâ¸ö¹¤×÷¿Õ¼äÓÉÎÒÃǵÄProject¹¤³ÌºÍPods¹¤³Ì×é³É£¬ÎÒÃÇËùÒÀÀµµÄ²Ö¿â¾ÍλÓÚÕâ¸öPods¹¤³ÌÖУ¬ËùÒÔ°²×°Íê±ÏºóÌáʾҪͨ¹ýxxxx.xcworkspaceÎļþÀ´´ò¿ªÕû¸ö¹¤³Ì¡£pod installÍê±Ïºó£¬ÎÒÃǻᷢÏÖÕû¸ö¹¤³ÌÖжàÁËһЩÎļþ£¬±ÈÈçxxxx.xcworkspace¡¢Pods¡¢Podfile.lockµÈ¡£ÎÒÃǾÍͨxxxx.xcworkspaceÀ´´ò¿ªÏà¹ØÎļþ£¬ÆäËûÎļþÉÔºó»á½éÉܵ½¡£

Ï·½¾ÍÊÇÎÒÃÇͨ¹ýopen CocoaPodsTestProject.xcworkspace´ò¿ªµÄÏà¹Ø¹¤³Ì¡£Ï·½µÄPodsÖоͰüÀ¨Ïà¹ØÒÀÀµµÄ²Ö¿â¡£ÎÒÃǾͿÉÒÔÔÚÎÒÃǵŤ³ÌÖÐÖ±½ÓÒýÈëʹÓÃËùÒÀÀµµÄ²Ö¿âÁË¡£ÉÏÃæÒ²Ìáµ½ÁË£¬°²×°ºó»áÉú³ÉÒ»¸ö¹¤×÷¿Õ¼äworkspace¡£¸Ãworkspace¾ÍÓÉÎÒÃÇÔ­ÓеŤ³ÌºÍÐÂÔöµÄPods¹¤³Ì×é³É¡£Í¨¹ýCocoaPods¹ÜÀíµÄÒÀÀµ¿â¶¼»á·ÅÔÚÕâ¸öPods¹¤³ÌÖС£¾ßÌåÈçÏÂËùʾ£º

3¡¢Ëø°æÎļþ podfile.lock

ÉÏÃæ¼òµ¥µÄÌáÁËÒ»ÏÂpodfile.lockÎļþ¡£Õ¦°²×°Ö®Ç°ÎÒÃÇ´´½¨ÁËÒ»¸ö½Ð×ö podfile µÄÒÀÀµÏà¹ØµÄÃèÊöÎļþ¡£ÔÚpod installºó»áÉú³ÉÒ»¸ö½Ð×öpodfile.lockµÄÎļþ¡£Ï·½½ØÍ¼ÖÐÊǸÃÎļþÖеÄÏà¹ØÄÚÈÝ¡£ÆäÖмǼÁËĿǰÒÀÀµµÄһЩ²Ö¿âÒÔ¼°Ò»Ð©°æ±¾£¬¸ÃÎļþµÄÄ¿µÄ¾ÍÊÇËø¶¨ÒÀÀµ²Ö¿â°æ±¾µÄ¡£¸Ã podfile.lock ±¾ÖÊÉÏÊÇÓÃÀ´Ëø°æ±¾µÄ£¬ÎªÁ˱ÜÃâ°æ±¾²»Ò»ÖµÄÇé¿ö·¢Éú¡£

ÎÒÃÇÀ´¿´Ò»ÏÂÈç¹ûûÓÐPodfile.lockÎļþ£¬»á·¢ÉúʲôÇé¿ö¡£µ±ÔÚ podfile ÖÐÌí¼ÓÁËÏà¹ØÒÀÀµ²Ö¿â£¬µ«ÊÇûÓÐÌí¼ÓÏà¹ØµÄÒÀÀµ²Ö¿âµÄ°æ±¾£¬ÄÇôÔÚÿ´Î pod insall ʱ¶¼»á°²×°¸Ã²Ö¿â×îеİ汾¡£µ±Ò»¸ö¹¤³ÌÓжà¸öÈË¿ª·¢Ê±£¬Aͬѧ ÔÚ Bͬѧ ֮ǰ½øÐеÄpod install, ¶øÔÚAͬѧ°²×°ºóһЩ²Ö¿â½øÐÐÁ˸üУ¬ÄÇôÔÚ Bͬѧ °²×°²Ö¿âʱ¾Í»áѰÕÒÕâ¸ö×îеİ汾¡£ÄÇôÕâÖÖÇé¿öϾͻá³öÏÖͬһ¸ö¹¤³ÌÖÐËùÒÀÀµµÄ²Ö¿â°æ±¾²»Ò»ÖµÄÎÊÌ⡣ΪÁ˽â¾öÕâ¸ö°æ±¾²»Ò»ÖµÄÎÊÌ⣬ÓÚÊǺõ¾ÍÒýÈëÁËPodfile.lockÕâ¸öËù°æ±¾ÓõÄÎļþ¡£µ±È»ÔÚ¿ò¼ÜÖеİü¹ÜÀíÆ÷ÖÐÒ²ÊÇ´æÔÚÀàËÆµÄlockÎļþµÄ£¬±ÈÈç node.js ÖеÄnpm°ü¹ÜÀíÆ÷¡£

ÒýÈë podfile.lock Îļþºó£¬ÉÏÃæµÄ°æ±¾²»Ò»ÖµÄÎÊÌâ¾ÍºÜºÃµÄ½â¾öÁË¡£ÔÚÊ×´Î pod install ºó£¬»áÉú³ÉÒ»¸ö podfile.lock Îļþ£¬¸ÃÎļþÖлá¼Ç¼´Ë´Î install Ëù°²×°µÄ°æ±¾¡£µ±ÔٴνøÐÐ pod installʱ£¬¶ÔÄÇЩûÓÐÖ¸¶¨°æ±¾µÄÒÀÀµ²Ö¿â»áʹÓÃpodfile.lock ÎļþÖмǼµÄ°æ±¾¡£Èç¹ûÔÚ podfile ÖÐÖ¸¶¨ÁËÏà¹Ø°æ±¾£¬ÄÇô¾ÍÖ±½ÓÒýÓà podfile ÖÐÖ¸¶¨µÄ°æ±¾È»ºóÔÚ¸üРpodfile.lockÖмǼµÄ°æ±¾¼´¿É¡£

½ÓÏÂÀ´ÎÒÃÇͨ¹ý¾ßÌåʾÀýÀ´¿´Ò»Ï¸Ãpodfile.lockÎļþµÄ×÷Óá£ÎÒÃǽ«podfileÖеÄAFNetworkingµÄ°æ±¾ºÅ¸øÉ¾µô£¬È»ºóÔٴνøÐÐpod install¡£´Ë¿Ì²¢²»»á°²×°×îеÄAF°æ±¾£¬ÒòΪÔÚpodfile.lockÖÐÒѾ­¼Ç¼ÏÂÁ˵±Ç°Ê¹ÓõÄAF°æ±¾ÁË£¬ËùÒÔÔٴνøÐÐ pod install ʱÈÔÈ»»á¼ÓÔØ podfile.lockÖмǼµÄ°æ±¾¡£

µ±È»Äã¿ÉÒÔʹÓÃpod updateÃüÁîÀ´½øÐиüУ¬Ê¹podfile.lockÖмǼµÄ°æ±¾½øÐиüС£µ±È»Ò²¿ÉÒÔÔÚpodfileÎļþÖÐÖ¸¶¨Ïà¹ØÒÀÀµ²Ö¿âµÄ°æ±¾£¬È»ºóÔÙÖ´ÐÐpod installÀ´¸üÐÂÏà¹ØµÄ°æ±¾¡£¾ßÌåÈçÏÂËùʾ £º

ËÄ¡¢´´½¨²¢·¢²¼×Ô¼ºµÄ¿ªÔ´¿â

ÉÏÃæÈý¸ö²¿·Ö½éÉÜÁËÈçºÎÔÚ×Ô¼ºµÄÏîÄ¿Öа²×°ºÍʹÓÃCocoaPods£¬½ÓÏÂÀ´Õⲿ·Ö¾ÍÀ´½éÉÜÒ»ÏÂÈç¹û½«×Ô¼ºµÄ¿ªÔ´µÄ¿â½ÓÈëµ½CocoaPodsÖУ¬¿ÉÒÔÈÃÆäËûÈËÖ±½ÓÔÚPodfileÖÐÖ±½ÓÅäÖúó£¬pod install¾Í¿ÉÒÔʹÓá£Ï·½ÊÇÕâһϵÁеIJÙ×÷¡£

1¡¢´´½¨×Ô¼ºµÄ¿ªÔ´²Ö¿â

Ï·½ÒÔGithubΪÀý£¬Ê×ÏÈÎÒÃÇÔÚGithubÉÏ´´½¨ÁËÒ»¸öеIJֿâÓÃÀ´ÈÝÄÉÎÒÃÇÒª¿ªÔ´µÄ´úÂë¡£ÈçÏÂËùʾ£º

ÔÚNew Repositoryʱ£¬ Ñ¡Ôñ´´½¨¹«¹²²Ö¿â£¬È»ºó¹´Ñ¡ÉÏ´´½¨README£¬×îºó±ðÍüÁ˲¢Ñ¡Ôñ¿ªÔ´Ð­Òé¡£´Ë´¦ÎÒÃÇÑ¡ÔñµÄÊÇMITЭÒ飬Ï·½»á¶ÔGithubÉÏÖ§³ÖµÄ¿ªÔ´Ð­Òé½øÐнéÉÜ¡£

2¡¢Ö÷Á÷¿ªÔ´Ð­Òé½éÉÜ

GithubÖÐÖ§³ÖÁËÖ÷Á÷µÄ¼¸ÖÖ¿ªÔ´Ð­Ò飬È磺Apache¡¢GPL¡¢MIT¡¢BSD¡¢MozillaµÈÏ·½ÂÞÁÐÁËGithubÉÏÖ§³ÖµÄ¿ªÔ´Ð­Ò飬¾ßÌå½éÉÜÈçÏ£º

Apache License 2.0 £ºApache LicenceÊÇÖøÃûµÄ·ÇÓ¯Àû¿ªÔ´×éÖ¯Apache²ÉÓõÄЭÒé¡£¼òµ¥µÄ˵£¬×ñÑ­¸ÃЭÒé±êÖ¾×Å×Ô¼ºÏ£Íû×Ô¼ºµÄרÀûÄÜÔÚ¿ªÔ´Ãâ·ÑʹÓõÄͬʱ£¬±£Áô×Ô¼ºÔÚ¿ªÔ´²úÆ·ÖеÄרÀûÈ¨Òæ¡£Í¬Ñù£¬¸ÃЭÒéÒªÇóʹÓÃÕß±ØÐë±£ÁôÄãµÄ°æÈ¨ÐÅÏ¢¡£

MIT License £¨ÂéÊ¡Àí¹¤Ñ§ÔºÐí¿ÉÖ¤£© £º Ò»¸ö¼ò¶Ì¡¢¿íËÉ¡¢×ÔÓɵÄЭÒé¡£¸ÃЭÒéÔÊÐíÈËÃÇʹÓÃÄãµÄ´úÂ룬µ«±ØÐëÒª±£ÁôÄãµÄ°æÈ¨ÐÅÏ¢¡£Óë´Ëͬʱ£¬²¢²»»á¸øÄã´øÀ´ÈκÎÔðÈκͷçÏÕ¡£

BSD£¨Berkly Software Distribution£© £º Ò²ÊÇÒ»¸ö±È½Ï¿í·º×ÔÓɵÄЭÒ飬¸ÃЭÒéÔÊÐíÆäËûÈËÐ޸ĴúÂ룬²¢½øÐжþ´Î·¢²¼£¬²¢ÇÒ¿ÉÒÔÓÃÓÚÉÌÒµ»î¶¯¡£µ«ÊÇÒª±£ÁôÔ­ÓдúÂëµÄBSDЭÒ飬²¢ÇÒ²»ÄÜÒÔÔ­×÷Õß»òÕß»ú¹¹µÄÃû×ÖÀ´×öÊг¡Íƹ㡣£¨Unix£©

BSD 2-Clause "Simplified" License : ¼ò»¯°æ±¾µÄBSDЭÒé, Ð޸İ汾±ØÐë±£³ÖÆäԭʼ°æÈ¨ÉùÃ÷¡£

BSD 3-Clause "New" or "Revised" License : еĻòÕß¾­¹ýÖØÐÂÐÞ¶©µÄBSDЭÒé, Ð޸İ汾±ØÐë±£³ÖÆäԭʼ°æÈ¨ÉùÃ÷¡£Î´¾­Ðí¿É²»µÃʹÓÃÔ­×÷Õß»ò¹«Ë¾µÄÃû×Ö×öÐû´«¡£

GPL (GNU General Public License - GNUͨÓù«¹²Ðí¿ÉЭÒé) : Èç¹ûÄãÏ£Íû±ðÈËÔÚ·ÖÏíµÄ×Ô¼ºµÄ×÷Æ·Ö®ºó£¬Ò²±ØÐë×ñÑ­ÏàͬµÄЭÒ飬Ҳ±ØÐëÊÇ¿ªÔ´ºÍÃâ·Ñ£¬ÄÇô¾ÍÑ¡ÔñGPLЭÒé¡£Ò²¾ÍÊÇ˵ֻҪÄãÓÃÁËÈκθÃЭÒéµÄ¿â¡¢ÉõÖÁÊÇÒ»¶Î´úÂ룬ÄÇôÄãµÄÕû¸ö³ÌÐò£¬²»¹ÜÒÔºÎÖÖ·½Ê½Á´½Ó£¬¶¼±ØÐëÈ«²¿Ê¹ÓÃGPLЭÒé¡¢²¢×ñÑ­¸ÃЭÒ鿪Դ¡£ÉÌÒµÈí¼þ¹«Ë¾Ò»°ã½ûÓÃGPL´úÂ룬µ«¿ÉÒÔʹÓÃGPLµÄ¿ÉÖ´ÐÐÎļþºÍÓ¦ÓóÌÐò¡£

GNU Affero General Public License v2.0 : AfferoͨÓù«¹²Ðí¿É£¬»ùÓÚGPLµÄÀ©³ä¡£¼´Affero GPL£¬ÊÇGPLµÄ¸üÑϸñ°æ±¾¡£Ö»ÒªÄãÓÃÁËÈκθÃЭÒéµÄ¿â¡¢ÉõÖÁÊÇÒ»¶Î´úÂ룬ÄÇôÔËÐÐʱºÍËüÏà¹ØµÄËùÓÐÈí¼þ¡¢°üÀ¨Í¨¹ýÍøÂçÁªÏµµÄËùÓÐÈí¼þ£¬±ØÐëÈ«²¿×ñÑ­¸ÃЭÒ鿪Դ¡£¾ÝÂÉʦ˵£¬ËüµÄÒªÇó·¶Î§Á¬Ó²¼þ¶¼°üÀ¨¡£ËùÒÔ£¬Ò»°ã¹«Ë¾Í¨³£½ûÓÃÈκÎAGPL´úÂë¡£

LGPL : GNU Lesser General Public License - GNU¿íËɵÄͨÓù«¹²Ðí¿ÉЭÒ飬¾ÍÊÇGPLÕë¶Ô¶¯Ì¬Á´½Ó¿â·ÅËÉÒªÇóÁ˵İ汾£¬¼´ÔÊÐí·ÇLGPLµÄ´úÂ붯̬Á´½Óµ½LGPLµÄÄ£¿é¡£×¢Ò⣺²»¿ÉÒÔ¾²Ì¬Á´½Ó£¬·ñÔòÄãµÄ´úÂëÒ²±ØÐëÓÃLGPLЭÒ鿪Դ¡£Mozilla Public License 2.0 : MPL - Ð޸İ汾±ØÐë±£³ÖÆäԭʼ°æÈ¨ÉùÃ÷¡£Èç¹û·¢²¼Á˱àÒëºóµÄ¿ÉÖ´ÐÐÎļþ£¬ÄÇô±ØÐëÈöԷ½¿ÉÒÔÈ¡µÃMPLЭÒéϳÌÐòµÄÔ´Âë¡£

The Unlicense : ÔÚÐí¶à¹ú¼Ò£¬Ä¬ÈϰæÈ¨¹é×÷Õß×Ô¶¯ÓµÓУ¬ËùÒÔUnlicenseЭÒéÌṩÁËÒ»ÖÖͨÓõÄÄ£°å£¬´ËЭÒé±íÃ÷Äã·ÅÆú°æÈ¨£¬½«ÀͶ¯³É¹ûÎÞ˽¹±Ï׳öÀ´¡£Ä㽫ɥʧ¶Ô×÷Æ·µÄÈ«²¿È¨Àû£¬°üÀ¨ÔÚMIT/X11Öж¨ÒåµÄÎÞµ£±£È¨Àû¡£

Eclipse Public License 2.0 : EPLÓÉEclipse»ù½ð»áÓ¦ÓÃÓÚÃûÏµļ¯³É¿ª·¢»·¾³EclipseÉÏ£¬ ÉÌÒµÈí¼þ¿ÉÒÔʹÓã¬Ò²¿ÉÒÔÐÞ¸ÄEPLЭÒéµÄ´úÂ룬µ«Òª³Ðµ£´úÂë²úÉúµÄÇÖȨÔðÈΡ£

3¡¢ÈçºÎȥѡÔñÄãµÄ¿ªÔ´Ð­Òé

ÏÂͼÊÇ´ÓÍøÉÏÄùýÀ´µÄ£¬¿ÉÒÔ¸ù¾ÝÏ·½µÄ¾ßÌåÇé¿öÀ´Ñ¡ÔñÏà¹ØµÄ¿ªÔ´Ð­Òé¡£

4¡¢ÅäÖÃpodspecÎļþ²¢·¢²¼×Ô¼ºµÄÔ´´úÂë

(1) ´´½¨ podsepcÎļþ

ÑÔ¹éÕý´«£¬ÔÚGithubÉÏ´´½¨ºÃÏà¹ØµÄ¹¤³Ì²¢Ñ¡ºÃÏà¹ØµÄ¿ªÔ´Ð­Òéºó£¬½«¹¤³ÌCloneµ½±¾µØ£¬Ìí¼ÓÉÏ×Ô¼ºÒª¿ªÔ´µÄ´úÂ룬ȻºóÔڸù¤³ÌÖд´½¨podspecÎļþ¡£¿ÉÒÔͨ¹ý pod spec create ÃüÁîÀ´´´½¨Ïà¹ØµÄpodsepcÎļþ¡£

pod sepc create PodspecFileName

Ï·½ÊǾßÌåµÄ²Ù×÷£º

È»ºó¶Ô´´½¨ºÃµÄpodspecÎļþ½øÐб༭£¬Ìí¼ÓÉÏ¿ªÔ´¿âµÄ¹¤³ÌÃû³Æ¡¢°æ±¾¡¢ÃèÊö¡¢¿ªÔ´Ð­Òé¡¢×÷Õß¡¢Æ½Ì¨¡¢Ô´´úÂëµÈµÈ¡£¾ßÌåÿÏîµÄÅäÖÃCocoaPods¹ÙÍøÉÏÓÐ˵Ã÷Îĵµ£¬¿ÉÒÔÈ¥×Ðϸ·­ÔÄ¡£

(2)¡¢´´½¨tagºÅ²¢pushµ½Ô¶¶Ë

ÅäÖúÃpodsepcÎļþºó£¬½Ó×Å´´½¨Ò»¸ötagºÅ£¬Õâ¸ötagºÃÒªÓëpodspecÖеÄversionÏà¶ÔÓ¦¡£´´½¨ÍêtagºÅºó£¬²»ÒªÍü¼Çpushµ½Ô¶¶Ë¡£tagºÅpushµ½Ô¶¶Ëºó£¬ÎÒÃÇ¿ÉÒÔͨ¹ý pod spec lint xxxx.podspec À´²âÊÔÒ»ÏÂÎÒÃÇÅäÖõÄpodspecÊÇ·ñÕýÈ·¡£¾ßÌå²Ù×÷ÈçÏÂËùʾ¡£

(3)¡¢²âÊԺʹ´½¨CocoaPodsÕ˺Å

ÍùCocoaPodsÉϼ¯³É¿ªÔ´¿â£¬ÐèÒªÏà¹ØµÄCocoaPodsÕ˺š£ÎÒÃÇ¿ÉÒÔͨ¹ý pod trunk meÀ´²é¿´Õ˺ÅÊÇ·ñ´æÔÚ¡£Èç¹û²»´æÔÚ»áÌáʾÄã½øÐÐ×¢²á²¢ÇÒ½øÐÐÏà¹ØÈÏÖ¤¡£Ï·½¾ÍʹÓÃÁËÒ»¸öΪע²á¹ýµÄÕ˺ŽøÐÐ trunk¡£È»ºó½øÐÐÁËÏà¹ØÕ˺ŵÄ×¢²áºÍ¼¤»î

×¢²áÍêºó£¬ÐèÒª½øÈëÓÊÏä½øÐÐÕ˺ŵļ¤»î¡£

ÔٴνøÐÐtrunk me²âÊÔ

(4)¡¢·¢²¼

Git²Ö¿âÅäÖÃÒѾ­Õ˺Å×¢²áÍê±Ïºó£¬½ÓÏÂÀ´¾Í¿ªÊ¼ÍùCocoaPodsÉÏ·¢²¼×Ô¼ºµÄ²Ö¿âÁË¡£ÎÒÃÇ¿ÉÒÔͨ¹ý pod trunk push xxxxx.podspce ½«podspecÎļþ·¢²¼µ½CocoaPodsµÄSpec²Ö¿âÖС£Íê³ÉÕâÒ»²Ù×÷£¬¾ÍÍê³ÉµÄÎÒÃDzֿâµÄ·¢²¼ÁË¡£

(5)¡¢²Ö¿âÒýÓÃ

·¢²¼Íê±ÏºóÎÒÃÇ¿ÉÒÔͨ¹ý pod search À´½øÐÐËÑË÷ÎÒÃÇ·¢²¼µÄ¿â¡£ÈçÏÂËùʾ£¬¿ÉÒÔÕý³£Ëѵ½¡£·¢²¼Íê±ÏºóÎÒÃǾͿÉÒÔÕý³£µÄÔÚPodfileÖнøÐÐÅäÖá¢È»ºó pod install½øÐа²×°ÒýÓÃÁË£¬¾ßÌåÒýÓò½ÖèºÍÆäËûÈý·½¿âÒ»Ñù£¬Ôڴ˾Ͳ»×ö¹ý¶à׸ÊöÁË¡£

Îå¡¢CocoaPodsµÄSpecs²Ö¿â¼´Ô´Âë¼ÓÔØÂ·¾¶

½ÓÏÂÀ´ÎÒÃÇÀ´¿´Ò»ÏÂCocoaPodsµÄSpecs²Ö¿â£¬È»ºóÔÚSpecs²Ö¿âµÄ»ù´¡ÉÏÔÚ¿´Ò»ÏÂCocoaPodsÊÇÈçºÎͨ¹ýÎÒÃǹ¤³ÌÖÐËùÌṩµÄProfileÎļþÀ´¼ÓÔØÈý·½ÒÀÀµ²Ö¿âµÄ¡£

1¡¢Specs²Ö¿â

ÉÏÃæÔÚ·¢²¼ÎÒÃÇ¿ªÔ´´úÂëʱҳÌáµ½¹ý£¬Êǽ«ÎÒÃÇ´´½¨ºÍÅäÖõÄxxxx.podspecÎļþ·¢²¼µ½ CocoaPodsµÄSpecs²Ö¿â£¨https://github.com/CocoaPods/Specs.git£©¡£Specs²Ö¿âÖоʹæ·Åן÷¸ö¿ªÔ´¿âµÄ¸÷¸ö°æ±¾µÄpodspecÎļþ¡£

Ï·½¾ÍÊÇGithubÉÏCocoaPodsµÄSpecs²Ö¿â¡£¸ù¾Ý¸Ã²Ö¿âµÄREADMEÖеÄÐÅÏ¢£¬ÎÒÃÇ¿ÉÒÔ¿´³ö¸Ã²Ö¿âÖд洢µÄÊÇËùÓпÉÒÔÓÃpod µ¼ÈëµÄ¹«ÓвֿâµÄrelease°æ±¾µÄpodspecÎļþ¡£ÕâЩ¹«¿ªµÄ²Ö¿â±ØÐë×ñÑ­MITЭÒéµÄ¡£¾ßÌåÈçÏÂËùʾ£º

Ï·½¾ÍÊÇÎÒÃÇ´ÓCocoaPodsÖеÄSpecs²Ö¿âÀï±ßÕÒµ½µÄÉÏÃæÎÒÃÇ·¢²¼µÄ²âÊÔ¹¤³Ì¡£ÔÚÎÒÃǹ¤³ÌµÄÎļþ¼Ð϶ÔÓ¦µÄÊÇÒ»¸ö¸ö°æ±¾£¨git²Ö¿âµÄtagºÅ£©£¬Ã¿¸ötagºÅÏ·½¶ÔÓ¦µÄ¾ÍÊǸð汾µÄpodspecÎļþ¡£ÎÒÃÇÔÚ·¢²¼ÎÒÃǵŤ³Ìµ½CocoaPodsµÄʱ£¬±¾ÖÊÉÏÊǸù¾ÝÎÒÃǵŤ³ÌÃû³Æ´´½¨Ïà¹ØµÄÎļþ¼Ð£¬È»ºó¸ù¾ÝÎÒÃǵÄtagºÅ´´½¨×ÓÎļþ¼Ð£¬È»ºóÔÚ×ÓÎļþ¼ÐÖÐÉÏ´«µ±Ç°°æ±¾Ëù¶ÔÓ¦µÄpodspecÎļþ¡£

2¡¢Èý·½ÒÀÀµµÄ¼ÓÔØÂ·¾¶

¿´ÍêSpecs²Ö¿âÀï±ßµÄÄÚÈݺ󣬽ÓÏÂÀ´ÎÒÃÇÀ´¿´Ò»ÏÂÎÒÃÇCocoaPodsÊÇÈçºÎͨ¹ýÎÒÃǹ¤³ÌÖеÄPodfileÎļþÀ´¼ÓÔØÏà¹ØµÄÈý·½ÒÀÀµ¿âµÄ¡£

Ê×ÏÈÎÒÃÇÀ´¿´Ò»ÏÂPodfileÖеĻù±¾½á¹¹¡£ÔÚPodfileÎļþÖУ¬ÆäÖÐµÄ source ²ÎÊý¾ÍÊÇÓÃÀ´Ö¸¶¨ÒÀÀµ²Ö¿âËù¶ÔÓ¦µÄSpecs²Ö¿âµÄ£¬ sourceµÄĬÈϵØÖ·¾ÍÊÇCocoaPodsµÄ Specs ²Ö¿â¡£Èç¹ûÎÒÃÇÓÐ×Ô¼ºµÄ˽ÓÐ Specs ²Ö¿â£¬Ò²¿ÉÒÔÖ¸¶¨ÎÒÃÇ×Ô¼ºµÄSpecs²Ö¿âµØÖ·¡£

ÔÚPodfileÖпÉÒÔÖ¸¶¨¶à¸ö Specs ²Ö¿âµÄµØÖ·£¬ÉÔºóÎÒÃǻᴴ½¨ÎÒÃÇ×Ô¼ºµÄSpecs²Ö¿â£¬È»ºóÔÚ¸ÃSpecs²Ö¿âÖÐÉϴη¢²¼ÎÒÃÇ×Ô¼ºÊ¹ÓõÄÒÀÀµ¿â¡£

Ï·½ÊÇCocoaPodsÖмÓÔØÒÀÀµ²Ö¿â´úÂëµÄ·¾¶£¬¸ù¾Ý×Ô¼ºµÄÀí½â£¬Ñ°ÕÒÔ´Âë·¾¶´óÌåÉÏ·ÖΪÏ·½¼¸¸ö²½Ö裺

ͨ¹ýPodfileÕâ¸ö source Ö¸¶¨µÄSpecs²Ö¿âµÄµØÖ·£¬ÎÒÃǾͿÉÒÔÕÒµ½Ïà¹ØµÄSpecs²Ö¿â¡£

ÕÒµ½Specs²Ö¿âºó£¬ÔÙ¸ù¾Ý Podfile ÖÐËùÌṩµÄ²Ö¿âÒÀÀµÅäÖ㨱ÈÈç pod 'AFNetWorkiing', ~>'2.6.3'£©£¬ÕÒµ½Ö¸¶¨µÄÒÀÀµ²Ö¿âºÍÏà¹ØµÄ°æ±¾¡£

È»ºóÕÒµ½¸Ã°æ±¾Ëù¶ÔÓ¦µÄ xxx.podspec Îļþ¡£

È»ºóÔÙ¸ù¾Ý xxx.podsepce ÎļþÖеÄÏà¹ØÅäÖÃÐÅÏ¢ÕÒµ½¸Ã²Ö¿âËù¶ÔÓ¦µÄÔ´ÂëµÄgitµØÖ·¡£

×îºó¸ù¾ÝÔ´ÂëµÄgitµØÖ·¼ÓÔØÈý·½²Ö¿âµ½Pods¹¤³ÌÖÐͳһ¹ÜÀí¡£

Ï·½ÊǸù¾ÝÉÏ·½µÄ²½ÖèËù»­µÄ¼òͼ¡£CocoaPodsÕæÕýµÄ¹¤×÷Ó¦¸Ã±ÈÏ·½Òª¸´ÔӵĶ࣬

Áù¡¢´´½¨Ë½ÓеÄSpecs²Ö¿â

ÉÏÃæ¿´Íê CocoaPods ²Ö¿âµÄ Specs Îļþºó£¬½ÓÏÂÀ´ÎÒÃÇÀ´¿´Ò»ÏÂÈçºÎ´´½¨Ë½ÓÐµÄ Specs ²Ö¿â¡£µ±ÎÒÃǵŤ³Ì±È½Ï´óʱ£¬ÓÈÆäÊÇʹÓÃÄ£¿é»¯¿ª·¢ÊÇ£¬ÎÒÃǵŤ³Ì»áÒÀÀµºÃ¶àÆäËûµÄ²Ö¿â¡£´´½¨Ë½ÓеÄSpecs²Ö¿âÀ´¹ÜÀí˽ÓеÄÒÀÀµ²Ö¿âÊǺÜÓбØÒªµÄ¡£½ÓÏÂÀ´¾Í½éÉÜÒ»ÏÂÈçºÎ´´½¨Ë½ÓеÄSepcs²Ö¿â£¬È»ºó°ÑÎÒÃÇ˽ÓеÄÒÀÀµ¿â·¢²¼µ½ÎÒÃÇ×Ô¼ºµÄSpecs²Ö¿âÖС£

Ï·½ÒÔGithubΪÀý£¬»áÔÚGithubÉÏ´´½¨Ïà¹ØµÄSpecs

1¡¢´´½¨Ë½ÓÐSpecs Repo

Ê×ÏÈÎÒÃÇÐèÒª×öµÄÊÇÔÚGithubÉÏ´´½¨Ò»¸öÃûΪSpecsµÄ²Ö¿â£¨¸Ã²Ö¿âµÄÃû×Ö¿ÉÒÔ¸ù¾Ý¾ßÌåÇé¿öÃüÃû£©¡£È»ºóÔÚ±¾µØ¹ØÁª¸ÃSpecs²Ö¿âµ½PodµÄ²Ö¿âÖС£

pod repo add SpecsName SpecsGitAddr

Ìí¼ÓÍê±ÏºóÎÒÃÇ¿ÉʹÓà pod repo ÃüÁîÀ´²é¿´¸Ã²Ö¿âÊÇ·ñÕý³£Ìí¼Óµ½CocoaPodsÖС£

ÎÒ¿´¿ÉÒÔÓÃÏ·½ÃüÁîÀ´¿´Ò»Ï¸ÃSpecs²Ö¿âÊÇ·ñ¿ÉÓãº

pod repo lint xxxxSpecsName

2¡¢½«Ë½ÓÐÒÀÀµ¿â¹¤²¼µ½×Ô¼ºµÄSpecs²Ö¿âÖÐ

¾­¹ýµÚÒ»²½¾ÍËã´´½¨²¢¹ØÁªºÃÁËÎÒÃÇ˽ÓеÄSpecs²Ö¿âÁË£¬½ÓÏÂÀ´ÎÒÃǾ͸ý«Ë½ÓеÄÒÀÀµ²Ö¿â·¢²¼µ½ÎÒÃÇ×Ô¼ºµÄSpecs²Ö¿âÖÐÁË¡£ÕâÒ»·¢²¼µÄ¹ý³ÌÓë֮ǰÎÒÃǽ«¹¤³Ì·¢²¼µ½CocoaPodsµÄSpecs²Ö¿âÖÐÊÇÒ»Öµġ£Ö»²»¹ýÊǽ«CocoaPodsµÄSpecsÃû³Æ»»³ÉÁËÉÏÃæÎÒÃÇÅäÖõÄMyCustomSpecÃû³Æ¡£¾ßÌåÈçÏÂËùʾ£º

pod repo push XxxSpecs xxxx.podspec

·¢²¼ÍêÒÔºó£¬ÎÒÃÇ¿ÉÒÔÈ¥±¾µØ»¹ÓÐÔ¶¶ËµÄSpecs²Ö¿âÖÐÈ¥²é¿´·¢²¼µÄÏà¹Ø²Ö¿âµÄÐÅÏ¢£¬Ï·½ÊÇÎÒÃDZ¾µØµÄ²Ö¿âÐÅÏ¢¡£¿ÉÒÔ¿´³öÔÚpushÍê±Ïºó£¬ÔÚcocoapodsµÄreposÎļþ¼ÐϵÄMyCustomSpecÎļþÖжàÁËÒ»¸öMyCocoaPodsTestProject Îļþ¼Ð£¬¸ÃÎļþ¼ÐÏ´æ·ÅµÄ¾ÍÊǸÃÒÀÀµ¿âÖеİ汾ÐÅÏ¢ºÍ¸÷¸ö°æ±¾µÄ podspec Îļþ¡£

ÎÒÃÇÒ²¿ÉÒÔ´ÓgithubÀ´²é¿´·¢²¼µÄÒÀÀµ¿âµÄÏà¹ØÐÅÏ¢£¬ÈçÏÂËùʾ¡£¸Ã½á¹¹ÓëCocoaPodsµÄSpecs²Ö¿âʱ²î²»¶àµÄ¡£

3¡¢ÒýÈë˽Óвֿâ

ÒÀÀµ²Ö¿â push Íê±Ïºó£¬½ÓÏÂÀ´¾Í¸ÃÕý³£Ê¹ÓÃÏà¹ØµÄÒÀÀµ²Ö¿âÁË¡£²»¹ýʹÓÃʱÔÚPodfileÖÐÒªÖ¸¶¨Ïà¹ØPodspecµÄµØÖ·£¬ÅäÖÃÍê±Ïºó¾Í¿ÉÒÔpod installÖ±½ÓʹÓÃÁË¡£

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

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì