亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        Python實現(xiàn)過濾單個Android程序日志腳本分享

        字號:


            在Android軟件開發(fā)中,增加日志的作用很重要,便于我們了解程序的執(zhí)行情況和數(shù)據(jù)。Eclipse開發(fā)工具會提供了可視化的工具,但是還是感覺終端效率會高一些,于是自己寫了一個python的腳本來通過包名來過濾某一程序的日志。
            原理
            通過包名得到對應的進程ID(可能多個),然后使用adb logcat 過濾進程ID即可得到對應程序的日志。
            源碼
            代碼如下:
            #!/usr/bin/env python
            #coding:utf-8
            #This script is aimed to grep logs by application(User should input a packageName and then we look up for the process ids then separate logs by process ids).
            import os
            import sys
            packageName=str(sys.argv[1])
            command = "adb shell ps | grep %s | awk '{print $2}'"%(packageName)
            p = os.popen(command)
            ##for some applications,there are multiple processes,so we should get all the process id
            pid = p.readline().strip()
            filters = pid
            while(pid != ""):
            pid = p.readline().strip()
            if (pid != ''):
            filters = filters + "|" + pid
            #print 'command = %s;filters=%s'%(command, filters)
            if (filters != '') :
            cmd = 'adb logcat | grep --color=always -E "%s" '%(filters)
            os.system(cmd)
            使用方法
            代碼如下:
            python logcatPkg.py com.mx.browser
            最新代碼
            代碼如下:
            #!/usr/bin/env python
            #coding:utf-8
            #This script is aimed to grep logs by application(User should input a packageName and then we look up for the process ids then separate logs by process ids).
            import os
            import sys
            packageName=str(sys.argv[1])
            command = "adb shell ps | grep %s | awk '{print $2}'"%(packageName)
            p = os.popen(command)
            ##for some applications,there are multiple processes,so we should get all the process id
            pid = p.readline().strip()
            filters = pid
            while(pid != ""):
            pid = p.readline().strip()
            if (pid != ''):
            filters = filters + "|" + pid
            #print 'command = %s;filters=%s'%(command, filters)
            if (filters != '') :
            cmd = 'adb logcat | grep --color=always -E "%s" '%(filters)
            os.system(cmd)
            不足
            當腳本執(zhí)行后,Android程序如果關(guān)閉或者重新啟動,導致進程ID變化,無法自動繼續(xù)輸出日志,只能再次執(zhí)行此腳本。