真的坑:
public class ExecuteCMD {
public static void main(String[] args) {
execCMD(Integer.valueOf(2));
}
//执行cmd命令,获取返回结果
public static String execCMD(int times) {
StringBuilder sb =new StringBuilder();
try {
Process process = Runtime.getRuntime().exec( "adb shel am start -n com.p1.mobile.putong/com.p1.mobile.putong.ui.splash.SplashProxyAct");
BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while((line=bufferedReader.readLine())!=null)
{
sb.append(line+"\n");
}
System.out.println("111" + sb.toString());
while(times-- > 0) {
process = Runtime.getRuntime().exec("adb shel input swipe 100 500 300 500 ");
bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
sb = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
sb.append(line + "\n");
}
System.out.println("222" + sb.toString());
}
} catch (Exception e) {
return e.toString();
}
return sb.toString();
}
Process process = Runtime.getRuntime().exec( "adb shel am start -n com.p1.mobile.putong/com.p1.mobile.putong.ui.splash.SplashProxyAct"); 这一行adb shell可能要删掉
参考简书文章 : https://www.jianshu.com/p/b26201f2b4bb
配置系统权限需要下载 keytool,然后遇见报错:
./keytool-importkeypair line 136 keytool command not found
这个原因就是因为java bin的路径没有配置到系统变量的path里面,加上去就好了
windows 的java位置: C:\Program Files\Java\jre1.8.0_291\bin
插播一个排查问题中的感悟:
就我个人理解而言,耐心其实分两个方面。一个是长期坚持,另一个是不怕麻烦。
有些人可以长期做一件事,比如每天都坚持跑步,但是却可能无法静下来把一件很繁琐的事做完,比如给大家通知信息,并来来回回把事情解释到位。你看到某个人的前一面会觉得很有耐心,但是如果看到后一面,却会认为没有耐心,但是两种情况却是可以同时出现在一个人身上的。所以先要分辨清楚。
做不到长期坚持的人,可能是没有明确目标,做一段时间之后就不知道为什么要做这件事,所以放弃。做不到后一种的多半是不喜欢思考,或者好高骛远的人。他们不肯来认真的理清头绪,喜欢想当然,或者不肯把细节做好。
总而言之,要培养耐心。一方面要知道自己是哪个方面不足,然后针对性的训练。
然后我缺乏的就是第二种,我自己闷起脑袋思考的能力还是少了,如果能静下心来多思考思考就好了,keytool的问题也是思考了以后才解决的