MainBrowserActivity.java 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package com.poqop.document;
  2. import android.app.Activity;
  3. import android.content.Intent;
  4. import android.net.Uri;
  5. import java.io.File;
  6. import java.io.FileFilter;
  7. import java.util.HashMap;
  8. import org.vudroid.pdfdroid.PdfViewerActivity;
  9. public class MainBrowserActivity extends BaseBrowserActivity
  10. {
  11. private final static HashMap<String, Class<? extends Activity>> extensionToActivity = new HashMap<String, Class<? extends Activity>>();
  12. static
  13. {
  14. //文件类型
  15. extensionToActivity.put("pdf", PdfViewerActivity.class);
  16. /* extensionToActivity.put("djvu", DjvuViewerActivity.class);
  17. extensionToActivity.put("djv", DjvuViewerActivity.class);*/
  18. }
  19. /**
  20. * FileFilter :文件类型筛选器
  21. */
  22. @Override
  23. protected FileFilter createFileFilter()
  24. {
  25. return new FileFilter()
  26. {
  27. public boolean accept(File pathname)
  28. {
  29. for (String s : extensionToActivity.keySet())
  30. {
  31. if (pathname.getName().endsWith("." + s)) return true;
  32. }
  33. return pathname.isDirectory();
  34. }
  35. };
  36. }
  37. @Override
  38. protected void showDocument(Uri uri)
  39. {
  40. final Intent intent = new Intent(Intent.ACTION_VIEW, uri);
  41. String uriString = uri.toString();
  42. String extension = uriString.substring(uriString.lastIndexOf('.') + 1);
  43. intent.setClass(this, extensionToActivity.get(extension));
  44. startActivity(intent);
  45. }
  46. }