基本信息
源码名称:android 文件管理器源码下载
源码大小:0.68M
文件格式:.rar
开发语言:Java
更新时间:2016-02-15
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍



package com.tarena.fileExplore;

import java.io.File;
import java.util.Arrays;
import java.util.Comparator;

import org.json.JSONArray;
import org.json.JSONObject;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.webkit.JavascriptInterface;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends Activity {
	private WebView webView;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		webView=(WebView)findViewById(R.id.webView);
		setWebView();
		webView.addJavascriptInterface(new MyObject(), "filee");
		webView.loadUrl("file:///android_asset/www/index.html");
	}
	
	class MyObject{
		
		@JavascriptInterface
		public void finishActivity(){
			finish();
		}
		
		@JavascriptInterface
		public String getFiles(String dir){
			try {
				File file=new File(dir);
				File[] files=file.listFiles();
				//排序
				sort(files);
				JSONArray ary=new JSONArray();
				for(int i=0; i<files.length; i  ){
					File f=files[i];
					JSONObject obj=new JSONObject();
					obj.put("isDir", f.isDirectory());
					obj.put("name", f.getName());
					ary.put(obj);
				}
				return ary.toString();
			} catch (Exception e) {
				e.printStackTrace();
				return "[]";
			}
		}
		/**
		 * 排序  文件夹放上面 文件放下面
		 * 文件夹和文件分别按字母顺序排序
		 * @param files
		 */
		private void sort(File[] files) {
			Arrays.sort(files, new Comparator<File>() {
				public int compare(File f1, File f2) {
					if(f1.isDirectory()&& !f2.isDirectory()){
						return -1;
					}else if(!f1.isDirectory()&&f2.isDirectory()){
						return 1;
					}
					return f1.getName().compareTo(f2.getName());
				}
			});
		}
	}

	private void setWebView() {
		WebSettings settings = webView.getSettings();
		settings.setJavaScriptEnabled(true);
		webView.setWebChromeClient(new WebChromeClient(){
			//重写需要的方法
		});
		webView.setWebViewClient(new WebViewClient(){
			//重写需要的方法
		});
		
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

	@Override
	public void onBackPressed() {
		//告诉html  加载上一级目录
		webView.loadUrl("javascript: goBack()");
	}
	
}