zoukankan      html  css  js  c++  java
  • android获取一个用于打开Word文件的intent

     通过Intent打开手机中能够阅读word,excle或pdf的应用,让那个应用来打开文件。这里给出word,excle的open

    OpenWord类

    package com.example.tomorrow.MobileOA.utils;
    
    import android.content.Context;
    import android.content.Intent;
    import android.content.pm.PackageManager;
    import android.content.pm.ResolveInfo;
    import android.net.Uri;
    
    import java.io.File;
    import java.util.List;
    
    /**
     * Created by he on 11/10 2015.
    * wang */ public class OpenWord {   //param为文档的主要路径 public static Intent getWordFileIntent(String param) { Intent intent = null; try { 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/msword"); } catch (Exception e) { e.printStackTrace(); } return intent; } public static Intent getExcelFileIntent(File 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(param); intent.setDataAndType(uri, "application/vnd.ms-excel"); return intent; } /** * 判断Intent 是否存在 防止崩溃 * @param context * @param intent * @return */ public static boolean isIntentAvailable(Context context, Intent intent) { final PackageManager packageManager = context.getPackageManager(); List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.GET_ACTIVITIES); return list.size() > 0; } }

     为一个按钮绑定事件

    bt_download_look.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    String name = files.get(position).getName();
                    FileUtils fileUtils = new FileUtils();
                    String path = fileUtils.getSDPATH() + "MobileOA/" + name;
                    Intent intent = OpenWord.getWordFileIntent(path);
                    boolean flag = OpenWord.isIntentAvailable(context, intent);
                    if (!flag) {
                        Toast.makeText(context, "请安装offer", Toast.LENGTH_SHORT).show();
                    } else {
                        context.startActivity(intent);
                    }
                }
            });
    
  • 相关阅读:
    IDEA手动创建JFinal项目(404问题处理)
    php 把数字1-1亿换成汉字表述,例如 150 转成 一百五十
    模仿console自写函数打印js的对象
    每瓶啤酒2元,2个空酒瓶或4个瓶盖可换1瓶啤酒。10元最多可喝多少瓶啤酒? php
    js-Event构造函数,也许你需要
    js将金额专成每隔3位数加逗号
    js-PC版监听键盘大小写事件
    用php脚本给html中引用的js和css路径打上版本
    通过js的console优雅的将php调试信息输出
    android中加载的html获取的宽高不正确
  • 原文地址:https://www.cnblogs.com/wabi87547568/p/4966712.html
Copyright © 2011-2022 走看看