美文网首页Android大法好Android知识Android开发
Android-使用Intent打开各种文件

Android-使用Intent打开各种文件

作者: 影视会员万事通 | 来源:发表于2016-09-15 18:11 被阅读966次

    1、打开Html文件

    public static Intent getHtmlFileIntent( String param )  {   
         Uri uri = Uri.parse(param ).buildUpon().encodedAuthority("com.android.htmlfileprovider").scheme("content").encodedPath(param ).build();    
         Intent intent = new Intent("android.intent.action.VIEW");   
         intent.setDataAndType(uri, "text/html");    
         return intent;  
    }
    

    2、打开图片文件

    public static Intent getImageFileIntent( 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;  
    }
    

    3、打开pdf文件

    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; 
    }
    

    4、打开txt文件

    public static Intent getTextFileIntent( String paramString, 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");    
        }   
        while (true) {      
            return intent;      
            Uri uri2 = Uri.fromFile(new File(param ));     
            intent.setDataAndType(uri2, "text/plain");    
        }  
    }
    

    5、打开音频文件

    public static Intent getAudioFileIntent( String param ) {    
        Intent intent = new Intent("android.intent.action.VIEW");    
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);    
        intent.putExtra("oneshot", 0);    
        intent.putExtra("configchange", 0);    
        Uri uri = Uri.fromFile(new File(param ));    
        intent.setDataAndType(uri, "audio/*");    
        return intent;  
    }
    

    6、打开视频文件

    public static Intent getVideoFileIntent( String param ) {    
        Intent intent = new Intent("android.intent.action.VIEW");    
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);    
        intent.putExtra("oneshot", 0);    
        intent.putExtra("configchange", 0);    
        Uri uri = Uri.fromFile(new File(param ));    
        intent.setDataAndType(uri, "video/*");    
        return intent;  
    }
    

    7、打开chm文件

    public static Intent getChmFileIntent( 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-chm");    
        return intent;  
    }
    

    8、打开word文件

    public static Intent getWordFileIntent( 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/msword");    
        return intent;  
    }
    

    9、打开Excel文件

    public static Intent getExcelFileIntent( 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/vnd.ms-excel");    
        return intent;  
    

    }

    10、打开ppt文件

    public static Intent getPptFileIntent( 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/vnd.ms-powerpoint");    
        return intent;  
    }
    

    Ps:参考资料

    1. 关于Intent的七大属性
    2. Android中Intent概述及使用
    3. Android Intent Action 大全

    <h3>The End:</h3>

    1. 我的:简书
    2. 我的:GitHub
    3. 我的:博客
    4. 我的:CSDN
    5. Email:1619153872@qq.com
    6. 微信:


      扫一扫上面的二维码,加我微信

    相关文章

      网友评论

      本文标题:Android-使用Intent打开各种文件

      本文链接:https://www.haomeiwen.com/subject/bqpbettx.html