测试之家
  • 社区
  • 问答
  • 招聘
  • 社区学堂新
  • 开源项目
  • 活动
  • Wiki
  • 注册
  • 登录
会员
DoctorQ (易寒)
第 1011 位会员 / 2014-06-04
顺丰科技 @ 北京
82 篇帖子 • 1153 条回帖
704 关注者
0 正在关注
26 收藏
把一件简单的事情做好
打赏支持
未设置 GitHub 信息.
  • 个人信息
  • 专栏
  • 话题
  • 回帖
  • 收藏
  • 关注中
  • 关注者
  • Android 安全专项-Xposed 劫持用户名密码实践 at 2016年03月04日

    #13 楼 @seveniruby 这个思维好

  • Android 安全专项-Xposed 劫持用户名密码实践 at 2016年03月04日

    #9 楼 @neyo 我已泪奔,一下子变成了叫兽

  • Android 安全专项-Xposed 劫持用户名密码实践 at 2016年03月04日

    #8 楼 @zhangzhao_lenovo 所以 root 就是危险,也需要在测试方向上提出一些反击措施啊。这也是我要研究的方向

  • Android 安全专项-Xposed 劫持用户名密码实践 at 2016年03月04日

    #6 楼 @neyo 教授是谁

  • Android 安全专项-Xposed 劫持用户名密码实践 at 2016年03月04日

    #4 楼 @zhangzhao_lenovo 嗯,看到过搞微信的文章了http://www.kanxue.com/bbs/showthread.php?t=207497&highlight=Xposed

  • Android 安全专项-Xposed 劫持用户名密码实践 at 2016年03月04日

    #1 楼 @neyo 你震惊了我,我以为你正在在搞 Xposed。

  • [北京沙龙] 沙龙议题征集 at 2016年03月04日

    #11 楼 @darker50 欢迎欢迎啊

  • [北京沙龙] 沙龙议题征集 at 2016年03月04日

    #9 楼 @darker50 体验下讲师么?来吧,欢迎来个 topic

  • [北京沙龙] 沙龙议题征集 at 2016年03月04日

    #6 楼 @kasi 安全这个门票要涨价啊,不然太亏了

  • CTS 设备管理之设备分类 at 2016年03月04日

    #1 楼 @gengasterisk https://testerhome.com/topics/1808

  • TraceView 自动化抓取方案实践 at 2016年03月02日

    #23 楼 @seveniruby 跑 case,获取 trace 文件后,拉取到本地,生成方法执行的轨迹,可以生成一个 png 的图,详细绘制了方法之间的调用关系

  • [北京] 乐视致新 --测试中心——招聘自动化和性能测试方向测试开发工程师 (画外音:来个靠谱的应聘者怎么就这么难。。。) at 2016年03月02日

    我弱弱的问一句,这个办公地点在哪

  • TraceView 自动化抓取方案实践 at 2016年03月02日

    #21 楼 @seveniruby 有什么问题,我可以转达,坐在我右边,可以找一个关于 traceview 的内部分享文档给你

  • [北京] 乐视致新 --测试中心——招聘自动化和性能测试方向测试开发工程师 (画外音:来个靠谱的应聘者怎么就这么难。。。) at 2016年03月02日

    要多大的神

  • 关于使用 adb 命令触发 GC 操作的问题 at 2016年03月02日

    GT 源码

    https://github.com/TencentOpen/GT/blob/master/android/src/com/tencent/wstt/gt/proInfo/floatView/GTMemHelperFloatview.java

    关于 GC 的方法

    这是在手机端 GC 的,PC 端自行思考吧

    private void gc() {
            String pid = String.valueOf(ProcessUtils
                    .getProcessPID(AUTManager.pkn.toString()));
    
            if (!pid.equals("-1")) {
                boolean isSucess = true;
                ProcessBuilder pb = null;
    
                String cmd = "kill -10 " + pid;
                pb = new ProcessBuilder("su", "-c", cmd);
    
                Process exec = null;
    
                pb.redirectErrorStream(true);
                try {
                    exec = pb.start();
    
                    InputStream is = exec.getInputStream();
                    BufferedReader reader = new BufferedReader(
                            new InputStreamReader(is));
    
                    while ((reader.readLine()) != null) {
                        isSucess = false;
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                    isSucess = false;
                }
                // 至此命令算是执行成功
                if (isSucess)
                {
                    handler.sendEmptyMessage(5);
                }
    
            } else {
                Log.d("gc error", "pid not found!");
            }
        }
    
        private void dumpHeap() {
            String pid = String.valueOf(ProcessUtils
                    .getProcessPID(AUTManager.pkn.toString()));
    
            if (!pid.equals("-1")) {
                boolean isSucess = true;
                ProcessBuilder pb = null;
    
                String sFolder = Env.S_ROOT_DUMP_FOLDER + AUTManager.pkn.toString() + "/";
                File folder = new File(sFolder);
                if (!folder.exists())
                {
                    folder.mkdirs();
                }
    
                String cmd = "am dumpheap " + pid + " "// 命令
                        + Env.S_ROOT_DUMP_FOLDER + AUTManager.pkn.toString() + "/"// 输出路径
                        + "dump_" + pid + "_" + GTUtils.getSaveDate() + ".hprof"; // 输出文件名
                pb = new ProcessBuilder("su", "-c", cmd);
    
                Process exec = null;
    
                pb.redirectErrorStream(true);
                try {
                    exec = pb.start();
    
                    InputStream is = exec.getInputStream();
                    BufferedReader reader = new BufferedReader(
                            new InputStreamReader(is));
    
                    while ((reader.readLine()) != null) {
                        isSucess = false;
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                    isSucess = false;
                }
                // 至此命令算是执行成功
                if (isSucess)
                {
                    handler.sendEmptyMessage(6);
                }
    
            } else {
                Log.d("dump error", "pid not found!");
            }
        }
    
    
  • [北京沙龙] 沙龙议题征集 at 2016年03月01日

    #3 楼 @mingway_hu 还出,我已经被榨干了

  • [北京沙龙] 沙龙议题征集 at 2016年03月01日

    支持一下

  • [已截止][北京] 58 同城 UBU 招聘测试工程师 at 2016年03月01日

    #15 楼 @xushizhao 你投简历给我,保证好职位

  • [已截止][北京] 58 同城 UBU 招聘测试工程师 at 2016年02月26日

    #12 楼 @neyo 他一个人在浪,我无动于衷

  • [已截止][北京] 58 同城 UBU 招聘测试工程师 at 2016年02月26日

    #5 楼 @gaopeng1106 我是段子手么

  • [已截止][北京] 58 同城 UBU 招聘测试工程师 at 2016年02月26日

    #3 楼 @xushizhao 不知道,咩

  • [已截止][北京] 58 同城 UBU 招聘测试工程师 at 2016年02月26日

    #1 楼 @xushizhao 我这关都过不了

  • [北京]-小桔科技 (滴滴出行) 招聘测试开发工程师 8 名 at 2016年02月25日

    4-10 个年终奖,豪啊

  • 玩转 Appium 中 logger at 2016年02月24日

    #16 楼 @enumerate 在只需要保存的 log 的地方才做保存到 txt 动作啊,完事以后在 txt 中过滤下也行啊

  • 玩转 Appium 中 logger at 2016年02月24日

    #14 楼 @enumerate 修改源码可以做到,原生的 log 器应该没有保存到文件中

  • 上一页
  • 1
  • 2
  • 3
  • …
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • …
  • 42
  • 43
  • 44
  • 下一页
  • 关于 / 活跃用户 / 中国移动互联网测试技术大会 / 反馈 / Github / API / 帮助推广
    TesterHome社区,测试之家,由众多测试工程师组织和维护的技术社区,致力于帮助新人成长,提高测试地位,推进质量发展。Inspired by RubyChina
    友情链接 WeTest腾讯质量开放平台 / InfoQ / 掘金 / SegmentFault / 测试窝 / 百度测试吧 / IT大咖说
    简体中文 / 正體中文 / English

    ©testerhome.com 测试之家   渝ICP备2022001292号
      渝公网安备 50022202000435号    版权所有 © 重庆年云聚力信息技术有限公司