使用intent打開各種文件 打開sd卡路徑 打開系統(tǒng)目錄etc

說明://自定義android Intent類丽涩,//可用于獲取打開以下文件的intent//PDF,PPT,WORD,EXCEL,CHM,HTML,TEXT,AUDIO,VIDEO

下面這些都OKIntent it = getHtmlFileIntent("/mnt/sdcard/tutorial.html");
SD卡主目錄
Intent it = getHtmlFileIntent("/sdcard/tutorial.html");

SD卡主目錄,這樣也可以
Intent it = getHtmlFileIntent("/system/etc/tutorial.html");

系統(tǒng)內部的etc目錄
Intent it = getPdfFileIntent("/system/etc/helphelp.pdf");
Intent it = getWordFileIntent("/system/etc/help.doc");
Intent it = getExcelFileIntent("/mnt/sdcard/Book1.xls")
Intent it = getPptFileIntent("/mnt/sdcard/download/Android_PPT.ppt");

SD卡的download目錄下
Intent it = getVideoFileIntent("/mnt/sdcard/ice.avi");
Intent it = getAudioFileIntent("/mnt/sdcard/ren.mp3");
Intent it = getImageFileIntent("/mnt/sdcard/images/001041580.jpg");
Intent it = getTextFileIntent("/mnt/sdcard/hello.txt",false);startActivity( it );

public class MyIntent {
//android獲取一個用于打開HTML文件的intent
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;
}

//android獲取一個用于打開圖片文件的intent
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;
}

//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 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 ));
        intent.setDataAndType(uri2, "text/plain");
    }
    return intent;
}

//android獲取一個用于打開音頻文件的intent
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;
}

//android獲取一個用于打開視頻文件的intent
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;
}

//android獲取一個用于打開CHM文件的intent
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;
}

//android獲取一個用于打開Word文件的intent
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;
}
//android獲取一個用于打開Excel文件的intent
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;
}
//android獲取一個用于打開PPT文件的intent
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;
}

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末揩抡,一起剝皮案震驚了整個濱河市婿脸,隨后出現(xiàn)的幾起案子逗爹,更是在濱河造成了極大的恐慌蛋哭,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件泵额,死亡現(xiàn)場離奇詭異配深,居然都是意外死亡,警方通過查閱死者的電腦和手機嫁盲,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進店門篓叶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人羞秤,你說我怎么就攤上這事缸托。” “怎么了瘾蛋?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵俐镐,是天一觀的道長。 經常有香客問我哺哼,道長佩抹,這世上最難降的妖魔是什么叼风? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮棍苹,結果婚禮上无宿,老公的妹妹穿的比我還像新娘。我一直安慰自己枢里,他們只是感情好孽鸡,可當我...
    茶點故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著栏豺,像睡著了一般彬碱。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上冰悠,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天堡妒,我揣著相機與錄音,去河邊找鬼溉卓。 笑死皮迟,一個胖子當著我的面吹牛,可吹牛的內容都是我干的桑寨。 我是一名探鬼主播伏尼,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼尉尾!你這毒婦竟也來了爆阶?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤沙咏,失蹤者是張志新(化名)和其女友劉穎辨图,沒想到半個月后,有當地人在樹林里發(fā)現(xiàn)了一具尸體肢藐,經...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡故河,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了吆豹。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鱼的。...
    茶點故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖痘煤,靈堂內的尸體忽然破棺而出凑阶,到底是詐尸還是另有隱情,我是刑警寧澤衷快,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布宙橱,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏养匈。R本人自食惡果不足惜哼勇,卻給世界環(huán)境...
    茶點故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一都伪、第九天 我趴在偏房一處隱蔽的房頂上張望呕乎。 院中可真熱鬧,春花似錦陨晶、人聲如沸猬仁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽湿刽。三九已至,卻和暖如春褐耳,著一層夾襖步出監(jiān)牢的瞬間诈闺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工铃芦, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留雅镊,地道東北人。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓刃滓,卻偏偏與公主長得像仁烹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子咧虎,可洞房花燭夜當晚...
    茶點故事閱讀 45,851評論 2 361

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,322評論 25 707
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程卓缰,因...
    小菜c閱讀 6,449評論 0 17
  • 大學剛畢業(yè)那會,有部名叫《大女當嫁》的電視劇正在熱播砰诵,當時沒怎么看征唬。前兩天,有電視臺在播茁彭,閑著無聊总寒,看了幾眼。突...
    煙囪不冒煙閱讀 354評論 0 0
  • 立體定向適形放射技術治療腦腫瘤的試驗大部分為劑量測定型尉间、或回顧型偿乖、或小型前瞻性研究,尚缺乏大型隨機對照試驗數據哲嘲。研...
    亨利福特健康閱讀 244評論 0 1
  • /陌上韻 夜贪薪、好靜好靜 夢、好深好深 她眠副、終于出現(xiàn)在夢的傍晚 朦朧不清的臉 還未來得及回想 陽光猛射進來 刺痛雙...
    陌上韻閱讀 363評論 2 3