ÀÖÓãµç¾º

    ½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

    È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

    AndroidÅàѵʵս½Ì³ÌÖ®Ó¦ÓóÌÐòÄÚ´æÓÅ»¯

    ¸üÐÂʱ¼ä:2015Äê12ÔÂ28ÈÕ15ʱ33·Ö À´Ô´:ÀÖÓã²¥¿ÍAndroidÅàѵѧԺ ä¯ÀÀ´ÎÊý:

    ¶ÔÓÚ¿ª·¢Ò»¸öÓ¦ÓóÌÐòÀ´Ëµ£¬ÔÚǰÆÚÍê³ÉÖ÷Òª¹¦ÄÜÖ®ºó£¬ºóÆÚÓÐÒ»Ïî·Ç³£ÖØÒªµÄ¹¤×÷£¬ÄǾÍÊÇÓÅ»¯Ó¦ÓóÌÐòµÄÄÚ´æ¡£¶øÄÚ´æÓÅ»¯µÄ·½ÏòÖ÷ÒªÊÇÁ½¸ö£¬Ò»¸öÊÇÄÚ´æÒç³ö£¬ÁíÍâÒ»¸ö¾ÍÊÇÄÚ´æÐ¹Â¶¡£
    ÄÚ´æÒç³öºÍÄÚ´æÐ¹Â¶ÊÇÁ½¸ö²»Í¬µÄ¸ÅÄî¡£ÄÚ´æÒç³öÖ¸µÄÊÇÄÚ´æ²»¹»ÓÃÁË£¬ÄÚ´æµÄʹÓó¬¹ýµÄϵͳ¹æ¶¨µÄ×î´óÖµ¡£¶øÄÚ´æÐ¹Â¶Ö¸µÄÊÇÓÉÓÚ³ÌÐòµÄÂß¼­´íÎ󣬵¼ÖÂһЩûÓÐÓõĶÔÏóÎÞ·¨±»À¬»ø»ØÊÕÆ÷»ØÊÕ¶øÒ»Ö±Õ¼ÓÃ×ÅÄÚ´æ¡£ËùÒÔÄÚ´æÐ¹Â¶µÄ¶Ñ»ý¿ÉÄÜ»áÔì³ÉÄÚ´æÒç³ö¡£¶øÄÚ´æÒç³ö²»Ò»¶¨¶¼ÊÇÓÉÄÚ´æÐ¹Â¶ÒýÆðµÄ¡£ÕâÁ½¸ö¸ÅÄîÒª¸ãÇå³þ¡£  ------------------AndroidÅàѵѧԺ

    ÄÚ´æÒç³ö£º

    ÔÚ°²×¿µÄÓ¦ÓóÌÐòÖУ¬ÄÚ´æÒç³öÖ÷ÒªÌáÒªÔÚ¼¸¸ö·½Ãæ
    1¡¢ListViewµÄÏÔʾ
             ÎÒÃÇÔÚʹÓÃListViewµÄʱºò£¬¶¼»á¸øËûÉèÖÃAdapter£¬Èç¹ûÔÚAdapterÖеÄgetView·½·¨ ÖУ¬ÎÒÃÇûÓи´ÓÃconvertView£¬¾Í»áÔì³ÉÔÚ»¬¶¯ListViewµÄʱºò£¬»áΪÿһ¸öitem¶¼    Éú³ÉÒ»¸öView¶ÔÏ󣬶ø²»¹ÜÕâ¸öitem֮ǰÊÇ·ñÒѾ­Éú³É¹ýView¶ÔÏó¡£Èç¹ûÀ´»Ø»¬¶¯µÄ´ÎÊýÌ«¶àµÄ»°£¬¾Í»áÔì³ÉViewÉú³ÉµÄÊýÁ¿Ì«¶à£¬×îÖÕ»áÔì³ÉÄÚ´æÒç³ö¡£
             Èç¹ûListViewÖеÄitemÊǰüº¬Í¼Æ¬µÄ£¬ÄÇô£¬Èç¹ûÔÚ¿ìËÙ»¬¶¯µÄ¹ý³ÌÖУ¬ÎÒÃǾÍȥΪ    item¼ÓÔØÍ¼Æ¬£¬´Ëʱ·Ç³£ÈÝÒ×Ôì³ÉÄÚ´æÒç³ö¡£ÒòΪ£¬ÔÚ¿ìËÙ»¬¶¯µÄ¹ý³ÌÖУ¬À¬»ø»ØÊÕÆ÷»¹À´²»¼°»ØÊÕÄڴ棬¶øÐµÄitemÓÖÐèҪеÄÄÚ´æÀ´ÏÔʾͼƬ¡£ËùÒÔ£¬ÔÚÕâÖÖÇé¿öÏ£¬Ò»°ãµÄ×ö·¨ÊǼàÌýListViewµÄ¹ö¶¯×´Ì¬£¬µ±ListViewµÄ¹ö¶¯×´Ì¬Îª¿ÕÏеÄÇé¿öÏ£¬ÀïÃæ µÄÿһ¸öItem²ÅÈ¥¼ÓÔØÍ¼Æ¬¡£
    2¡¢¼ÓÔØÍ¼Æ¬Ïà¹Ø
             a¡¢¼ÓÔØ¶àÕÅͼƬ
                       ¶ÔÓÚ¼ÓÔØ¶àÕÅͼƬ£¬ÎÒÃÇÒ»°ã»áʹÓÃÈý¼¶»º´æÀ´ÊµÏÖͼƬµÄ¼ÓÔØ¡£Äڴ滺´æ¡¢±¾µØ»º´æ¡¢ÍøÂ绺´æ¡£»º´æµÄÄ¿µÄÊÇΪÁËÏÂÒ»´Î¼ÓÔØËٶȸü¿ì¡£ËùÒÔÔÚÄÚ´æÖб£´æ×ÅÒ»¶¨ÊýÁ¿µÄͼƬÊÇÓÐÖúÓÚÏÂÒ»´ÎͼƬÏÔʾµÄËÙ¶È¡£µ«ÊÇ£¬ÄÚ´æÖв»Äܱ£´æÌ«¶àµÄͼƬ¶ÔÏó£¬ËùÒÔÎÒÃÇʹÓÃLRUCacheÀ´±£´æÄÚ´æÖеÄͼƬ£¬²¢ÇÒ¿ØÖÆÔÚÒ»¶¨µÄÊýÁ¿Ö®ÄÚ¡£
             b¡¢¼ÓÔØµ¥ÕÅͼƬ
                       ÕâÖÖÇé¿öÊÇÕë¶ÔÓÚijһÕÅÍ¼Æ¬ÌØ±ð´óµÄÇé¿ö¡£Èç¹ûÒ»ÕÅͼƬ·Ç³£·Ç³£´ó£¬Èç¹û50M£¬ ÄÇô£¬ÎÒֻҪһȥ¼ÓÔØËü£¬ÄÇôÎҵijÌÐò¿Ï¶¨¾Í»á¹Ò£¬¸ù±¾»¹Ã»Ê¹Óõ½Èý¼¶»º´æÓ¦ÓóÌÐò¾ÍÊܲ»ÁËÁË¡£ËùÒÔ£¬¶ÔÓÚ´óͼƬµÄÏÔʾÐèÒªÌØÊâ´¦Àí¡£ÒòΪͼƬËäÈ»ÌØ±ð´ó£¬µ«ÊÇÕâ¸öͼƬËùÐèÒªÏÔʾµÄ¿Ø¼þÓпÉÄÜÊǺÜСµÄ¡£ÎÒÃÇ¿ÉÒÔÏȰÑͼƬµÄ¿íºÍ¸ßµÃµ½£¬Ôٵõ½ÕâÕÅͼƬËùÐèÒªÏÔʾµÄ¿Ø¼þµÄ¿í¸ß£¬¾Í¿ÉÒԵõ½Í¼Æ¬ºÍ¿Ø¼þµÄËõ·Å±ÈÀýÁË¡£×îºó£¬¸ù¾ÝËõ·Å±ÈÀý£¬ÉèÖÃͼƬµÄ²ÉÑùÂÊ£¬À´¼õСµ¥ÕÅͼƬµÄÄÚ´æÕ¼Óá£
    1.   BitmapFactory.Options options = new BitmapFactory.Options();    
    2.   //Ö»µÃµ½Í¼Æ¬µÄ´óС£¬²»È¥¼ÓÔØÍ¼Æ¬µÄÄÚÈÝ
    3.   options.inJustDecodeBounds = true;
    4.   Bitmap boundBitmap = BitmapFactory.decodeFile(filePath,options);
    5.   int imageWidth = boundBitmap.getWidth();
    6.   int imageHeight = boundBitmap.getHeight();
    7.   //¼ÆËãinSampleSizeµÄÖµ ´Ëʱ¿ÉÒÔ¸ù¾Ý¿Ø¼þ´óСºÍͼƬ´óСÀ´µÃµ½Ëõ·Å±ÈÀý  ÕâÀïÏÈд³É2
    8.   options.inSampleSize = 2;//ͼƬ¿í¸ß¶¼ÎªÔ­À´µÄ¶þ·ÖÖ®Ò»£¬¼´Í¼Æ¬ÎªÔ­À´µÄËÄ·ÖÖ®Ò»   
    9.   options.inJustDecodeBounds = false;  
    10.  Bitmap bitmap = BitmapFactory.decodeFile(filePath,options); 

    ÄÚ´æÐ¹Â¶£º

    ÄÚ´æÐ¹Â¶ÊÇÒòΪÓÐЩ¶ÔÏóÒѾ­Ã»ÓÐÓÃÁË£¬µ«ÊÇÈ´ÎÞ·¨±»À¬»ø»ØÊÕÆ÷»ØÊÕÄڴ棬µ¼ÖÂÕâÒ»¿éÄÚ´æÐ¹Â¶ÁË¡£Ëæ×ÅÕâÀàÎÊÌâµÄ¶Ñ»ý£¬Ð¹Â¶µÄÄÚ´æÔ½À´Ô½´ó£¬¿ÉʹÓõÄÄÚ´æÔ½À´Ô½Ð¡£¬Ö±µ½ÄÚ´æÒç³ö¡£
    ¶øÀ¬»ø»ØÊÕÆ÷ÎÞ·¨»ØÊÕijһЩ¶ÔÏó£¬ÊÇÒòΪ£¬ÕâЩ¶ÔÏóÓÐÈËÒýÓÃËüÁË¡£ËùÒÔÄÚ´æÐ¹Â¶µÄ±¾ÖʾÍÊÇ£¬ÉúÃüÖÜÆÚ¶ÌµÄ¶ÔÏóÒ»Ö±±»ÉúÃüÖÜÆÚ³¤µÄ¶ÔÏóÒýÓ㬵¼ÖÂÉúÃüÖÜÆÚ¶ÌµÄ¶ÔÏóÎÞ·¨±»À¬»ø»ØÊÕÆ÷»ØÊÕ¡£
    ÔÚ°²×¿µÄÓ¦ÓóÌÐòµ±ÖУ¬ÄÚ´æÐ¹Â¶Ö÷ÒªÌåÏÖÔÚ¼¸¸ö·½Ãæ
    1¡¢×¢²áÁËÖ®ºóÍüÁË·´×¢²á
           BraodcastReceiver£¬ContentObserver£¬FileObserverÔÚActivity onDestory»òÕßijÀàÉùÃ÷      ÖÜÆÚ½áÊøÖ®ºóÒ»¶¨Òªunregisterµô£¬·ñÔòÕâ¸öActivity»á±»systemÇ¿ÒýÓ㬲»»á±»ÄÚ´æ »ØÊÕ¡£¶ÔÓÚ¹Û²ìÕßģʽµÄд·¨£¬ÔÚ×¢²áijһЩ¹Û²ìÕßµÄʱºò£¬Òª¼ÈµÃÔÚÊʵ±µÄʱºò£¬°Ñ     ¶ÔÓ¦µÄ¹Û²ìÕß´Ó¹Û²ìÕßÁбíÖÐÒÆ³ý¡£·ñÔò´æ´¢¹Û²ìÕߵļ¯ºÏÁбí»á²»¶ÏµÄÀ©´ó¡£
    2¡¢×ÊÔ´¶ÔÏóû¹Ø±Õ
    ¡¡  ×ÊÔ´ÐÔ¶ÔÏó±ÈÈçCursor£¬FileÎļþµÈ£¬ÔÚÄÚ²¿µÄʵÏÖ»úÖÆÖж¼ÓÃÁËһЩ»º³å£¬ËùÒÔÔÚ²»  ʹÓõÄʱºòÕâЩ×ÊÔ´¶ÔÏóµÄʱºòÓ¦¸Ã¼°Ê±¹Ø±ÕËüÃÇ£¬ÕâÑù£¬ËûÃǵĻº³åÇøÓò²ÅÄܱ»¼Èʱ     ºò»ØÊÕ¡£ËüÃǵĻº³å²»½ö´æÔÚÓÚJavaÐéÄâ»úÄÚ£¬»¹´æÔÚÓÚJavaÐéÄâ»úÍâ¡£Èç¹ûÎÒÃǽö         ½öÊǰÑËüµÄÒýÓÃÉèÖÃΪnull,¶ø²»¹Ø±ÕËüÃÇ£¬ÍùÍù»áÔì³ÉÄÚ´æÐ¹Â¶¡£ÎÒÃÇÐèÒªÔÚÕâЩ¶ÔÏó          ²»Ê¹ÓõÄÇé¿öÏ£¬Á¢¼´µ÷ÓÃclose·½·¨£¬È»ºóÔÙÉèÖÃΪnull¡£
    3¡¢activity±»¼¯ºÏÒýÓõ¼ÖÂactivity²»ÄÜÊÍ·Å
       Ò»°ãÎÒÃÇÔÚÓ¦ÓóÌÐòÖУ¬×öÒ»¸öÍ˳öÓ¦ÓóÌÐòµÄ¹¦ÄÜ¡£µ±µã»÷Í˳ö°´Å¥µÄʱºò£¬´ËʱӦ  ¸Ã°ÑÕâ¸öÓ¦ÓÃÖÐËùÓÐactivity¶¼finishµô£¬ÕâÑù¾Í¿ÉÒÔÍ˳öÕâ¸öÓ¦ÓÃÁË¡£ËùÒÔ£¬ÎÒÃÇÐè   ÒªÔÚÿһ¸öactivityÖеÄonCreate·½·¨À½«µ±Ç°Æô¶¯µÄactivity±£´æÔÚijһ¸ö¼¯ºÏÁР    ±íÀïÃæ¡£Õâ¸ö¼¯ºÏÁбí¿ÉÒÔ´æÔÚÓÚApplicationÖеÄÒ»¸öArrayList¡£´Ëʱ£¬Èç¹ûÔÚactivity          ÖеÄonDestoryûÓн«µ±Ç°µÄactivity¶ÔÏó´Ó¼¯ºÏÁбíÖÐÒÆ³ýµÄ»°£¬ÄÇô¾Í»áÔì³Éactivity          ËäÈ»Í˳öÁË£¬µ«ÊÇÕâ¸öactivityµÄ¶ÔÏóÒÀÈ»ÎÞ·¨±»ÏµÍ³»ØÊÕ£¬ÒòΪÓÐÒ»¸ö¼¯ºÏÒ»Ö±ÒýÓà        ×ÅÕâ¸öactivity¶ÔÏó¡£ËùÒÔÒ»¶¨Òª¼ÇµÃÔÚonDestory·½·¨Öаѵ±Ç°µÄactivity¶ÔÏó´Ó¼¯ºÏ         ÁбíÖÐÒÆ³ý¡£
    4¡¢Bitmap¶ÔÏó²»ÔÚʹÓÃʱµ÷ÓÃrecycle()ÊÍ·ÅÄÚ´æ 
             Bitmap·Ç³£µÄºÄÄÚ´æ¡£ ¶àʹÓü¸¸öBitmapºÜ¿ÉÄÜÒ»ÏÂ×Ӿͻᳬ¹ýJava¶ÑµÄÏÞÖÆ¡£Òò´Ë£¬ÔÚ     ÓÃÍêBitmapʱ£¬Òª       ¼°Ê±µÄrecycleµô¡£recycle²¢²»ÄÜÁ¢¼´½«BitmapµÄÄÚ´æÊÍ·Å£¬µ«ÊÇ»áÔÚÀ¬  »ø»ØÊÕÆ÷ÏÂÒ»¸ö¹¤×÷µÄʱ»ú½«Õâ¸öbitmap»ØÊÕ¡£

    ½â¾ö·½°¸

    ÎÞÂÛÊÇÄÚ´æÐ¹Â¶»¹ÊÇÄÚ´æÒç³ö£¬×îÖյĺó¹û»ù±¾ÉÏÊÇһֵģ¬ÄǾÍÊÇÔì³ÉÓ¦ÓóÌÐòÇ¿ÐйرÕ¡£ÔÚÓ¦ÓóÌÐòµÄ¹¦ÄÜ¿ª·¢ÍêÖ®ºó£¬ÔõôÑù²ÅÄÜÈ·¶¨Ó¦ÓóÌÐòÓÐûÓÐÄÚ´æµÄÎÊÌâÄØ£¿ÓÖÔõÑùÀ´È·¶¨µ½µ×ÊÇÄÄÒ»¿é´úÂë³öµÄÎÊÌâÄØ£¿½ÓÏÂÀ´ÎÒÃǾÍÀ´ËµËµ¹ØÓÚÄÚ´æÎÊÌâµÄ½â¾ö·½°¸¡£
    1¡¢Ê¹ÓÃmonkey¹¤¾ß
             ÒòΪÓÐЩÄÚ´æÎÊÌâ²ØµÄ±È½ÏÉҪ³¤ÆÚʹÓòÅÄܳöÏÖÒì³£¡£ËùÒÔ¿ÉÒÔʹÓÃmonKey¹¤¾ß  À´¶ÔÎÒÃǵÄÓ¦ÓóÌÐò½øÐÐѹÁ¦²âÊÔ¡£
             Ä£Äâ200000´ÎÓû§²Ù×÷µÄ²Î¿¼ÃüÁ adb shell monkey -s 23 -p cn.itcast.XXX(Ëù²âÊԵĠ  °ü) --ignore-crashes --ignore-timeouts -v -v -v 200000 > D:\ÎļþÃû.log
             »Ø³µÖ®ºó£¬ÎÒÃÇËùÐèÒª²âÊÔµÄÓ¦ÓóÌÐò¾ÍÆô¶¯ÁË£¬²¢ÇÒ»¹Óв»¶Ï´¥Ãþʼþ±»´Ù·¢£¬³ÌÐò         Éú³ÉµÄlog»á±£´æÔÚDĿ¼Ï¡£
    2¡¢²¶»ñOOMÒì³£
             ×Ô¶¨ÒåApplication²¢ÈÃËüʵÏÖUncaughtExceptionHandler ½Ó¿Ú£¬ÔÚonCreate·½·¨ÖÐÈà    ×Ô¼º³ÉΪϵͳµÄĬÈÏÒì³£´¦Àí»úÖÆ¡£Thread.setDefaultUncaughtExceptionHandler(this);
             ÕâÑù×ÓÉèÖÃÖ®ºó£¬Èç¹ûÓ¦ÓóÌÐò³öÏÖÒì³££¬¾Í»áµ÷ÓÃApplicationÖеÄuncaughtException ·½·¨¡£ÎÒÃǾÍÔÚÕâ¸ö·½·¨ÖÐÅжÏÒì³£ÊÇ·ñΪOOMÒì³£¡£Èç¹ûÊÇOOMÒì³££¬¾Í½«ÄÚ´æ         ¿ìÕÕµ¼µ½sd¿¨ÖÐÈ¥¡£
            
             ÕâÑù×ÓÖ®ºó£¬ÎÒÃǾͿÉÒÔÔÚsd¿¨ÉÏÕÒµ½·¢ÉúÒ쳣ʱµÄÄÚ´æ¿ìÕÕ
    3¡¢·ÖÎöÄÚ´æ¿ìÕÕ
             ʹÓÃMAT¹¤¾ß¶ÔÄÚ´æ¿ìÕÕÎļþ½øÐзÖÎö¡£
             ÔÚʹÓÃMAT¹¤¾ß´ò¿ªÄÚ´æ¿ìÕÕÎļþµÄʱºò£¬ÐèÒªÏȽ«Îļþ½øÐÐת»»Ò»Ï¡£ÒòΪMATÖ»  ÄÜʶ±ðJAVAµÄÄÚ´æ¿ìÕÕ£¬¶øÎÒÃǰ²×¿µÄÄÚ´æ¿ìÕÕºÍJAVAµÄÄÚ´æ¿ìÕÕÓе㲻̫һÑù£¬Ëù        ÒÔÐèÒª½øÐÐת»¯¡£
             ÀýÈ磺
            
             ½ÓÏÂÀ´¾ÍÊÇʹÓÃMAT¹¤¾ß´ò¿ª×ª»¯¹ýºóµÄÄÚ´æ¿ìÕÕÎļþÁË¡£Í¨¹ýMAT¹¤¾ß¿ÉÒÔ¿´³öÕâ  ¸öÄÚ´æ¿ìÕÕÓм¸¸ö¶ÔÏ󣬶ÔÏóÖ®¼äµÄÒýÓùØÏµÊÇÔõÑùµÄ¡£ÕâÑù¶ÔÎÒÃǶ¨Î»ÄÚ´æÎÊÌâ·Ç³£     ÓаïÖú¡£
             Ò»°ãÔÚÓ¦ÓóÌÐò¿ª·¢µÄºóÆÚ»áʹÓÃÕâÈý¸ö²½ÖèÀ´ÔöǿӦÓóÌÐòµÄ½¡×³ÐÔ¡£

    ±¾ÎİæÈ¨¹éÀÖÓã²¥¿ÍAndroidÅàѵѧԺËùÓУ¬»¶Ó­×ªÔØ£¬×ªÔØÇë×¢Ã÷×÷Õß³ö´¦¡£Ð»Ð»£¡
    ×÷ÕߣºÀÖÓã²¥¿ÍAndroidÅàѵѧԺ
    Ê×·¢£ºhttp://www.itcast.cn/android/
    0 ·ÖÏíµ½£º
    ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
    ¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿