zoukankan      html  css  js  c++  java
  • 用代码如何检测一个android程序是否在运行

    /**
         * 检测一个android程序是否在运行
         * @param context
         * @param PackageName
         * @return
         */
        public static  boolean isServiceStarted(Context context,String PackageName) {
            //<uses-permission android:name="android.permission.GET_TASKS"/>
            //https://crazier9527.iteye.com/blog/1476134
            boolean isStarted =false;
            try {
                ActivityManager mActivityManager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
                int intGetTastCounter = 1000;
                List<ActivityManager.RunningServiceInfo> mRunningService = mActivityManager.getRunningServices(intGetTastCounter );
                for (ActivityManager.RunningServiceInfo amService : mRunningService) {
                    if(0 == amService.service.getPackageName().compareTo(PackageName)) {
                        isStarted = true;
                        break;
                    }
                }
            }
            catch(SecurityException e) {
                e.printStackTrace();
            }
            return isStarted;
        }
    

      权限

    <uses-permission android:name="android.permission.GET_TASKS"/>

    判断一个程序是否安装,如果安装就启动

    start_btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    if (isApkInstalled(getApplicationContext(),"包名")){
                        Intent intent = getPackageManager().getLaunchIntentForPackage("包名");
                        if (intent != null) {
                            intent.putExtra("type", "110");
                            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                            startActivity(intent);
                        }
                    }else {
                        Toast.makeText(getApplicationContext(),"没有安装", Toast.LENGTH_SHORT).show();
                    }
    
    
                }
            });

    判断一个程序是否安装

    /**
         * 判断程序是否安装  
         * @param context
         * @param packageName
         * @return
         */
        public static boolean isApkInstalled(Context context, String packageName) {
            if (TextUtils.isEmpty(packageName)) {
                return false;
            }
            try {
                ApplicationInfo info = context.getPackageManager().getApplicationInfo(packageName, PackageManager.GET_UNINSTALLED_PACKAGES);
                return true;
            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
                return false;
            }
        }
  • 相关阅读:
    python操作redis
    Redis 安装试用
    python操作RabbitMQ
    pycharm快捷键
    各种python使用的坑
    RabbitMQ安装和使用
    Moosefs基本概念
    mesos客户端重新注册导致容器状态为staged
    初学Android 二 创建项目以及目录结构
    【杭电】[5631]Rikka with Graph
  • 原文地址:https://www.cnblogs.com/changyiqiang/p/10794541.html
Copyright © 2011-2022 走看看