用系统默认的方式打开文件:
/* ?手机勺打开文件的method */
private void openFile(File f)
{
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(android.content.Intent.ACTION_VIEW);
/* 调用getMIMEType()来取得MimeType */
String type = getMIMEType(f);
/* 设定intent的file与MimeType */
intent.setDataAndType(Uri.fromFile(f),type);
//启动系统默认的文件处理器
startActivity(intent);
}
/* 判断文件MimeType的method */
private String getMIMEType(File f)
{
String type="";
String fName=f.getName();
/* 取得扩展名 */
String end=fName.substring(fName.lastIndexOf(".")+1,
fName.length()).toLowerCase();
/* 依扩展名的类型决定MimeType */
if(end.equals("m4a")||end.equals("mp3")||end.equals("mid")||
end.equals("xmf")||end.equals("ogg")||end.equals("wav"))
{
type = "audio";
}
else if(end.equals("3gp")||end.equals("mp4"))
{
type = "video";
}
else if(end.equals("jpg")||end.equals("gif")||end.equals("png")||
end.equals("jpeg")||end.equals("bmp"))
{
type = "image";
}
else
{
type="*";
}
/* 如果无法直接打开,就弹出软件列表给用户选择 */
type += "/*";
return type;
}
分享到:
相关推荐
在Android应用开发中,创建一个可以分页显示小说内容的功能是一项常见的需求。本文将深入探讨如何使用TextView在Android环境中实现这一功能,同时考虑到字体大小的调整以及字符串处理的灵活性。 首先,TextView是...
Android 系统下的 App 程序对运行中用到的数据源提供了多种存取方式,当对数据进行频繁增加、删除、改写、插入等操作时,SQLite 数据库成为主要存储方式。SQLite 数据库是一种轻量级的关系数据库管理系统,它具有...
在Android Studio中,打开这个文件会进入设计视图,该视图分为4个主要部分: 1. **设计视图**:显示了界面的实际布局,允许开发者直观地拖放控件并调整它们的位置。 2. **控件列表窗口**:提供了可添加到布局的控件...
在 WinCC 中使用按钮打开文件夹及其他应用程序 WinCC 是一款 industrial automation 软件,提供了丰富的功能来满足工业自动化的需求。在 WinCC 中,我们可以使用按钮来打开文件夹、应用程序等,以便更方便地访问和...
在 WinCC (TIA Portal) PC 运行系统中,使用脚本来将信息存储成文件是一种常见的需求,尤其是在需要持久保存过程数据和配方数据时。TIA Portal 提供了多种系统函数来支持这一操作,而Visual Basic 脚本则是其中一种...
在Android开发中,PopupWindow是一个非常实用的组件,它能够创建一个浮动的窗口,通常用于在主界面之上显示一些临时性的信息或者交互操作。在这个场景中,我们将探讨如何在PopupWindow中使用ListView来展示数据,并...
文件"Setting up a linux MySql backend for your Android Application « Hackers Anonymous.mht"可能会涵盖如何在Linux服务器上配置MySQL数据库,以供Android应用使用。这通常包括以下步骤: - 安装MySQL服务器 ...
在Android中用Fragment实现类似于微信或者QQ中的滑动切换界面的功能,并且给每一个Fragment绑定对应的活动。只是一个简单的样本,本人也才接触Android开发没多久,最近结合自己手头在尝试做的事情,实现的这种需求。...
.db是SQLite数据库的标准文件格式,通常在Android应用中用于存储用户数据、配置信息等。 标签“android emulator数据查看 .db查看”进一步强调了这个软件是针对Android模拟器的,并且它的主要功能是查看SQLite...
Visual Studio中用Xamarin开发Android应用,生成apk文件
在android studio中存储数据有三个方法,分别是: (1)简单存储——SharedPreferences (2)文件存储: 内部存储——应用程序私有文件 外部存储——SD卡 资源文件——只读( RAW 、XML) (3)数据库存储——...
在中文系统中用Excel打开日文ANSI编码的CSV或TXT文件不乱码。 在日文系统中用Excel打开中文ANSI编码的CSV或TXT文件不乱码。 我自己写的:)
### Android中用Application类实现全局变量 在Android开发过程中,我们常常需要在多个组件之间共享数据,例如存储用户的登录状态、应用配置等信息。通常情况下,开发者会利用`SharedPreferences`或者`...
这个“android中用ndk编译c并用jni调用的demo源码”提供了实践NDK和JNI集成的实例,帮助我们深入理解它们的工作原理和使用方法。 首先,NDK是Android开发的一个组成部分,它允许开发者使用C、C++语言编写部分应用...
"Android中用ViewPage实现真实翻页效果"这个主题就是关于如何在Android应用中创建类似真实书籍翻页的效果。这种效果通常被用于电子书阅读器或者滑动浏览多页面内容的应用中,给用户带来更生动和自然的互动体验。 `...
- 这个XML文件包含了刚才设计的界面布局信息,可以直接在Android项目中使用。 5. **文件内容解析** - 生成的XML文件通常以`<LinearLayout>`或`<RelativeLayout>`等作为根元素,表示使用的布局类型。 - 每个控件...
在给定的压缩包"Vb 用Webbrowser打开Office时不提示打开、保存对话框 注册一下.zip"中,包含了一个VB程序,该程序的目标是修改特定的注册表键值以关闭Office文件的打开或保存提示。在VB中,可以使用`Microsoft.Win32...
在Android系统中,拨号拦截提醒程序是一种常见的应用,它允许开发者通过自定义逻辑来控制用户的拨号行为。本项目就是一个适合初学者实践的案例,它利用了Android的关键组件和服务,如BroadcastReceiver、...
在UE4(Unreal Engine 4)中,开发者经常需要集成各种自定义功能,其中之一就是通过C++代码在蓝图中实现打开外部exe程序。这个功能对于游戏中的交互性或者工具集成非常有用,例如启动辅助编辑器、执行数据分析脚本等...
- 在XML布局文件中,通过设置`android:background="@android:color/transparent"`或`android:background="@null"`让ImageView背景透明。 3. **图标的使用**: - 在XML布局文件中,使用ImageView组件加载图标,如...