最近业务让其做一个抓这三种log的apk,一开始想在代码里面植入shell命令,但是卡在一点上了,一般在命令行里面敲命令,都是用ctrl+c来结束的,我的代码应该如何实现ctrl+c一样的功能。。。
您的每一个用心回答,都会让这个世界变得更美好一些!
1:https://www.jianshu.com/p/9e7961221862
2:https://blog.csdn.net/u011904605/article/details/78563821
1.可以利用Thread.currentThread().getName();获取当前线程。
2.执行这个把线程杀了就可以了。实测可以。
public static boolean killThreadByName(String name) { ThreadGroup currentGroup = Thread.currentThread().getThreadGroup(); int noThreads = currentGroup.activeCount(); Thread[] lstThreads = new Thread[noThreads]; currentGroup.enumerate(lstThreads); Log.d(TAG, "CurrentThread " + noThreads); for (int i = 0; i < noThreads; i++) { String nm = lstThreads[i].getName(); Log.d(TAG, "CurrentThread id " + i + " = " + nm); if (nm.equals(name)) { lstThreads[i].interrupt(); return true; } } return false; }
你可以加标记量呀,拿到你的process以后,想停止的时候,直接干掉进程,关流,关资源。
1:https://www.jianshu.com/p/9e7961221862
2:https://blog.csdn.net/u011904605/article/details/78563821
1.可以利用Thread.currentThread().getName();获取当前线程。
2.执行这个把线程杀了就可以了。实测可以。
你可以加标记量呀,拿到你的process以后,想停止的时候,直接干掉进程,关流,关资源。