下面是通过linux命令来获取进程ID的
Process psProcess = Runtime.getRuntime().exec("sh");
DataOutputStream out = new DataOutputStream( psProcess.getOutputStream() );
InputStream is = psProcess.getInputStream();
out.writeBytes( "ps | grep 'vpnloader' | cut -c 10-14\n" );
out.writeBytes( "ps\n" );
out.flush();
try {
psProcess.waitFor();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();}
if(is.read() != 0)
{
byte firstByte = (byte)is.read();
int available = is.available();
byte[] characters = new byte[available + 1];
characters[0] = firstByte;
is.read( characters, 1, available );
String re = new String( characters );
}
分享到:
相关推荐
### Android系统中如何获取系统进程信息 在Android开发过程中,获取系统进程信息是实现设备监控、性能优化等应用功能的基础。本文将详细介绍如何利用Android提供的API来获取系统进程信息,并展示一个简易进程管理器...
### Android 获取进程的上下行流量 #### Trafficstats 类简介 `TrafficStats` 是 Android 提供的一个用于统计设备网络流量的工具类,自 Android 2.2 版本开始引入。这个类提供了一系列静态方法,可以帮助开发者...
标题"Android获取正在运行程序并kill掉"涉及的关键知识点主要包括Android进程管理、系统权限、以及如何编程实现这个功能。以下将详细介绍这些内容。 首先,Android系统中的进程分为多个级别,如前台进程、可见进程...
在Android里,程序内存被分为2部分:native和dalvik,dalvik就是我们普通的Java使用内存,分析堆栈的时候使用的内存。我们创建的对象是在这里面分配的,对于内存的限制是 native+dalvik 不能超过最大限制. Android ...
这个列表包含`ActivityManager.RunningAppProcessInfo`对象,每个对象包含了进程的相关信息,如进程ID、进程名、进程的状态等。然而,从Android 5.0开始,由于安全考虑,谷歌移除了这个方法的权限,普通应用无法直接...
可以通过以下方式获取进程的UID: - `Process.myUid()`:直接获取当前进程的UID。 - `ActivityManager`服务:通过`getSystemService(Context.ACTIVITY_SERVICE)`获取`ActivityManager`实例,然后调用`...
此外,`Process`类则包含了关于系统进程的静态方法,如`myPid()`用于获取当前进程ID。 五、优化进程管理 为了提高用户体验和设备性能,开发者需要合理管理进程。例如,避免长时间运行不必要的Service,及时释放...
标题“Android通过共享用户ID来实现多Activity进程共享”指出了一个解决方案,即使用同一个用户ID(User ID, UID)来使得不同进程间的Activity能够共享数据和资源。这种技术主要应用于需要提高应用性能、隔离安全...
每行通常包括PID(进程ID)、USER、PR、NI、VIRT、RES、SHR、S(状态)、%CPU、%MEM、TIME+、COMMAND等字段。我们要找的是包含应用包名的`COMMAND`字段。 4. **筛选目标进程**:在解析的进程中查找与指定`package...
//获取当前进程ID m_list.InsertItem(i,id);//插入一个项目 m_list.SetItemData(i,info->th32ProcessID);//设置项目值 id.Format("%s",info->szExeFile);//获取当前进程名 m_list.SetItemText(i,1,id);//设置...
1. **权限获取**:进行进程注入前,需要在AndroidManifest.xml中声明相应的权限,如`android.permission.INJECT_EVENTS`用于模拟用户输入,`android.permission.WRITE_EXTERNAL_STORAGE`用于读写文件。此外,还需要...
- `pid`:运行服务的进程ID。 - `baseProcessName`:服务所在的进程名。 - `flags`:服务的标志,如是否前台服务等。 - `startCount`:服务被启动的次数。 - `lastActivityTime`:服务最后一次活跃的时间,即服务的...
本文实例讲述了Android编程实现获取系统内存、CPU使用率及状态栏高度的方法。分享给大家供大家参考,具体如下: DeviceInfoManage类用于获取系统的内存,CPU的信息,以及状态栏的高度 import java.io.BufferedReader...
这可能涉及到网络请求和数据解析的知识,但这里主要讨论的是Android获取运行程序和结束进程的方法。 总的来说,Android开发者可以通过`ActivityManager`获取运行的应用信息,并在适当的情况下结束进程。不过,这...
`RunningAppProcessInfo`对象包含了关于正在运行的应用进程的信息,如进程ID、重要性等级和包名等。 3. **解析数据**:在获取到`RunningAppProcessInfo`列表后,你可以遍历它来获取每个应用的详细信息,比如找出...
调用`android.os.Process.myPid()`可获取当前进程的PID,然后传递给`killProcess()`。 文档中提到,只有当被杀进程与当前进程属于同一应用或具有共享UID的应用才能使用此方法。这意味着它主要适用于结束应用的附加...
1. **获取进程信息**:首先,你需要获取到目标APP的进程ID(PID)。可以通过`ActivityManager`类的`getRunningAppProcesses()`方法获取正在运行的应用进程列表,然后根据包名(package name)筛选出目标进程。 2. *...
- 设置进程ID和组ID - 设置信号处理函数 - 初始化网络接口 这些初始化步骤确保了`init`进程能够顺利地进行后续的工作。 ##### 3.3 核心任务二: 解析和执行init.rc文件 `init.rc`文件是一个配置文件,它定义了`...
- ActivityManager.getProcessMemoryInfo(pids)方法:此方法可以根据进程ID(pid)数组获取到这些进程的内存使用情况。返回的是一个包含android.os.Debug.MemoryInfo对象的数组,每个对象都包含了对应进程的内存信息...