android 呼叫系統指定的程式開啟對應的檔案
// filename = android開發者大賽.doc
string filepath =
getactivity()
.getexternalfilesdir
(null)
+ file.separator + filename;
// 先判斷該檔案是否存在
file file =
newfile
(filepath);if
(file.
exists()
)else
/** * 開啟檔案的方法
*/private
void
openfile
(string filepath)
/** * 根據檔案字尾名獲取檔案的mime
*/private string getfilemimetype
(file file)
// 獲取檔案的字尾名
string end = filename.
substring
(dotindex, filename.
length()
).tolowercase()
;if(end =="")
return type;
// 在mime和檔案型別的匹配表中找到對應的mime型別
for(int i =
0; i < mime_maptable.length; i++
)return type;
}/**
* 檔案字尾名對應的mime
*/private
final string[
] mime_maptable =,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,}
;// 解決android 7.0 檔案許可權問題//
1.在res目錄下新建目錄xml, 在xml資料夾裡新建乙個 provider_paths.xml 檔案, 檔案內容如下(不要改動, 否則可能出現檔案開啟讀取不到問題)
<
?xml version=
"1.0" encoding=
"utf-8"
?>
"root" path=""/
>
"name" path=
"path"
/>
"name" path=
"path"
/>
"name" path=
"path"
/>
"name" path=
"path"
/>
"name" path=
"path"
/>
<
/paths>//
2.在清單檔案中增加 provider 節點, 內容如下:
android:name=
"android.support.v4.content.fileprovider"
android:authorities=
"包名.provider"
android:exported=
"false"
android:granturipermissions=
"true"
>
android:name=
"android.support.file_provider_paths"
android:resource=
"@xml/provider_paths"
/>
<
/provider>//
3.呼叫方法:
// 獲取uri, 注意: 這裡的"包名.provider"要和 provider 中定義的一致;
uri uri = fileprovider.
geturiforfile
(getcontext()
,"包名.provider"
,new
file
(filepath)
);
Android 呼叫系統dialog
前幾天由於專案中要用到dialog,看了一下系統的dialog,發現符合公司需要,因此剛好寫了下來。在此記錄並分享一下。private void shownormaldialog 建立並顯示 normaldialog.create show 彈出評價短語 param pjdybeans public...
Android 呼叫系統Camera
在android中應用相機功能,一般有兩種 一種是直接呼叫系統相機,一種自己寫的相機。我將分別演示兩種方式的使用 第一種 是使用intent跳轉到系統相機,action為 android.media.action.still image camera import import android.co...
在Delphi開發的服務中呼叫指定應用程式
在很多時候,我們需要使用 服務啟動指定的應用程 序來做到隱蔽啟動程式的目的。但是當我們直接使用winexec來執行的時候,你會發現系統提示出錯。以下的 就是如何在 delphi編寫的服務中啟動指定的應用程式 function runprocess const processname string b...