1. 程式人生 > >android開啟各種檔案的intent

android開啟各種檔案的intent

  1. import android.app.Activity;
  2. import android.content.Intent;
  3. import android.net.Uri;
  4. import android.net.Uri.Builder;
  5. import java.io.File;
  6. import android.content.Intent;
  7. //自定義android Intent類,
  8. //可用於獲取開啟以下檔案的intent
  9. //PDF,PPT,WORD,EXCEL,CHM,HTML,TEXT,AUDIO,VIDEO
  10. public class MyIntent
  11. {
  12. //android獲取一個用於開啟HTML檔案的intent
  13.   public static Intent getHtmlFileIntent( String param )
  14.   {
  15.   Uri uri = Uri.parse(param ).buildUpon().encodedAuthority("com.android.htmlfileprovider").scheme("content").encodedPath(param ).build();
  16.   Intent intent = new Intent("android.intent.action.VIEW");
  17.   intent.setDataAndType(uri, "text/html");
  18.   return intent;
  19.   }
  20. //android獲取一個用於開啟圖片檔案的intent
  21.   public static Intent getImageFileIntent( String param )
  22.   {
  23.   Intent intent = new Intent("android.intent.action.VIEW");
  24.   intent.addCategory("android.intent.category.DEFAULT");
  25.   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  26.   Uri uri = Uri.fromFile(new File(param ));
  27.   intent.setDataAndType(uri, "image/*");
  28.   return intent;
  29.   }
  30.   //android獲取一個用於開啟PDF檔案的intent
  31.   public static Intent getPdfFileIntent( String param )
  32.   {
  33.   Intent intent = new Intent("android.intent.action.VIEW");
  34.   intent.addCategory("android.intent.category.DEFAULT");
  35.   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  36.   Uri uri = Uri.fromFile(new File(param ));
  37.   intent.setDataAndType(uri, "application/pdf");
  38.   return intent;
  39.   }
  40. //android獲取一個用於開啟文字檔案的intent
  41.   public static Intent getTextFileIntent( String paramString, boolean paramBoolean)
  42.   {
  43.   Intent intent = new Intent("android.intent.action.VIEW");
  44.   intent.addCategory("android.intent.category.DEFAULT");
  45.   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  46.   if (paramBoolean)
  47.   {
  48.   Uri uri1 = Uri.parse(param );
  49.   intent.setDataAndType(uri1, "text/plain");
  50.   }
  51.   while (true)
  52.   {
  53.   return intent;
  54.   Uri uri2 = Uri.fromFile(new File(param ));
  55.   intent.setDataAndType(uri2, "text/plain");
  56.   }
  57.   }
  58. //android獲取一個用於開啟音訊檔案的intent
  59.   public static Intent getAudioFileIntent( String param )
  60.   {
  61.   Intent intent = new Intent("android.intent.action.VIEW");
  62.   intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  63.   intent.putExtra("oneshot", 0);
  64.   intent.putExtra("configchange", 0);
  65.   Uri uri = Uri.fromFile(new File(param ));
  66.   intent.setDataAndType(uri, "audio/*");
  67.   return intent;
  68.   }
  69.   //android獲取一個用於開啟視訊檔案的intent
  70.   public static Intent getVideoFileIntent( String param )
  71.   {
  72.   Intent intent = new Intent("android.intent.action.VIEW");
  73.   intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  74.   intent.putExtra("oneshot", 0);
  75.   intent.putExtra("configchange", 0);
  76.   Uri uri = Uri.fromFile(new File(param ));
  77.   intent.setDataAndType(uri, "video/*");
  78.   return intent;
  79.   }
  80.   //android獲取一個用於開啟CHM檔案的intent
  81.   public static Intent getChmFileIntent( String param )
  82.   {
  83.   Intent intent = new Intent("android.intent.action.VIEW");
  84.   intent.addCategory("android.intent.category.DEFAULT");
  85.   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  86.   Uri uri = Uri.fromFile(new File(param ));
  87.   intent.setDataAndType(uri, "application/x-chm");
  88.   return intent;
  89.   }
  90. //android獲取一個用於開啟Word檔案的intent
  91.   public static Intent getWordFileIntent( String param )
  92.   {
  93.   Intent intent = new Intent("android.intent.action.VIEW");
  94.   intent.addCategory("android.intent.category.DEFAULT");
  95.   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  96.   Uri uri = Uri.fromFile(new File(param ));
  97.   intent.setDataAndType(uri, "application/msword");
  98.   return intent;
  99.   }
  100. //android獲取一個用於開啟Excel檔案的intent
  101.   public static Intent getExcelFileIntent( String param )
  102.   {
  103.   Intent intent = new Intent("android.intent.action.VIEW");
  104.   intent.addCategory("android.intent.category.DEFAULT");
  105.   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  106.   Uri uri = Uri.fromFile(new File(param ));
  107.   intent.setDataAndType(uri, "application/vnd.ms-excel");
  108.   return intent;
  109.   }
  110. //android獲取一個用於開啟PPT檔案的intent
  111.   public static Intent getPptFileIntent( String param )
  112.   {
  113.   Intent intent = new Intent("android.intent.action.VIEW");
  114.   intent.addCategory("android.intent.category.DEFAULT");
  115.   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  116.   Uri uri = Uri.fromFile(new File(param ));
  117.   intent.setDataAndType(uri, "application/vnd.ms-powerpoint");
  118.   return intent;
  119.   }
  120. }

相關推薦

android 開啟各種檔案 intent.setDataAndType

 Java程式碼 /**   * 開啟檔案   * @param file   */   private void openFile(File file){   Intent intent = new Intent();   intent.addFlags(I

android開啟各種檔案intent

import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.net.Uri.Builder; import java.io.File; import android.con

Android開啟各種檔案的MIME TYPE-setDataAndType函式中的Type關聯

MIME:全稱Multipurpose Internet Mail Extensions,多功能Internet 郵件擴充服務。它是一種多用途網際郵件擴充協議,在1992年最早應用於電子郵件系統,但後來也應用到瀏覽器。MIME型別就是設定某種副檔名的檔案用一種應用程式來開啟的方式型別,當該副檔名檔案被訪問

android獲取一個用於開啟各種檔案intent

//android獲取一個用於開啟文字檔案的intent public static Intent getTextFileIntent( String param, boolean paramBoolean) { Intent intent = new Intent

android用於開啟各種檔案intent(轉)

import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.net.Uri.Builder; import java.io

android用於開啟各種檔案intent,包括以下檔案PDF,PPT,WORD,EXCEL,CHM,HTML,TEXT,AUDIO,VIDE(程式碼待完善)

import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.net.Uri.Builder;import java.io.File;impor

Android--用intent開啟各種檔案

import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.net.Uri.Builder; import java.io.File;

Android開啟各種型別的檔案方法總結

很簡單,通過呼叫系統的intent,我們可以開啟各種檔案,不熟悉的朋友可以瞭解下action、datatype、uri的相關知識。 通用方法如下: public static Intent openFile(String filePath){ File fil

intent開啟各種檔案 開啟sd卡路徑 開啟系統目錄...

在其他類中呼叫MyIntent類中的方法,例如: Intent it = MyIntent .getHtmlFileIntent("/sdcard/tutorial.html");//對應你的檔名 startActivity( it ); //可用於獲取開

Notification的使用以及Intent開啟各種檔案

一:Notification的使用 使用步驟: 流程模組: 第一步: 建立一個通知欄的Builder構造類 (Create a Notification Builder) 第二步: 定義通知欄的Action (Define the N

Intent開啟各種檔案

1.Android開啟系統播放器:Uri uri = Uri.parse(url);// Uri uri = Uri.parse("rtsp://10.103.131.23:554/28960004/j04.mp4");

android各種檔案目錄

今天學習FileProvider,裡面就涉及到了內部儲存,外部儲存。就去查了一下,這裡整理一下。 內部儲存: 主要涉及到的方法:context.getCacheDir()和context.getFilesDir() context.getCacheDi

android Intent開啟各種型別檔案

import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.net.Uri.Builder; import java.io.File;

android獲取一個用於開啟Word檔案intent

               最近在做專案使用webview顯示後,有寫文件需要開啟,找了一些資料,研究了一下,弄出來了!  下面貼一下主要程式碼: param為文件的主要路徑 public static Intent getWordFileIntent(String

android 應用元件[通用 Intent---開啟特定型別的檔案] 十二

在 Android 4.4 或更高版本上執行時,您可以不必檢索必須匯入應用的檔案副本(使用  操作),而是使用  操作並指定 MIME 型別,請求開啟由另一個應用管理的檔案。如果還需要允許使用者建立應用可寫入的新文件,可改用  操作。例如, Intent 允許使用者選

android intent開啟各種格式文件方法

我們開發的時候經常碰到開啟各種文件,目前的應用處理方式 基本都是依賴於三方軟體開啟 ,而不是在應用內開啟,因為檔案格式有很多,倘若都在應用內開啟的話,肯定要增加很大的開發時間和開發成本,而且實現效果沒有一些三方的app實現的效果好。 話不多說,貼上程式碼 工具類 impo

Android studio 或java開啟txt檔案

剛剛學習碎片知識,顯示的內容如果是txt該如何做呢?這就需要開啟檔案了,話不多說,上程式碼。  我的檔案在: a為標題檔案,a0為每個標題的內容檔案 結果如下圖: 我的a和a0txt 由於新聞標題較多,新聞內容較多,就考慮用txt來裝

Android 版本更新之開啟apk檔案的前生今世

現在APP都少不了的一個功能就是版本更新,檢測到有新版,從伺服器下載下來APK,然後安裝,今天就來聊一聊它。 原始碼地址:github [Android6.0之前] 首先是許可權 <uses-permission android:name="android.

Android專案需要使用的各種檔案

任何一個新建的專案都會預設使用Android模式的專案結構,但這並不是專案真實的目錄結構,而是被Android Studio轉換過的這個模式結構比較簡潔明瞭,適合進行快速開發,將其切換為Project模式就是專案的真實結構了。 一.首先就是.grad

Android 手機儲存檔案各種路徑

String cacheDir = context.getExternalCacheDir().getPath(); /storage/emulated/0/Android/data/應用名稱/cache 一般放一些長時間儲存的資料 String filesDir = context.ge