判断服务是否开启,应用是否安装,并安装应用

//检查应用程序是否安装并安装应用程序

        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大小为5M
                        InputStream 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"; //serviceName
                boolean 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;
        }
时间: 2024-10-14 23:15:41

判断服务是否开启,应用是否安装,并安装应用的相关文章

判断一个服务是否开启

判断一个服务是否处于运行状态, 很好用的方法, 需要知道Service的完整名称. 1 public static boolean isServiceRunning(Context context, String serviceName) { 2 // 得到一个应用管理器, 如同windows中的任务管理器一样 3 ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);

检查dhcpd服务是否开启

if chkconfig --list |grep -s dhcpd&>/dev/nullthen        if ! service dhcpd status &>/dev/null        then        echo "警告:dhcpd服务没有启动,准备启动"        service dhcpd start        else        echo "监听地址:$(netstat -tuanp|grep dhcp|a

Android判断GPS是否开启和强制帮用户打开GPS

引子:在我们的应用为用户提供定位服务时,通常想为用户提供精确点的定位服务,这是需要用户配合的.我们必须先检测用户手机的GPS当前是否打开,若没打开则弹出对话框提示.用户若不配合我们也没办法,只能采用基站定位方式.如果我们的应用必须用户打开GPS才可使用,这时流氓一点的做法,就是强制帮用户打开GPS. 阐明概念: 定位服务GPS:全球卫星定位系统,使用24个人造卫星所形成的网络来三角定位接受器的位置,并提供经纬度坐标.虽然GPS提供绝佳的位置的精确度,但定位的位置需要在可看见人造卫星或轨道所经过的

查看linux虚拟机ssh服务是否开启

知识准备: 1.ssh和sshd的区别: 2.ssh服务进程默认地址:/etc/init.d/ssh 查看ssh服务是否开启 service ssh status 或者: /etc/init.d/ssh status 在虚拟机上单元测试remote.c函数,先手工检查ssh有没有运行: [email protected]:/etc/init.d# /etc/init.d/ssh status * sshd is running 或者这样检查:[email protected]:/etc/init

RHEL6-X Window System-7.判断是否安装与安装图形界面

判断是否安装图形界面 方法1.执行startx命令看是否可用? 只安装了X11的情况下,无法在终端上打开图形界面 安装了X11和GNOME/KDE之后的情况下,可以在终端上打开图形界面 方法2.执行命令yum grouplist查看安装情况 注意: 1.使用rpm -qa |grep -i x11 rpm -qa |grep -i x window rpm -qa |grep -i gnome或kde 这些方法有文件显示出来,并不代表就是安装了图形界面,这些包可能只是安装了一些操作系统必需的一些

webDAV服务的开启以及客户端的上传、下载、删除、新建文件夾、列表的代码(C#)

windows server 2003开启webDAV服务 1. 启动“IIS管理器”选择“WEB服务扩展”,选择“WEBDAV”的允许按钮启动WEBDAV功能 2.建立一个虚拟目录,对应到一个本地目录. 3.启动系统“服务”中的“WebClient”服务 参考网址 WebDAV文档rfc2518    http://www.ietf.org/rfc/rfc2518.txt webdav常用方法和概念总结   http://blog.csdn.net/mahongming/archive/200

Tomcat服务无法开启,点击stat不一会就变成stopped

前天在学习J2EE方面技术时,运行一个调试示例,需要用到Tomcat服务,结果使用Myeclipse怎么也打不开服务.之后去尝试手动打开Tmcat服务也无法成功,一直弄了好几个小时.后来,问了一下隔壁宿舍的同学,不一会问题就解决了~ 具体问题和相关解决方法如下(当然这个方法不一定适应所有Tomcat无法开启的问题哟): 首先,当时我按照网上手动开启Tomcat服务方法步骤: 一.在cmd中install service.bat,注册tomcat服务 图一:找到Tomcat中service.bat

判断GPS是否开启&amp;转到设置GPS界面

/** * 判断GPS是否开启,GPS或者AGPS开启一个就认为是开启的 * @param context * @return true 表示开启 */ public static final boolean isGPSOPen(final Context context) { LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); // 通过G

php开启openssl的方法,openssl安装

php开启openssl的方法,openssl安装 2014年10月10日 8312次浏览 什么是openssl? 关于openssl,我说的不如百度百科齐全,还是看看百度百科的解释吧!http://baike.baidu.com/view/300712.htm php开启openssl的方法,大多数情况下openssl是没有开启的,要想启用需要进行下简单的设置: windows下开启方法: 1: 首先检查php.ini中:extension=php_openssl.dll是否存在, 如果存在的