android 调用系统安装程序 怎样返回安装结果

android 调用系统安装程序 怎样返回安装结果,第1张

调用系统安装程序,用户可能会取消衫旦,

如果要监听是否安装的话,你要在程序中监听或伏扰程序安装广播

注册一下广播接收者,android系统安装和卸载都会发送广播的

这样,当你回来界面的时候,如果广厅逗播没有接收就表示用户取消了安装

1.下载软件安装包,存放在手机的SD卡上,这样就可以在Android手机里直接察握安装。这个方法需要首先对手机进行设置,“菜单键”-settings(设置)-Applications(应用程序)-Unknown sources(选择“未知源”)

2.可以用USB数据线连接电脑,然后在电脑上对Android手机进行安装,但是首先需要在电脑上安装APK安装器等软件,可以批量安装程序,非常方便。枯没薯这个方没者法也需要首先对手机进行设置,settings(设置)-Applications(应用程序)-Development(开发)-USB debugging(选择“USB 调试”)

应用中如何调用系统所装的软件打开一个文件,这是我们经常碰到的问题,下面是我所用到的一种方法,和大家一起分享一下!

这个是打开文件的一个方法:

Java代码

/**

* 打开文件

* @param file

*/

private void openFile(File file){

Intent intent = new Intent()

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)

//设置intent的Action属性

intent.setAction(Intent.ACTION_VIEW)

//获取文件file的MIME类型

String type = getMIMEType(file)

//设置intent的data和Type属性。

intent.setDataAndType(/*uri*/Uri.fromFile(file), type)

//跳转

startActivity(intent)

}

/**

* 根据文件后缀名获得对应的MIME类型。

* @param file

*/

private 耐手String getMIMEType(File file) {

String type="*/*"

String fName = file.getName()

//获取后缀名前的分隔符"."在fName中的位置。

int dotIndex = fName.lastIndexOf(".")

if(dotIndex < 0){

return type

}

/* 获取文件的后缀名 */

String end=fName.substring(dotIndex,fName.length()).toLowerCase()

if(end=="")return type

//在MIME和文件类型的匹配表中找到对应的MIME类型。

for(int i=0i<MIME_MapTable.lengthi++){ //MIME_MapTable??在这里你一定有疑问,这个MIME_MapTable是什么?

if(end.equals(MIME_MapTable[i][0]))

type = MIME_MapTable[i][1]

}

return type

}

MIME_MapTable是所有文件的后缀名所对应的MIME类型的一个String数组:

Java代码  

private final String[][] MIME_MapTable={

//{后缀名, MIME类型}

{".3gp",    "video/3gpp"},

{".apk",    "application/vnd.android.package-archive"},

{".asf",    "video/x-ms-asf"},

{".avi",    "video/x-msvideo"},

{".bin",    "application/octet-stream"},

{".bmp",    "image/bmp"},

{".c",  "text/plain"},

{".class",  "application/octet-stream"},

{".conf",   "text/plain"},

{".cpp",    "text/plain"},

{".doc",    "application/msword"},

{".docx",   "application/vnd.openxmlformats-officedocument.wordprocessingml.document"},

{".xls",    "application/vnd.ms-excel"},

{".xlsx",   "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},

{".exe"态亩旅,    "application/octet-stream"},

{".gif",    "image/gif"},

{".gtar",   "application/x-gtar"},

{".gz", "application/x-gzip"},

{".h",  "text/plain"},

{".htm",    "text/html"},

{".html",   "text/html"},

{".jar",    "application/java-archive"},

{".java"帆凳,   "text/plain"},

{".jpeg",   "image/jpeg"},

{".jpg",    "image/jpeg"},

{".js", "application/x-javascript"},

{".log",    "text/plain"},

{".m3u",    "audio/x-mpegurl"},

{".m4a",    "audio/mp4a-latm"},

{".m4b",    "audio/mp4a-latm"},

{".m4p",    "audio/mp4a-latm"},

{".m4u",    "video/vnd.mpegurl"},

{".m4v",    "video/x-m4v"},

{".mov",    "video/quicktime"},

{".mp2",    "audio/x-mpeg"},

{".mp3",    "audio/x-mpeg"},

{".mp4",    "video/mp4"},

{".mpc",    "application/vnd.mpohun.certificate"},

{".mpe",    "video/mpeg"},

{".mpeg",   "video/mpeg"},

{".mpg",    "video/mpeg"},

{".mpg4",   "video/mp4"},

{".mpga",   "audio/mpeg"},

{".msg",    "application/vnd.ms-outlook"},

{".ogg",    "audio/ogg"},

{".pdf",    "application/pdf"},

{".png",    "image/png"},

{".pps",    "application/vnd.ms-powerpoint"},

{".ppt",    "application/vnd.ms-powerpoint"},

{".pptx",   "application/vnd.openxmlformats-officedocument.presentationml.presentation"},

{".prop",   "text/plain"},

{".rc", "text/plain"},

{".rmvb",   "audio/x-pn-realaudio"},

{".rtf",    "application/rtf"},

{".sh", "text/plain"},

{".tar",    "application/x-tar"},

{".tgz",    "application/x-compressed"},

{".txt",    "text/plain"},

{".wav",    "audio/x-wav"},

{".wma",    "audio/x-ms-wma"},

{".wmv",    "audio/x-ms-wmv"},

{".wps",    "application/vnd.ms-works"},

{".xml",    "text/plain"},

{".z",  "application/x-compress"},

{".zip",    "application/x-zip-compressed"},

{"",        "*/*"}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8271570.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存