MP3ÒôÀÖ²¥·ÅÆ÷ÂÛÎÄ ÏÂÔØ±¾ÎÄ

ÇൺÀí¹¤´óѧ±ÏÒµÂÛÎÄ£¨Éè¼Æ£©

µÚ5Õ ÒôÀÖ²¥·ÅÆ÷µÄÏêϸÉè¼Æ

±¾MP3²¥·ÅÆ÷Éè¼ÆÊ±Ö÷Òª×ñÑ­ÃæÏò¶ÔÏóÔ­Ôò£¬ÃæÏò¶ÔÏó¼´£º´ÓÏÖʵÊÀ½çÖп͹۴æÔÚµÄÊÂÎ¼´¶ÔÏ󣩳ö·¢À´¹¹ÔìÈí¼þϵͳ£¬²¢ÔÚϵͳ¹¹ÔìÖо¡¿ÉÄÜÔËÓÃÈËÀàµÄ×ÔȻ˼ά·½Ê½£¬Ç¿µ÷Ö±½ÓÒÔÎÊÌâÓò£¨ÏÖʵÊÀ½ç£©ÖеÄÊÂÎïΪÖÐÐÄÀ´Ë¼¿¼ÎÊÌ⣬ÈÏʶÎÊÌ⣬²¢¸ù¾ÝÕâЩÊÂÎïµÄ±¾ÖÊÌØµã£¬°ÑËüÃdzéÏ󵨱íʾΪϵͳÖеĶÔÏó£¬×÷ΪϵͳµÄ»ù±¾¹¹³Éµ¥Î»£¨¶ø²»ÊÇÓÃһЩÓëÏÖʵÊÀ½çÖеÄÊÂÎïÏà¹Ø±È½ÏÔ¶£¬²¢ÇÒûÓжÔÓ¦¹ØÏµµÄÆäËü¸ÅÄîÀ´¹¹Ôìϵͳ£©¡£

ÔÚÃæ¶Ô¶ÔÏó·½·¨ÖУ¬¶ÔÏóºÍ´«µÝÏûÏ¢·Ö±ð±íÏÖÊÂÎï¼°ÊÂÎï¼äÏ໥ÁªÏµµÄ¸ÅÄî¡£ÀàºÍ¼Ì³ÐÊÇÊÇÊÊÓ¦ÈËÃÇÒ»°ã˼ά·½Ê½µÄÃèÊö·¶Ê½¡£·½·¨ÊÇÔÊÐí×÷ÓÃÓÚ¸ÃÀà¶ÔÏóÉϵĸ÷ÖÖ²Ù×÷¡£ÕâÖÖ¶ÔÏó¡¢Àà¡¢ÏûÏ¢ºÍ·½·¨µÄ³ÌÐòÉè¼Æ·¶Ê½µÄ»ù±¾µãÔÚÓÚ¶ÔÏóµÄ·â×°ÐÔºÍÀàµÄ¼Ì³ÐÐÔ¡£Í¨¹ý·â×°Äܽ«¶ÔÏóµÄ¶¨ÒåºÍ¶ÔÏóµÄʵÏÖ·Ö¿ª£¬Í¨¹ý¼Ì³ÐÄÜÌåÏÖÀàÓëÀàÖ®¼äµÄ¹ØÏµ£¬ÒÔ¼°ÓÉ´Ë´øÀ´µÄ¶¯Ì¬Áª±àºÍʵÌåµÄ¶à̬ÐÔ£¬´Ó¶ø¹¹³ÉÁËÃæÏò¶ÔÏóµÄ»ù±¾ÌØÕ÷¡£

ÃæÏò¶ÔÏóÉè¼ÆÊÇÒ»ÖÖ°ÑÃæÏò¶ÔÏóµÄ˼ÏëÓ¦ÓÃÓÚÈí¼þ¿ª·¢¹ý³ÌÖУ¬Ö¸µ¼¿ª·¢»î¶¯µÄϵͳ·½·¨£¬Êǽ¨Á¢ÔÚ¡°¶ÔÏ󡱸ÅÄî»ù´¡Éϵķ½·¨Ñ§¡£¶ÔÏóÊÇÓÉÊý¾ÝºÍÈÝÐíµÄ²Ù×÷×é³ÉµÄ·â×°Ì壬Óë¿Í¹ÛʵÌåÓÐÖ±½Ó¶ÔÓ¦¹ØÏµ£¬Ò»¸ö¶ÔÏóÀඨÒåÁ˾ßÓÐÏàËÆÐÔÖʵÄÒ»×é¶ÔÏó¡£ËùÎ½ÃæÏò¶ÔÏó¾ÍÊÇ»ùÓÚ¶ÔÏó¸ÅÄÒÔ¶ÔÏóΪÖÐÐÄ£¬ÒÔÀàºÍ¼Ì³ÐΪ¹¹Ôì»úÖÆ£¬À´ÈÏʶ¡¢Àí½â¡¢¿Ì»­¿Í¹ÛÊÀ½çºÍÉè¼Æ¡¢¹¹½¨ÏàÓ¦µÄÈí¼þϵͳ¡£

5.1 Àà¹ØÏµ

Õë¶Ô±¾MP3²¥·ÅÆ÷£¬¿ÉÒÔÉè¼Æ³ö²»Í¬µÄ¶ÔÏó£¬ÕâÀïÎÒÃdzÆÖ®ÎªÀ࣬¾ßÌåµÄ¿ÉÉèÖÃΪÎå¸ö°ü£¬µÚÒ»¸ö°üÖ÷Òª°üÀ¨£º³£Á¿À࣬ÏÂÔØ·þÎñÀ࣬µ±µØÁбí½çÃæÀ࣬Ö÷½çÃæÀà£¬ÍøÂçÁбí½çÃæÀ࣬²¥·Å½çÃæÀ࣬²¥·Å·þÎñÀ࣬¿ªÊ¼½çÃæÀ࣬Õâ¸ö°üÖ÷Òª

21

ÇൺÀí¹¤´óѧ±ÏÒµÂÛÎÄ£¨Éè¼Æ£©

¸ºÔð½çÃæµÄ´´½¨ºÍһЩºǫ́·þÎñ£¬¾ßÌå·ÖÅäÇé¿öÈçͼ5.1Ëùʾ¡£µÚ¶þ¸ö°üdownload°üÖ÷Òª°üÀ¨£ºSD¿¨²Ù×÷À࣬ºÍÏÂÔØÀ࣬Ö÷Òª¸ºÔðÏÂÔØÍøÂç×ÊÔ´£¬²¢°ÑÏÂÔØµ½µÄMP3Îļþдµ½SD¿¨ÖУ¬¾ßÌå¹ØÏµÈçͼ5.2Ëùʾ¡£µÚÈý¸ö°ülrc°üÖ÷Òª°üÀ¨Ò»¸ö¸è´ÊÎļþ´¦ÀíÀ࣬¸ºÔð´¦Àí¸è´ÊÎļþ¸èÇú²¥·Åʱͬ²½ÏÔʾ¸è´Ê¡£µÚËĸö°ümodel°ü¶¨ÒåÁËMP3infoʵÌåÀ࣬²¢ÊµÏÖÁËÐòÁл¯½Ó¿Ú£¬·½±ãMP3ÐÅÏ¢ÔÚ¸÷¸öÀàÖ®¼äµÄ´«µÝ£¬¾ßÌå¹ØÏµÈçͼ5.3Ëùʾ¡£µÚÎå¸ö°üxml°ü¶¨ÒåÁËÒ»¸öxml½âÎöÆ÷À࣬Ö÷Òª¸ºÔðxmlÎļþµÄ½âÎö¹¤×÷£¬µÃµ½ÍøÂçMP3ÎļþÁÐ±í¡£

Mp3ListActivity - Abort£ºlist - mp3Infos:list - UPDATA:list +buildSimpleAdapter(List)():SimpleAdapter +dowmloadXml(String()):String +isOpenNetWorld():boolean +onCreate(Bindle()):Bindler +onListItemClick(ListView,view,int,long()):void +onOptionItemSeclected(MenuItem()):boolean +pauser(String()):list startActivity -hanlder:Hanlder +dialog():void +onCreate(Bundle()):void +onKeyDown(int,KeyEvent()):void downloadService +onBind(Intnet()):lBinder +onStartCommand(Intnet intent,int flags,intStartId()):int -intentFilter:int PlayerActivity AppContent -PlayerMsg:int -URL:int localMp3listActivity -mp3infos:List +onCreate(Bindle()):Bindler +onListItemClick(ListView,view,int,long()):void +onResume():void -isFirstPlaying:boolean -isPlaying:boolean -lastButton:Button -IrcTextView:TextView -mediaPlayer:mediaPlayer -mp3info:mp3info -mp3infos:List -nextButton:Button -playingPosition:int -playingTime:int -receiver:int -SDCardRoot:String -seekBar:SeekBar -startButton:Button -timeTextView:textView +getIntentFileter():IntentFilter +getMpeFiles():List +onCreate(Bundle()):void +onPause():void +onResume():void +play(mp3Info()):void MainActivity +onCreate(Bundle()):void PlayerActivity -begin:long -currentTimeMill:long -durationTime:int -handler:Handler -isPause:boolean -isPlaying:boolean -mediaPlayer:mediaPlayer -massage:String -nextTimeMill:long -pauseTimeMills:long -queue:ArrayList -updateTimeCallBack +onBind(Intent()):binder +onStartCommand(Intent,int,int()):int ͼ5.1 Mp3Player°üÀà¹ØÏµÍ¼

22

ÇൺÀí¹¤´óѧ±ÏÒµÂÛÎÄ£¨Éè¼Æ£©

5.2 ¸÷Ä£¿éÏêϸÉè¼Æ

ÒôÀÖ²¥·ÅÆ÷°üÀ¨»¶Ó­½çÃæºÍÖ÷½çÃæ£¬ÍøÂçÎļþÁбíµÄ»ñÈ¡£¬MP3ÎļþµÄÏÂÔØÓëдSD¿¨²Ù×÷£¬MP3ÎļþµÄ²¥·ÅµÈ¼¸¸öÄ£¿é¡£ 5.2.1 ²¥·ÅÆ÷µÄ»¶Ó­½çÃæºÍÖ÷Òª½çÃæµÄÉè¼ÆºÍ˵Ã÷ 1.Ò³ÃæÉè¼Æ

AndroidµÄÿһ¸ö¿ÉÊÓ»¯½çÃæ£¬¶¼ÓÐÆäΨһµÄ²¼¾ÖÅäÖÃÎļþ£¬¸ÃÎļþÀïÃæÓи÷ÖÖ²¼¾Ö·½Ê½£¬¸÷ÖÖ×ÊÔ´ÎļþÈçͼÏñ£¬ÎÄ×Ö£¬ÑÕÉ«µÄÒýÓ㬳ÌÐòÔÚÔËÐÐʱ£¬¿ÉÒÔͨ¹ý´úÂë¶ÔÅäÖÃÎļþ½øÐжÁÈ¡¡£ÕâÑù¾Í¿ÉÒÔÐγɲ»Í¬µÄ¿ÉÊÓ»¯½çÃæºÍìÅÀöµÄЧ¹û¡£ 2.´úÂë±àд

ÔÚ½éÉܸ÷¸ö¾ßÌåµÄ½çÃæÖ®Ç°ÏÈÒªÉùÃ÷Ò»ÏÂÒªÏëÒÔÁбíÐÎʽÏÔʾһ×é¶ÔÏóµÄ²¼¾ÖÎļþ£¬ÔÚÕâ¸öÎļþÖбØÐë°üº¬Ò»¸öListView¶ÔÏ󣬯ä×î¼òµ¥µÄʵÏÖÐÎʽ´úÂëÒ»

23

ÇൺÀí¹¤´óѧ±ÏÒµÂÛÎÄ£¨Éè¼Æ£©

°ãÈçÏ£ºListView android:id=\ android:layout_width=\ android:layout_height=\ android:drawSelectorOnTop=\ android:scrollbars=\>\

AndroidµÄÿһ¸ö¿ÉÊÓ»¯½çÃæ£¬¶¼ÓÐÆäµÄΨһµÄ²¼¾ÖÅäÖÃÎļþ£¬¸ÃÎļþÀïÃæÓи÷ÖÖ²¼¾Ö·½Ê½£¬ºÍ¸÷ÖÖ×ÊÔ´ÎļþÈçͼÏñ£¬ÎÄ×Ö£¬ÑÕÉ«µÄÒýÓ㬳ÌÐòÔÚÔËÐÐʱ£¬¿ÉÒÔͨ¹ý´úÂë¶Ô¸÷ÅäÖÃÎļþ½øÐжÁÈ¡¡£ÕâÑù¾Í¿ÉÒÔÐγɲ»Í¬µÄ¿ÉÊÓ»¯½çÃæºÍìÅÀöµÄЧ¹û¡£²¥·ÅÆ÷Ö÷½çÃæÊÇÒ»¸öActivity£¬Android¹¤³ÌÔÚÿ¸öactivityÆô¶¯µÄʱºò»áÊ×ÏÈÖ´ÐÐOncreate()·½·¨£¬ÈçÏ´úÂ룺

@Override Public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState); setContentView(R.layout.play_rack);} ¸Ã·½·¨Ö÷ÒªÖ´ÐнçÃæµÄ³õʼ»¯²Ù×÷£¬ActivityÓиöÉèÖò¼¾ÖµÄ·½·¨£ºContext.setContentView(layoutResID),²ÎÊýΪ×ÊÔ´ID£¬¸ÃIdÔÚ¹¤³ÌĿ¼res/layoutÏ£¬Ö÷½çÃæ²¼¾ÖÎļþÃûΪplay_rack¡£

ÏÂ

Ãæ

Ϊ

play_rack.xml

²¼

¾Ö

ÎÄ

¼þ

´ú

Âë

½á

¹¹

Èç

주

ÔÚ¾ø¶Ô²¼¾ÖÏÂǶÌ×Á½ÖÖÏßÐÔ²¼¾ÖºÍ£¬µÚÒ»¸öʵÏÖÁ˱êÌâºÍ¸èÇúÃûµÄÏÔʾλÖã¬Í¨¹ý²¼¾ÖÉèÖþø¶Ô×ø±êÀ´¿ØÖƱêÌâµÄλÖá£Ã¿¸ö²¼¾ÖÄÚ¿ÉÒÔ·ÅÖöàÖÖWidget£¨´°Ì岿¼þ£©ÀýÈ磺µÈ¡£Ã¿¸öWidgetÄÚÓжàÖÖÊôÐÔ£¬¿ÉÒÔÉèÖøÃWidgetµÄ×ø±ê£¬´óС£¬±³¾°ºÍÑÕÉ«µÈ²ÎÊý¡£ÔÚ²¥·Å½çÃæÖУ¬¸è´ÊÏÔʾΪ¾ÓÖУ¬ÊµÏÖ·½·¨´úÂëÈç

24