Androidƽ̨ÒôÀÖ²¥·ÅÆ÷˵Ã÷Êé

»ùÓÚAndroidƽ̨µÄÊÖ»úÒôÀÖ²¥·ÅÆ÷µÄÉè¼ÆÓëʵÏÖ

}

}

}

return super.onOptionsItemSelected(item);

Ч¹ûÈçͼ5-20£¬Í¼5-21¡£

ͼ5-20 ¶ÔÊÕ²Ø×éÖеÄÒôÀÖ²Ù×÷½çÃæ ͼ5-21 ¶ÔÊÕ²Ø×é²Ù×÷½çÃæ

- 42 -

½á ÂÛ

±¾Éè¼Æ¿ª·¢µÄÊÇAndroidÊÖ»úƽ̨µÄÒôÀÖ²¥·ÅÆ÷Ó¦ÓóÌÐò£¬ÊµÏÖÁ˲¥·ÅÆ÷µÄ»ù±¾¹¦ÄÜ£º²¥·Å£¬ÔÝÍ£¡¢Í£Ö¹¡¢ÉÏÒ»Ê×/ÏÂÒ»Êס¢Òô¹ìµ÷½Ú¡¢¸èÊÖͼƬÏÔʾ¡¢±¾µØÒôÀÖ¹ÜÀí¡¢ÍøÂçÇú¿â¹ÜÀí¡¢ÏÂÔعÜÀí¡¢ÊղعÜÀíµÈ¹¦ÄÜ¡£Ê¹ÎÒ¶ÔAndroidÒôÀÖ²¥·ÅÆ÷ϵͳµÄÕûÌåÉè¼ÆÓÐÒ»¸öÉîÈëµÄÁ˽⣬¶ÔÕû¸öÁ÷³ÌÒ²»áÓÐÒ»¸öÇåÎúµÄÈÏʶ¡£¿ª·¢AndroidÒôÀÖ²¥·ÅÆ÷£¬Òª×¥×¡¿ª·¢µÄºËÐIJ¿·Ö£¬ÒôÀÖ²¥·ÅÆ÷´óÌåÓɲ¥·ÅÖ÷½çÃæ¡¢²¥·ÅÁÐ±í¡¢²Ëµ¥¡¢²¥·ÅÉèÖá¢Îļþä¯ÀÀ¡¢¸èÇúËÑË÷Áù´óºËÐÄ×é³É£¬Ö»ÒªÕÆÎÕÁËÕâÁù²¿·ÖµÄ¿ª·¢£¬ÒôÀÖ²¥·ÅÆ÷¾ÍÄܳõ¾ß¹æÄ£¡£¶øÆäËüµÄ¹¦Äܶ¼ÊÇÔÚÕâÁù¸ö¹¦ÄܵĻù´¡ÉÏÈ¥²¹³äÌí¼ÓµÄ£¬µ«ÊÇÕâÊǹ¦ÄܵÄÈ·ÊDZز»¿ÉÉٵŦÄÜ£¬·ñÔò¾Í²»ÄÜËãÊÇÒôÀÖ²¥·ÅÆ÷ÁË¡£

±¾Éè¼ÆÔËÓõÄϵͳƽ̨ÊÇÏÖ½ñ×îÈÈÃŵÄAndroidϵͳ£¬ÊÇÒ»¸ö¿ªÔ´µÄ»ùÓÚLinuxϵͳµÄÊÖ»úƽ̨¡£ÊÇÒÔJavaÓïÑÔ±àд+SQLiteÊý¾Ý¿âÖ§³Ö+SharePreferenceÅäÖÃÎļþµÄ×éºÏ·½Ê½½øÐÐÊý¾Ý¹ÜÀí¡£ÊµÏÖÁËÒôÀÖ²¥·ÅÆ÷µÄϵͳ±à³Ì¡£

±¾´ÎÉè¼Æ¶Ô²¥·ÅÆ÷µÄϵͳ½á¹¹¿ò¼Ü×öÁ˾«ÐĵĹ¹Ë¼ÓëÉè¼Æ£¬²ÉÓÃÖ÷Òª¿ª·¢¹¤¾ßÊÇEclipse3.5+JavaÓïÑÔµÄÖ§³Ö£¬Android Development ToolµÄ²å¼þ£¬ºÍAndroid SDK2.1°æ±¾µÄÈ«Ãæ½áºÏ£¬²ÅʹÕû¸öÒôÀÖ²¥·ÅÆ÷ϵͳµÃÒÔʵÏÖ¡£

×ÜÖ®£¬¾­¹ý¼¸¸öÔµÄAndroidϵͳ¼¼Êõ֪ʶµÄѧϰºÍ¶ÔÒôÀÖ²¥·ÅÆ÷µÄ¹¹Ë¼ÓëÉè¼Æ£¬Ê¹ÎÒ¶ÔAndroidϵͳÓÐÁËÒ»¶¨µÄÁ˽⣬ÈÃÎÒ¶ÔAndroidϵͳÉϵĿª·¢Á÷³ÌºÍ¿ª·¢Ä£Ê½ÓÐÁËÉîÈëµÄÁ˽⣬Õâ¶ÔÎÒÒÔºóµÄAndroidÏîÄ¿¿ª·¢ÓкܴóµÄ°ïÖú¡£

- 43 -

»ùÓÚAndroidƽ̨µÄÊÖ»úÒôÀÖ²¥·ÅÆ÷µÄÉè¼ÆÓëʵÏÖ

²Î¿¼ÎÄÏ×

[1] ÓàÖ¾Áú.Google Android SDK¿ª·¢·¶Àý´óÈ«[M].±±¾©:ÈËÃñÓʵç³ö°æÉç,2009.13-122. [2] E2ECloud¹¤×÷ÊÒ.ÉîÈëdz³öGoogle Android[M].±±¾©:ÈËÃñÓʵç³ö°æÉç,2009.22-87. [3] Àî¸Õ.·è¿ñjava½²Òå[M].±±¾©:µç×Ó¹¤Òµ³ö°æÉç2008.5-187. [4] Àî¸Õ.·è¿ñAndroid½²Òå[M].±±¾©:µç×Ó¹¤Òµ³ö°æÉç2011.77-109.

[5] Mark L.Murphy.Android¿ª·¢ÈëÃŽ̳Ì[M].±±¾©:ÈËÃñÓʵç³ö°æÉç2010.10-91. [6] Èü¿ü´º.JAVA¹¤³ÌÓ¦ÓÃÓëÏîĿʵ¼ù[J].΢ÐÍ»úÓëÓ¦ÓÃ,2002.3(8):5-8.

[7] ËﶫÎÀ,Õż½ºì,ÀîÉùÀû.Êý¾Ý¿â·ÃÎʼ¼ÊõÑо¿[J].ÏÖ´úµç×Ó¼¼Êõ. 2008.8(12):5-8. [8] Bruce Tate. Bitter Java [M]. Manning Publications,2002.46-52. [9] G.Cornell,Horstmann. Core Java [M]. SunSoft Press, 1996.56-58.

[10] Bruce Eckel. Thinging in Java Third Edition [M]. Pearson Education,2008.93-98. [11] Óà¿¡ÐÂ,J2EEÖжÔÏó¹ØϵӳÉäµÄÑо¿ÓëʵÏÖ[J].¼ÆËã»ú¼¼ÊõÓë·¢Õ¹,2007.17(3):90. [12] ÑîµÂ¸Õ,J2EEƽ̨ÔÚµç×ÓÉÌÎñϵͳÖеÄÓ¦ÓÃÑо¿[J].É̳¡ÏÖ´ú»¯,2007.6-99.

[13] ÌÕÒÔÕþ,ÎâÖ¾½Ü,Ìƶ¨ÓÂ.»ùÓÚJ2EEµÄÓ¦Óÿò¼Ü¼¼ÊõÑо¿[J].¼ÆËã»ú¹¤³ÌÓëÉè¼Æ,2007.28(4):8-26. [14] ÃçÏþ»Ô.»ùÓÚJ2EEµÄÊý¾Ý³Ö¾Ã»¯µÄÑо¿ÓëʵÏÖ[J].¼ÆËã»ú¹¤³Ì,2007.33(5):2-72. [15] Áõ¾²Èã.»ùÓÚJ2EE¼¼ÊõµÄµÚÈý·½ÄæÏòÎïÁ÷ÐÅϢϵͳµÄ¹¹½¨[J].¼ÛÖµ¹¤³Ì,2007.93-96. [16] ³ÂÅô,³ÌÓÂ.J2EEÏîÄ¿¿ª·¢ÊµÓð¸Àý[J].±±¾©:¿Æ¼¼³ö°æÉç,2006.

[17] ³Ìΰ. ¿ª·¢ÕßÍ»»÷:JSPÍøÂ翪·¢¾­µäÄ£¿éʵÏÖÈ«¼¯[J].±±¾©:µç×Ó¹¤Òµ³ö°æÉç,2008.

- 44 -

¸½Â¼ Ô´´úÂë

£¨1£©¶¯»­Ð§¹û´úÂë

public class ActivitySplash extends Activity { private void setupView(){

ImageView _ivSplash=(ImageView)findViewById(R.id.ivSplash);

Animation _anim=AnimationUtils.loadAnimation(this, android.R.anim.fade_in); _ivSplash.setAnimation(_anim);

_anim.setAnimationListener(new AnimationListener() { @Override public void onAnimationStart(Animation animation) { // TODO Auto-generated method stub } @Override public void onAnimationRepeat(Animation animation) { // TODO Auto-generated method stub } @Override public void onAnimationEnd(Animation animation) { Intent intent=new Intent(ActivitySplash.this, ActivityMusicPlay.class); startActivity(intent); finish(); } }); }

@Override

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.splash); setupView(); } }

£¨2£©²¥·Å½çÃæ´úÂë

public class ActivityMusicPlay extends Activity { private ImageButton playPauseBtn, nextBtn, previousbtn, ibtnHome;// ²¥·Å¿ØÖƵİ´Å¥ private ImageButton musiclist;// ²¥·ÅÁÐ±í°´Å¥ private TextView title; // private TextView artist; // private TextView album; // µ±Ç°ÓÃÓÚÏÔʾ¸èÇúÐÅÏ¢µÄ¿Ø¼þ private TextView current; // private TextView duration;// private ImageView ivAlbumPic; private SeekBar sb; private int progress = 0;// ½ø¶ÈÌõµÄ½ø¶È private int status = 2;// ÒôÀÖ²¥·Å״̬ private StatusUpdateReceiver doStatusUpdate; private TimeUpdateReceiver doTimeUpdate; private InfoUpdateReceiver doInfoUpdate; String titles; String artists;

- 45 -

»ùÓÚAndroidƽ̨µÄÊÖ»úÒôÀÖ²¥·ÅÆ÷µÄÉè¼ÆÓëʵÏÖ

String albumname; // ²¥·Å״̬¸üнÓÊÜÆ÷ public class StatusUpdateReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { status = intent.getIntExtra(\ Log.i(\½ÓÊÕµ½µÄ²¥·Å״̬\ switch (status) { case Const.STATUS_PLAYING: playPauseBtn.setImageResource(R.drawable.desktop_pausebt); break; case Const.STATUS_PAUSED: playPauseBtn.setImageResource(R.drawable.desktop_playbt); break; case Const.STATUS_STOPPED: playPauseBtn.setImageResource(R.drawable.desktop_playbt); break; default: break; } } } // ¸èÇúÐÅÏ¢¸üнÓÊÜÆ÷ public class InfoUpdateReceiver extends BroadcastReceiver { @Override public void onReceive(Context content, Intent i) { int totalms = i.getIntExtra(\ Date totalTime = new Date(totalms); String ts = (totalTime.getSeconds() < 10) ? (\ totalTime.getSeconds()); titles = i.getStringExtra(\ title.setText(titles); artists = i.getStringExtra(\ artist.setText(artists); albumname = i.getStringExtra(\ album.setText(albumname); duration.setText(totalTime.getMinutes() + ts); String albumPicPath = i.getStringExtra(\ Bitmap bm = BitmapTools.getbiBitmap(albumPicPath); if (bm != null) { ivAlbumPic.setImageBitmap(bm); } } } /* ʱ¼ä¸üеĹ㲥ҲÊÇÔÚServcieÀï¹ã²¥µÄ ¸ù¾ÝServiceµÄÐÅÏ¢ */ public class TimeUpdateReceiver extends BroadcastReceiver { @Override public void onReceive(Context content, Intent i) { int curms = i.getIntExtra(\ int totalms = i.getIntExtra(\ Date curTime = new Date(curms); // ÏÂÃæÊǽ«¹ã²¥À´µÄµ±Ç°ºÁÃëÊýת»»³É00:00µÄ¸ñʽ

- 46 -

ÁªÏµ¿Í·þ£º779662525#qq.com(#Ì滻Ϊ@) ËÕICP±¸20003344ºÅ-4