
»ùÓÚAndroidµÄÎļþä¯ÀÀÆ÷µÄ¿ª·¢ÓëʵÏÖ
1£®ÏµÍ³ÎļþÓëÓû§Ó¦ÓÃÎļþ¼°Ó¦ÓóÌÐòÇл»¡£²ÉÓÃÊ÷½á¹¹£¬ÁÐ±í£¬ËõÂÔͼÏÔʾ£¬ÅÅÐò£¨ÈÕÆÚ¡¢´óС¡¢¸ñʽ¡¢Ãû³Æ£©¡¢ÎļþÍÏ×§¡£
2£®ËÑË÷¹¦ÄÜ£¨µ÷ÓÃÊäÈë·¨£©¡£
3£®»ù±¾¿ØÖƲÙ×÷£º·µ»ØÉÏÒ»¼¶£¬Ç°½ø£¬³·Ïû¡£
4£®²»Í¬Îļþµ÷Óò»Í¬ÆäËûÈí¼þ¡£Õë¶ÔÒôÀÖ¡¢Í¼ÏóÌî¼ÓʹÓù¦ÄÜ¡£Í¼Ïó£ºÉè±ÚÖ½¡¢ÆÁÄ»±£»¤¡¢ÁªÏµÈËÍ·Ïñ¡¢Ìî¼ÓÐÂÁªÏµÈË£¬Éè·Ö×éÍ·Ïñ¡¢±à¼Í¼Ïó£»ÒôÀÖ£ºÉèÁåÉù¡¢ÐÅÏ¢Ìáʾ¡¢ÄÖÖÓ¡¢ÈÕÀúÌáÐÑ¡¢ÁÄÌìÊÒ¡£
5£®ÈçÓпÉÄÜÌî¼ÓÀ¶ÑÀ£¨ÊÖ»ú·ÃÎÊÊÖ»ú¡¢µçÄÔ·ÃÎÊÊּǣ©£¬ÉÏ´«ÍøÂ磬Ìí¼Óµ½Óʼþ¹¦ÄÜ¡£
3.2¹¦ÄÜÄ£¿éÉè¼Æ¸ÅÊö
»ù±¾¹¦ÄÜÄ£¿éµÄʵÏÖÊÇҪʵÏÖ»ùÓÚandroidµÄÎļþä¯ÀÀÆ÷µÄһЩ»ù±¾¹¦ÄÜ£¬ÏñÎļþä¯ÀÀÆ÷µÄÎļþÁбíµÄ´´½¨£¬ÊµÏÖÎļþä¯ÀÀ¹¦ÄÜ£¬Îļþ´ò¿ª¹¦ÄÜ£¬ÎļþÊôÐÔÐ޸ģ¬Îļþ¼Ð¼ÓÃÜ£¬Îļþ¼Ð½âÃÜ£¬ÎļþÒþ²Ø£¬ÎļþÏÔʾ£¬Îļþä¯ÀÀÆ÷µÄ²Ëµ¥×Ô¶¯ÏÔʾ£¬Ð½¨Îļþ¼Ð£¬É¾³ýÎļþ¼Ð£¬ÐÞ¸ÄÎļþ¼ÐµÄÊôÐÔ£¬Òþ²ØÎļþ¼Ð£¬ÏÔʾÒþ²ØÎļþ¼Ð£¬Ð½¨Îļþ£¬É¾³ýÎļþ£¬ÒÔ¼°Ö÷½çÃæµÄÉè¼ÆÓ뿪·¢ÊµÏÖ¡£
Îļþä¯ÀÀÆ÷µÄÖ÷½çÃæÓÉ×îÉÏ·½µÄÎļþ¹ÜÀíλÖá¢ÖÐÉÏ·½µÄµ¼º½±êÇ©À¸ºÍÏ·½µÄÏÔʾÀ¸ÄÚÈݹ¹³É¡£Óû§Í¨¹ý±¾µØÎ»Ö㬿ÉÒÔ¹ÜÀíµ±Ç°ÊÖ»úºÍSD¿¨ÉϵÄÎļþ£»Í¨¹ý¹²ÏíλÖ㬹ÜÀíÔÚ¾ÖÓòÍøÄ򵀮äËûÖÕ¶ËÉϵÄÎļþ£»Í¨¹ýÔ¶³ÌλÖ㬷ÃÎÊFTP·þÎñÆ÷ÉϵÄÄÚÈÝ¡£
ËÑË÷¹¦ÄÜ£ºÓû§¿ÉÒÔͨ¹ý´Ë¹¦ÄÜÑ¡ÔñËÑË÷ÀàÐÍ»òÕßÊäÈë¹Ø¼ü´ÊµÄ·½Ê½£¬ËÑË÷SD¿¨ÉϵÄÄÚÈÝ;¶ø×îºóÒ»¸ö±êÇ©ÊÇÊÓͼÇл»¹¦ÄÜ£¬Óû§¿ÉÒÔÔÚͼ±êºáÅźÍÁбí״̬ÏÂÑ¡Ôñ¡£
Óû§¿ÉÒÔͨ¹ý³¤°´Îļþ/Îļþ¼ÐµÄ·½Ê½£¬Ñ¡ÔñһϵÁвÙ×÷·½Ê½¡£Èç³£¼ûµÄ´ò¿ª¡¢¼ôÇС¢¸´ÖÆ¡¢É¾³ý¡¢ÖØÃüÃû¡¢È«Ñ¡¡¢Ñ¹Ëõ¡¢·¢ËÍ¡¢ÊôÐԵȡ£
ÔÚÕâÀïÌáµ½µÄ·¢ËÍ£¬ºÍͨ³£´ó¼ÒÔÚÊÖ»úÉÏÏÔʾµÄ·¢Ë͹¦Äܲ»Í¬£¬ÒòΪÆä²»ÊÇͨ¹ý²ÊÐÅ¡¢À¶ÑÀ¡¢ºìÍâÏߵȣ¬¶øÊÇÒÔGmailºÍÓʼþµÄ·½Ê½·¢Ë͸ÃÎļþ;´ËÍ⣬ÆäÌṩzipºÍgzÁ½ÖÖѹËõ¸ñʽ£¬Í¨¹ýѹËõÎļþµÄ¸ñʽ£¬ÎªÓû§Áô³ö¸ü¶àµÄ¿ÉÓÿռ䡣[15]
ÓëÆäËûÊÖ»úÈí¼þÀàËÆ£¬Îļþä¯ÀÀÆ÷µÄÉèÖù¦ÄÜ»¹ÊǷḻ¶à²ÊµÄ¡£´ÓÖ÷ÌâÄÚÈݵ½²¼¾ÖÉèÖ㬴ÓÊÓͼ±ä¸üµ½Æ«ºÃÉèÖ㬴¦´¦ÌåÏÖÁËÎļþä¯ÀÀÆ÷Ìṩ¸øÓû§¸öÐÔ»¯µÄ·þÎñ¡£±ÈÈçÎÒÃÇΪÁËËæÊ±Á˽âSD¿¨µÄ´æ´¢Çé¿ö£¬´ò¿ªÁËSD¿¨ÈÝÁ¿ÔÚµØÖ·À¸ÉϵÄÏÔʾ¡£
µÚ 12 Ò³ ¹² 56 Ò³
»ùÓÚAndroidµÄÎļþä¯ÀÀÆ÷µÄ¿ª·¢ÓëʵÏÖ
Óû§ÔÚÎļþä¯ÀÀÆ÷µÄÉèÖù¦ÄÜÖУ¬»¹¿ÉÒÔ¿´µ½ÆäʵÑé²úÆ·¡ª¡ªÀ¶ÑÀÑ¡Ïî¡£Android RomÔÚ3.0ÒÔϵİ汾£¬ÐèÒªÊ×ÏÈÓµÓÐ×î»ù²ãµÄrootȨÏ޲ſÉÒÔʹÓá£Óû§ÔÚ¿ªÆô¸Ã¹¦Äܲ¢´ò¿ªÀ¶ÑÀºó£¬¾Í¿ÉÒÔÆäËûÀ¶ÑÀÖÕ¶Ë£¬·ÃÎʸÃÖÕ¶ËÖеÄ×ÊÁÏ¡£
Îļþä¯ÀÀÆ÷»¹ÌṩÁ˱¾µØºÍÔ¶³ÌÍøÂç¹²ÏíµÄ¹¦ÄÜ¡£Óû§¿ÉÒÔͨ¹ý±¾µØ¹²Ïí¡¢FTPÔ¶³ÌºÍÀ¶ÑÀµÈÈýÖÖģʽ£¬Óû§¿ÉÒÔÔÚÊÖ»úÔ¶³ÌÔÚÒÆ¶¯ºÍ×ÀÃæÖÕ¶ËÖ®¼ä·ÖÏíÎļþ£¬´«Êä¡¢²Ù×÷£»Èí¼þÄܶÀÁ¢´ò¿ªÃ½ÌåÎļþ£¬ä¯ÀÀͼƬ£¬±à¼Îı¾£¬ÉõÖÁ¿ÉÒÔÔ¶³Ì²¥·ÅýÌåÎļþ¡£ÎÒÕâ±ß¶Ô¹¦ÄÜÄ£¿é½øÐÐÁËһϹéÄÉ×ܽáµÄ³ýÁËÒ»¸ö±È½ÏÏÊÃ÷µÄ»ù±¾Ä£¿éÈçͼ3.1
ͼ3.1 ±¾µØÄ£¿éÀýͼ
ÔÚÎļþä¯ÀÀÆ÷µÄ±¾µØ»ù±¾¹¦ÄÜÖÐÎÒÃÇʵÏÖÁËÎļþµÄ»ù±¾ä¯ÀÀ¹¦ÄÜ£¬ÆäÖаüÀ¨ÎļþµÄ¿½±´¡¢ÎļþÒþ²Ø¡¢Îļþɾ³ý¡¢Îļþ·¢ËÍ¡¢Îļþ¸üÃû¡¢ÎļþÕ³Ìù¡¢Îļþ±à¼¡¢Îļþ·¢ËÍ¡¢Îļþ½ÓÊÕ¹¦ÄÜ£¬ÊµÏÖÁËÏà¹ØÎļþµÄµ÷ÓᢸøÏà¹ØÈí¼þµÄµ÷ÓÃÔ¤ÁôÁ˽è¿Ú£¬Í¬Ê±ÊµÏÖÁËÎļþä¯ÀÀÆ÷µÄһЩ×ÔÉíµÄÀ©Õ¹¡£µ±ÎÒÃÇÆô¶¯Îļþä¯ÀÀÆ÷µÄʱºò£¬ÏµÍ³»á×Ô¶¯µÄ½øÈëĬÈϵÄĿ¼¡£À´ÏÔʾÕâ¸ö¸ùĿ¼ÏµÄËùÓÐÎļþ¼°Îļþ¼Ð¡¢Í¬Ê±°´ÕÕ²»Í¬µÄÎļþÀàÐÍÎļþÀ©Õ¹Ãû
µÚ 13 Ò³ ¹² 56 Ò³
»ùÓÚAndroidµÄÎļþä¯ÀÀÆ÷µÄ¿ª·¢ÓëʵÏÖ
À´×Ô¶¯Ê¶±ðÎļþ£¬¸øÎļþ·ÖÅ䲻ͬµÄͼ±ê£¬ÕâÑùµÄ»°Óû§Ö»Òª¿´µ½ÎÒÃÇÏÔʾ¸øÓû§µÄºÜÈÝÒ×ʶ±ðµÄСͼ±ê£¬¾Í»áºÜ¿ìµÄÖªµÀĿǰĿ¼ÏÂÓÐÄÇЩÀàÐ͵ÄÎʼۣ¬ÄÇЩÊÇ¿ÉÒÔʹÓõģ¬ÄÇЩÊÇÒôÀÖÎļþ£¬ÄÇЩÊÇͼƬÎļþ£¬ÕâÑù¶ÔÓû§À´Ëµ¾ÍºÜÈÝÒ׵ĶÔÎʼ۽øÐзÖÀ࣬ҲÓÐÀûÓÚÓû§Ñ°ÕÒÄ¿±êÎļþ¡¢Ñ¡ÔñÎļþ¡£ÓÐÁË·ÖÀàÏÔʾÎļþ£¬Ö»ÒªÓû§ÔÚʵ¼ÊÓ¦Óùý³ÌÖÐÓÐÁËÒ»¶¨³Ì¶ÈµÄʹÓþÑ飬¶ÔÎļþä¯ÀÀÆ÷µÄʵÓûá¸ü¼ÓµÃÐÄÓ¦ÊÖ¡£[17]
ÔÚÒÔÉ϶ÔÎļþä¯ÀÀÆ÷µÄ±¾µØ»ù±¾²Ù×÷Ä£¿éµÄÃèÊöÖ®ºó£¬ÄÜʹÓû§ÔÚÀí½âÎļþä¯ÀÀÆ÷ä¯ÀÀÆ÷µÄʹÓùý³ÌÉÏÓнøÒ»²½ÌáÉý£¬¶Ô±¾Èí¼×ÓнøÒ»²½µÄÁ˽⣬ÄÜÔÚÒÔºóµÄʵ¼ÊÓ¦ÓÃÖиü¿ìµÄÉÏÊÖ£¬¶ÔÎļþä¯ÀÀÆ÷µÄ×î»ù±¾×îÖØÒªµÄÒ»¸öÄ£¿éÖ®Ò»»áÓÐÒ»¸ö¸ü¼ÓÉî¿ÌµÄÀí½â¡£
3.3ÏîÄ¿²¿·Ö´úÂëÒÔ¼°×¢ÊÍ
±¾ÕÂÖ÷Òª½éÉܱ¾ÏîÄ¿µÄһЩ´úÂë¼°×¢ÊÍ£¬×îºó»áչʾһ²¿·Ö¹¦ÄÜ£¬ 3.3.1ÎļþĿ¼ÏÔʾ´úÂë¼°×¢ÊÍ
/**
*´´½¨ÎļþÁбíÀà
*¸ÃÀà¼Ì³ÐÓÚListActivityʹ֮ÓÐÎļþÁÐ±í¹¦ÄÜ */
public class FileList extends ListActivity { /**
*´´½¨ÎļþÁбí
*ÁÐ±í¹¦ÄÜ£¬ÎļþÁÐ±í¹¦ÄÜ¿ÉÒÔ½«Îļþ´æÈëÁбíÖÐ *ÁбíÊÇ˽ÓÐÊôÐÔ£¬Ö»ÄÜ×Ô¼ºµ÷Óà */
private List
*µ±Android»î¶¯µÚÒ»´ÎÆô¶¯µÄʱºòµ÷ÓÃOnCreate£¨£©º¯Êý *OnCreat£¨£©º¯ÊýÊǼ̳ÐÓÚ¸¸ÀàListActivity */
@Override
public void onCreate(Bundle icicle) {
µÚ 14 Ò³ ¹² 56 Ò³
»ùÓÚAndroidµÄÎļþä¯ÀÀÆ÷µÄ¿ª·¢ÓëʵÏÖ
super.onCreate(icicle); /**
*ÉèÖÃÊÓͼµÄ²¼¾Ö¸ñʽΪÏßÐÔ²¼¾Ö *´´½¨ÎļþµÄ¸ùĿ¼ *½«¸ùĿ¼¼ÓÈëÎļþÁбíÖÐ */
setContentView(R.layout.directory_list); fill(new File(\} /**
*ÉèÖõã»÷·½·¨
*·½·¨onListItemClick¼àÌýÎļþÁбíµÄµã»÷ʼþ *¸Ã·½·¨onListItemClickʹÊܱ£»¤µÄ·½·¨ */
@Override
protected void onListItemClick(ListView l, View v, int position, long id) { /**
*»ñÈ¡µ½µã»÷ÐеÄID,·µ»ØÀàÐÍΪÕûÐÎ *ÅжϻñµÃµÄIDÊDz»ÊÇΪ0
*Èç¹û»ñµÃIDΪ0Ôò˵Ã÷Ñ¡ÔñµÄÊǸùĿ¼½ø¶øÏÔʾ¸ùĿ¼ *Èç¹ûID²»Îª0ÔòûÓÐÑ¡Ôñ¸ùĿ¼ *´«ÈçÑ¡ÔñÎļþÁбíµÄIDºÅ *ÔÙ´ÎÅжÏIDÊDz»ÊÇÔÚÎļþĿ¼ÖÐ *Èç¹ûÎļþIDÔÚĿ¼ÖÐÔòµ÷ÓÃÏÔʾĿ¼·½·¨ *Èç¹û²»ÔÚÎļþĿ¼ÀïÔòµ¯³öÌáʾ¿ò *ÌáʾÓïΪThat's a file, not a directory *Óû§Ñ¡Ôñ°´Å¥·µ»ØfalseÖµ */
int selectionRowID = (int) getSelectionRowID(); if (selectionRowID == 0) {
µÚ 15 Ò³ ¹² 56 Ò³
»ùÓÚAndroidµÄÎļþä¯ÀÀÆ÷µÄ¿ª·¢ÓëʵÏÖ
}
}
fillWithRoot();
File file = new File(items.get(selectionRowID)); if (file.isDirectory())
fill(file.listFiles());
AlertDialog.show(this, \
\
else
} else {
Õâ¶Î³ÌÐòÖ÷ҪʵÏÖÁËÎļþä¯ÀÀÆ÷µÄÎļþÁбíÏÔʾ¹¦ÄÜ£¬ÎÒÃÇн¨ÁËÒ»¸öÀ࣬ÀàÃû×Ö½ÐFileListÕâ¸öÀà¼Ì³ÐÓëListActivityÕâÑùµÄ»°£¬Õâ¸öÀà¾ÍÓÐÁËÀàËÆÓÚJavaÖеÄListÀàËùʵÏֵŦÄÜ£¬Äܹ»ÏÔʾÁÐ±í£¬¶øListActivityÀàÓм̳ÐÓÚActivityÀ࣬Õâ¸öÀàÊÇandroidϵͳµÄ×î»ù±¾µÄÀàÖ®Ò»£¬ÓÐÕâ¸öÀàµÄ»°£¬ListActivity¾ÍÊÇÒ»¸öactivity£¬¾Í¿ÉÒÔÓÃÀ´ÏÔʾ¡£¶øFileList¾ÍÊÇÒ»¸öactivity£¬¿ÉÒÔÓÃÀ´ÏÔʾ£¬¶øÇÒËû»¹ÓÐһЩJavaÖеÄListÀàµÄÏàËÆµÄ¹¦ÄÜ¡£
½ø¶øÉèÖÃÎļþä¯ÀÀÆ÷µÄ²¼¾Ö·½Ê½ÎªÏÖÐв¼¾Ö£¬µ÷ÓÃÎļþä¯ÀÀÆ÷Ô´´úÂëµÄ²¼¾ÖÎļþ£¬ÔÚ²¼¾ÖÎļþÖÐÉèÖÃÎļþä¯ÀÀÆ÷µÄ²¼¾Ö·½Ê½¡£
½ÓÏÂÀ´¾ÍÊÇFileListÕâ¸öÀàÖØÐ´Á˸¸ÀàÀïÃæµÄÒ»¸ö·½·¨OnCreat·½·¨£¬Õâ¸ö·½·¨ÓÃÓÚÉú³É³ÌÐòµÄ½çÃæ£¬µ±¹¤³ÌµÄÔ´´úÂëÔËÐеÄʱºò£¬Æô¶¯ÐéÄâÉ豸£¬Õâʱ¾ÍÊÇandroidµÄÒ»¸öactivity£¬ËùÒÔϵͳ¾Í»áÕÒµ½Ô´´úÂëµÄµÄOnCreat·½·¨£¬Éú³ÉÒ»¸ö¿ÉÊӵĽçÃæ¡£
ÒòΪÉú³ÉµÄÎļþĿ¼ÊÇÓÃList·½Ê½À´ÏÔʾµÄ£¬ÕâÑùµÄ»°£¬Ã¿¸öÀúList¾ÍÓÐ×Ô¼º¶ÀÒ»ÎÞ¶þµÄId£¬µ±ÎÒÃǵã»÷ÏàÓ¦µÄListÁеÄʱºò£¬¾Í»áÓÐÒ»¸öµ¥»÷¼àÌýÆ÷¶ÔÓû§µÄ»î¶¯½øÐмàÌý£¬ÔÚ¼àÌýÆ÷ÖжԵã»÷µÄId½øÐÐÅжϣ¬Èç¹ûÅжÏIdÊÇ0µÄ»°ÔòÒâζ×ÅÓû§Ñ¡ÔñµÄÊǸùĿ¼£¬Èç¹ûÑ¡µÄ²»ÊǸùĿ¼¾Í´ò¿ªÏàÓ¦µÄÎļþ»òÕßĿ¼¡£ 3.3.2·µ»ØÉÏÒ»¼¶Ä¿Â¼´úÂë¼°×¢ÊÍ
//·µ»ØÉÏÒ»¼¶Ä¿Â¼
private void upOneLevel() {
if(this.currentDirectory.getParent() != null)
this.browseTo(this.currentDirectory.getParentFile());
µÚ 16 Ò³ ¹² 56 Ò³
°Ù¶ÈËÑË÷¡°77cn¡±»ò¡°Ãâ·Ñ·¶ÎÄÍø¡±¼´¿ÉÕÒµ½±¾Õ¾Ãâ·ÑÔĶÁÈ«²¿·¶ÎÄ¡£Êղر¾Õ¾·½±ãÏ´ÎÔĶÁ£¬Ãâ·Ñ·¶ÎÄÍø£¬Ìṩ¾µäС˵×ÛºÏÎÄ¿â»ùÓÚandroidµÄÎļþä¯ÀÀÆ÷¿ª·¢ÓëʵÏÖ(4)ÔÚÏßÈ«ÎÄÔĶÁ¡£
Ïà¹ØÍÆ¼ö£º
