标签:format Uri param 文档 intent android Intent
intent.setDataAndType(uri, “application/x-chm”);
return intent;
}
// android获取一个用于打开文本文件的intent
public static Intent getTextFileIntent(String param, boolean paramBoolean) {
Intent intent = new Intent(“android.intent.action.VIEW”);
intent.addCategory(“android.intent.category.DEFAULT”);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
if (paramBoolean) {
Uri uri1 = Uri.parse(param);
intent.setDataAndType(uri1, “text/plain”);
} else {
Uri uri2 = Uri.fromFile(new File(param)
《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享
);
intent.setDataAndType(uri2, “text/plain”);
}
return intent;
}
// android获取一个用于打开PDF文件的intent
public static Intent getPdfFileIntent(String param) {
Intent intent = new Intent(“android.intent.action.VIEW”);
intent.addCategory(“android.intent.category.DEFAULT”);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Uri uri = Uri.fromFile(new File(param));
intent.setDataAndType(uri, “application/pdf”);
return intent;
}
// android获取一个用于打开图片文件的intent
public static Intent getPicturefFileIntent(String param) {
Intent intent = new Intent(“android.intent.action.VIEW”);
intent.addCategory(“android.intent.category.DEFAULT”);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Uri uri = Uri.fromFile(new File(param));
intent.setDataAndType(uri, “image/*”);
return intent;
}
// android获取一个用于打开压缩包的intent (手机需安装能打开压缩文件的相关软件)
public static Intent getZipRarFileIntent(String param) {
Intent intent = new Intent(“android.intent.action.VIEW”);
intent.addCategory(“android.intent.category.DEFAULT”);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Uri uri = Uri.fromFile(new File(param));
intent.setDataAndType(uri, “application/x-gzip”);
return intent;
}
}
上面这个是核心的工具类,就是打开各种文档的跳转写法,然后在对应的点击事件调用 就可以,举列
protected void openFile(String path) {
String format = path.substring(path.lastIndexOf(".") + 1);
File file = new File(path);
try {
if (file.exists() || FileUtil.fileAvailable(file)) {
if (TextUtils.equals(“doc”, format) || TextUtils.equals(“docx”, format)) {
mContext.startActivity(IntentDocumentView.getWordFileIntent(path));
} else if (TextUtils.equals(“xls”, format) || TextUtils.equals(“xlsx”, format)) {
mContext.startActivity(IntentDocumentView.getExcelFileIntent(path));
} else if (TextUtils.equals(“zip”, format) || TextUtils.equals(“rar”, format)) {
mContext.startActivity(IntentDocumentView.getZipRarFileIntent(path));
}else if (TextUtils.equals(“pdf”, format) || TextUtils.equals(“PDF”, format)) {
mContext.startActivity(IntentDocumentView.getPdfFileIntent(path));
}else {
ToastUtil.showToast(mContext, “新增文件类型,请联系软件开发商”);
}
} else {
ToastUtil.showToast(mContext, “请先下载文件”);
}
} catch (Exception e) {
e.printStackTrace();
ToastUtil.showToast(mContext, “请先安装可以查看” + format + “格式的软件”);
}
}
标签:format,Uri,param,文档,intent,android,Intent 来源: https://blog.csdn.net/m0_64604042/article/details/122213216
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。