java 获取apk名称_JAVA获取apk包的package和launchable-activity名称(一)

packagepc.driver.util.com.cn;importjava.io.BufferedReader;importjava.io.File;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.util.ArrayList;importjava.util.List;importjava.util.regex.Matcher;importjava.util.regex.Pattern;public classBase {//File dir 是在哪个盘执行,String command cmd的命令

public static voidrunCMD(String command,File dir){

InputStream is=null;

Process process=null;try{

process=Runtime.getRuntime().exec(command, null, dir);//执行doc命令//后面的所有操作即是读取这个命令的输出结果

is = process.getInputStream();//获取执行CMD命令后的信息

BufferedReader reader =new BufferedReader(newInputStreamReader(is));

String line=null;

StringBuffer sb=newStringBuffer();while((line = reader.readLine())!=null){

sb.append(line);

}//截取package字符串

Pattern p =Pattern.compile("package: name(.*?)versionCode");

Matcher m=p.matcher(sb);

List list=new ArrayList();while(m.find()){

list.add(m.group(1));

}for(String str : list) {

System.out.println("package"+str);

}//截取acvitity字符串,以launchable-activity: name开头, label结尾 获取中间字符串内容

Pattern p1 =Pattern.compile("launchable-activity: name(.*?) label");

Matcher m1=p1.matcher(sb);

List list1=new ArrayList();while(m1.find()){

list1.add(m1.group(1));

}for(String str1 : list1) {

System.out.println("activity"+str1);

}

}catch(IOException e) {

e.printStackTrace();

}finally{try{

process.getOutputStream().close();

is.close();

}catch(IOException e) {

e.printStackTrace();

}

}

}public static voidmain(String[] args) {Scanner dir = new Scanner(System.in);

System.out.println("输入aapt目录:");

String aapt_dir=dir.next();

System.out.println("输入apk全路径:");

String apk_dir=dir.next();

String command=aapt_dir+" dump badging " +apk_dir;

runCMD(command);

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值