判断服务是否开启,应用是否安装,并安装应用
//检查应用程序是否安装并安装应用程序public boolean checkApkExist(Context context, String packageName) {if (packageName == null || "".equals(packageName))return false;try {ApplicationInfo info = context.getPackageManager().getApplicationInfo(packageName,PackageManager.GET_UNINSTALLED_PACKAGES);return true;} catch (NameNotFoundException e) {return false;}}private void installVoiceServiceApk() {Intent intent = new Intent();intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setAction(Intent.ACTION_VIEW);String type = "application/vnd.android.package-archive";AssetManager assets = ProActivity.this.getAssets();try {//当文件比较大的时候不能用这个方法 来读取Stream ss.read(buffer) = -1 我的apk大小为5MInputStream ss = assets.open(AsrService.apk");//使用下面这个方法 没问题InputStream is = getClass().getResourceAsStream("/assets/AsrService.apk");FileOutputStream fos = ProActivity.this.openFileOutput("AsrService.apk", Context.MODE_PRIVATE+ Context.MODE_WORLD_READABLE);byte[] buffer = new byte[1024];int len = 0;while ((len = is.read(buffer)) != -1) {fos.write(buffer, 0, len);}fos.flush();is.close();fos.close();} catch (Exception e) {e.printStackTrace();}File f = new File(ProActivity.this.getFilesDir().getPath()+ "/AsrService.apk");// String path = "file:///android_asset/ZXing.apk";// File f = new File(path); intent.setDataAndType(Uri.fromFile(f), type);ProActivity.this.startActivity(intent);}
//检查服务是否启动private boolean isStartService(Context ctx) {ActivityManager mActivityManager = (ActivityManager) ctx.getSystemService(Context.ACTIVITY_SERVICE);List<ActivityManager.RunningServiceInfo> currentService = mActivityManager.getRunningServices(100);final String igrsClassName = "com.iflytek.asr.AsrService"; //serviceNameboolean b = igrsBaseServiceIsStart(currentService, igrsClassName);return b;}private boolean igrsBaseServiceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className) {for (int i = 0; i < mServiceList.size(); i++) {if (className.equals(mServiceList.get(i).service.getClassName())) {return true;}}return false;}
转载于:https://www.cnblogs.com/huidaoli/p/3947785.html
判断服务是否开启,应用是否安装,并安装应用相关推荐
- Linux下检测FTP服务并开启FTP服务
Linux下检测FTP服务并开启FTP服务 1. 检测FTP服务是否开启 通过查询提供FTP服务的进程是否存在 Shell代码 ps -ef | grep ftp 并未找到任何包含ftp关键字 ...
- 如何在linux下判断web服务是否开启?
对于web服务的开启的判断有以下几种常用方法: 1.端口查看: 本地:ss,netstat,lsof 示例一: ss:查看80端口是否处于监听状态 [root@gw oldboy]# ss -an|g ...
- vs.net c# 安装、注册windows service服务,判断服务是否存在,是否启动
vs.net c# 安装.注册windows service服务,判断服务是否存在,是否启动 一.安装服务: private void InstallService(IDictionary state ...
- Android10定位服务的开启状态判断和申请
AndroidQ新增定位权限: <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION ...
- php 开启,PHP服务的开启详细步骤
安装完php,使用chkconfig命令来查看php-fpm服务是否开启,如果没有开启 1. 在/etc/init.d/目录下创建脚本php-fpmvim/etc/init.d/php-fpm 2. ...
- linux 如何起服务,如何修改Linux的服务的开启和关闭
在Linux系统引导流程中,当系统判断运行级别后,就会读取/etc/rc.d/rcn.d(其中n=0到6).关于服务的一些问题,为了方便以rc0.d文件里的服务来说明,输入命令:ls /etc/rc. ...
- 重新启动oracle 服务,在linux重新启动下如何设置oracle服务自动开启
在linux重新启动下如何设置oracle服务自动开启 发表于2021 2019-12-17 | 没有评论 2. 修改文件/etc/rc.local添加一下两行 su - oracle -c ...
- android 强制打开gps定位_Android判断GPS是否开启和强制帮用户打开GPS
引子:在我们的应用为用户提供定位服务时,通常想为用户提供精确点的定位服务,这是需要用户配合的.我们必须先检测用户手机的GPS当前是否打开,若没打开则弹出对话框提示.用户若不配合我们也没办法,只能采用基 ...
- Android判断GPS是否开启和让用户打开GPS
定位服务GPS: 全球卫星定位系统,使用24个人造卫星所形成的网络来三角定位接受器的位置,并提供经纬度坐标.虽然GPS提供绝佳的位置的精确度,但定位的位置需要在可看见人造卫星或轨道所经过的地方. 定位 ...
- WinServer2016无法开启wifi,且驱动安装失败
WinServer2016无法开启wifi,且驱动安装失败 最近搭建文件系统服务器遇到了疑难,新装WinServer2016系统无法开启wifi. 解决方案尝试: 360驱动大师 驱动精灵 驱动人生 ...
最新文章
- 对python3中pathlib库的Path类的使用详解
- MSU发布2018年视频压缩评比报告
- ElementUI分页组件的封装
- WebForm 使用点滴。。。。
- *【CodeForces - 195B】After Training (多解,模拟)
- CV和NLP中的无监督预训练(生成式BERT/iGPT和判别式SimCLR/SimCSE)
- 探究make_shared效率
- OPPO Reno造乐节落地重庆 华语乐坛十大金曲榜单公布
- 百度云文章的链接地址抓取工具
- 4月18日云栖精选夜读 | 阿里靠什么支撑 EB 级计算力?
- 获取浏览器选中文本并操作
- securecrt下载和注册方法
- 华为交换机模拟器为什么不能配置IP(或反)?如何在华为设备上配置远程管理设备?如何保存ENSP的配置...
- html当当图书榜页面,2019书排行榜_当当网图书排行榜
- linux查看文件夹大小命令
- 服务器怎么用iso文件装系统,ISO镜像文件能直接安装吗 怎么使用iso镜像文件安装系统...
- 操作员或系统管理员_什么是系统管理员?
- instagram 和不联网
- 职场最高级的聪明是靠谱,到底一个人怎样才算真正靠谱?
- Jdon框架(JdonFramework)应用系统