zoukankan      html  css  js  c++  java
  • 调用Linux的busybox,通过linux命令来获取AndRoidIP

    //根据busybox获取本地Mac
    public static String getLocalMacAddressFromBusybox(){
    String result = "";
    String Mac = "";
    result = callCmd("busybox ifconfig","HWaddr");

    //如果返回的result == null,则说明网络不可取
    if(result==null){
    return "网络出错,请检查网络";
    }

    //对该行数据进行解析
    //例如:eth0 Link encap:Ethernet HWaddr 00:16:E8:3E:DF:67
    if(result.length()>0 && result.contains("HWaddr")==true){
    Mac = result.substring(result.indexOf("HWaddr")+6, result.length()-1);
    Log.i("test","Mac:"+Mac+" Mac.length: "+Mac.length());

    /*if(Mac.length()>1){
    Mac = Mac.replaceAll(" ", "");
    result = "";
    String[] tmp = Mac.split(":");
    for(int i = 0;i<tmp.length;++i){
    result +=tmp[i];
    }
    }*/
    result = Mac;
    Log.i("test",result+" result.length: "+result.length());
    }
    return result;
    }

    private static String callCmd(String cmd,String filter) {
    String result = "";
    String line = "";
    try {
    Process proc = Runtime.getRuntime().exec(cmd);
    InputStreamReader is = new InputStreamReader(proc.getInputStream());
    BufferedReader br = new BufferedReader (is);

    //执行命令cmd,只取结果中含有filter的这一行
    while ((line = br.readLine ()) != null && line.contains(filter)== false) {
    //result += line;
    Log.i("test","line: "+line);
    }

    result = line;
    Log.i("test","result: "+result);
    }
    catch(Exception e) {
    e.printStackTrace();
    }
    return result;
    }

  • 相关阅读:
    redis -- RDB
    redis--数据库
    redis-慢查询日志
    redis 订阅与发布
    redis 事务
    redis 事件
    redis--服务器与客户端
    readis 内部数据结构
    Redis数据类型
    Docker 限制容器资源
  • 原文地址:https://www.cnblogs.com/wcLT/p/7745821.html
Copyright © 2011-2022 走看看