当前位置: 首页 > news >正文

陇南市网站建设_网站建设公司_定制开发_seo优化

沈阳定制型网站建设,网页翻译失败,成都旅游公司排名前十,口碑营销的方法1.查看当前堆栈 Call tree new Exception(“print trace”).printStackTrace(); #xff08;在logcat中打印当前函数调用关系#xff09; 2.MethodTracing 性能分析与优#xff08; 函数占用CPU时间#xff0c; 调用次数#xff0c; 函数调用关系#xff09; a) 在程序… 1.查看当前堆栈 Call tree new Exception(“print trace”).printStackTrace(); 在logcat中打印当前函数调用关系 2.MethodTracing 性能分析与优 函数占用CPU时间 调用次数 函数调用关系 a) 在程序代码中加入追踪开关 import android.os.Debug; … android.os.Debug.startMethodTracing(“/data/tmp/test”);//先建/data/tmp目录 …//被追踪程序段 android.os.Debug.stopMethodTracing(); b)编译运行后设备端生成/data/tmp/test.trace文件 c)把trace文件复制到PC端 $adb pull /data/tmp/test.trace/ d)使用android自带工具分析trace文件 $$ANDROID_SRC/out/host/linux-x86/bin/traceview test.trace 此时可看到各个函数被调用的次数CPU占用率等信息 e)使用android自带工具分析生成调用关系类图 $apt-get install graphviz #安装图片相关软件 $ANDROID_SRC/out/host/linux-x86/bin/dmtracedump –g test.png test.trace 此时目录下生成类图test.png 注意trace文件生成与libdvm模块DEBUG版本相冲突所以此方法只适用于对非DEBUG版本模拟器的调试否则在分析trace文件时会报错 3.HProf (Heap Profile) 内存占用 及泄漏分析 a) 在代码中加入dump动作 import android.os.Debug; import java.io.IOException; …… try{ android.os.Debug.dumpHprofData(“/data/tmp/input.hprof”);//预先建立/data/tmp }catch(IOException ioe){ } b) 把hprof文件复制到PC端 $adb pull /data/tmp/input.hprof ./ c)使用命令hprof-conv把hprof转成MAT识别的标准的hprof $$ANDROID_SRC/out/host/linux-x86/bin/hprof-conv input.hprof output.hprof d) 使用MAT工具看hprof信息 下载MAT工具http://www.eclipse.org/mat/downloads.php 用工具打开output.hprof 注意此工具只显示java层面而不能显示C层内存占用信息 4.SamplingProfile (要求android 2.0) 每隔毫秒对当前正在 运行的函数取样 并输出到log中 在代码中加入取样设定 import dalvik.system.SamplingProfiler … SamplingProfile spSamplingProfiler.getInstance(); sp.start(n);//n为设定每秒采样次数 sp.logSnapshot(sp.snapshot()); … sp.shutDown(); (自动启动一个线程监测在logcat中打印信息) 5.通过发送系统信号 获取Call tree与 内存信息 1) 原理dalvik虚拟机对SIGQUIT和SIGUSR1信号进行处理 (dalvik/vm/SignalCatcher.c)分别完成取当前堆栈和取当前内存情况的功能 2)用法 a) $ chmod 777 /data/anr -R # 把anr目录权限设为可写 $ rm /data/anr/traces.txt # 删除之前的trace信息 $ ps # 找到进程号 $ kill -3 进程号 # 发送SIGQUIT信号给该进程此时生成trace信息 $ cat /data/anr/traces.txt 功能实现遍历thread list(dalvik/vm/Thread.c:dvmDumpAllThreadEx())并打印当前函数调用关系(dalvik/vm/interp/Stack.c:dumpFrames()) b) $ chmod 777 /data/misc –R $ ps # 找到进程号 $ kill -10 进程号 # 发送SIGQUIT信事信号给该进程此时生成hprof信息 $ ls /data/misc/*.hprof 此时生成hprf文件如何查看此文件见第2部分(HProf) 注意hprof文件很大注意用完删除以免占满存储器6.logcat 1) android.util.Log利用println的标准java输出词句并加前缀I/V/D…. 2) dalvik利用管道加线程方式先利用dup2把stdout和stderr重定向到管理中(vm/StdioConverter.c:dvmstdioConverterStartup)然后再启动一个线程从管道另一端读出内容 (dalvik/vm/StdioConverter.c:stdioconverterThreadStart())使用LOG公共工具system/core/liblog/logd_write.c: __android_log_print()输出到/dev/log/*中 3)logcat通过加不同参数看/dev/log/下的不同输入信息 #logcat –b main显示主缓冲区中的信息 #logcat –b radio 显示无线缓冲区中的信息 #logcat –b events显示事件缓冲区中的信息 7.jdwp(java debug wire protocol)及原理 1) 虚拟机设备端在启动时加载了Agent JDWP 从而具备了调试功能。在调试器端PC端通过JDWP协议与设备连接通过发送命令来获取的状态和控制Java程序的执行。JDWP 是通过命令command和回复reply进行通信的。 2) JDK 中调试工具 jdb 就是一个调试器DDMS也提供调试器与设备相连。 3) dalvik为JDWP提供了两种连接方式tcp方式和adb方式tcp方式可以手工指定端口adb方式自动设定为8700端口通常使用DDMS调试就是通过adb方式8.monkey压力测试 android自带的命令行工具。它向系统发送伪随机的用户事件流实现对正在开发的应用程序进行压力测试。 在设备端打开setting界面 $ adb shell #monkey –p com.android.settings -v 500 此时可以看到界面不断被切换 9.查看Android源码 Eclipse插件 sqlitemanager插件实时查看写入db数据的改变 sqllitemanger插件的用法 Using SQLite in ANDROID You can see the sqlite database in eclipse by opening File Explorer .Then /data/data/package_name/databases But here we cannot see the tables and table data. For viewing the table details Eclipse has a plugin. You can download the jar from below. sqlitemanager下载. 注意如果是写入至系统临时目录db则需root) 10.SQLiteManager plugin for eclipse sqlitemanager插件实时查看写入db数据的改变 sqllitemanger插件的用法 Using SQLite in ANDROID You can see the sqlite database in eclipse by opening File Explorer .Then /data/data/package_name/databases But here we cannot see the tables and table data. For viewing the table details Eclipse has a plugin. You can download the jar from below. sqlitemanager下载. 注意如果是写入系统临时目录db则需root)11.自定义内存日志通过独立的界面显示12.try catch的快捷键快捷键ctrl alt t转载于:https://www.cnblogs.com/reboost/p/9540513.html
http://www.ihoyoo.com/news/48862.html

相关文章:

  • 网站全屏弹出窗口广州建网站技术
  • 山东食品行业网站模板淘宝店铺网站建立
  • 均安网站建设抚顺市建设局网站
  • 网站空间企业个人如何提升网站访问速度
  • 网站改版seo上海手机网站制作哪家好
  • 建设门户网站的目的和需求公司宣传册模板ppt
  • 杭州网站建设费用多少站群论坛
  • 网站域名价值查询网站设置文件夹权限设置
  • 万网网站空间宿迁房价2023年最新房价
  • 网上最好的网站模块做全景图的网站
  • 涉县移动网站建设报价wordpress的ssl
  • 做网站如何设计数据库可以做网站首页的图片
  • 深圳外贸网站建设网站空间购买流程
  • 怎样在网站上做有效的广告投放制作软件的流程
  • 苏州建设网站公司在什么地方onedrive wordpress
  • 河南网站建设优化技术年终总结汇报ppt模板
  • 网站建设教程出售用苏州久远网络南京网页设计哪家好
  • asp网站管理系统破解版广州城市建设档案网站
  • 从零开始学手机网站开发教程cdn wordpress ip统计
  • wordpress漂亮手机网站模板图片展示型网站
  • 网站建设项目分析报告网站开发毕设的需求分析
  • 做搜索引擎优化对网站有哪些好处网站建设 说明
  • 做淘客网站需要备案吗wordpress使用七牛云cdn
  • 支付网站建设费用计入知名网站开发公司
  • 给图像做标注的网站wordpress 民宿模板
  • 旅游网站建设费用预算网站设计宽屏尺寸
  • 专业网站 建设公司购物商城网站的制作
  • 网站 文件 上传哪里有做设备的
  • 宁波网站制作优化服务修改wordpress分类顺序
  • 北京网站制作建设公司万能浏览器手机版下载安装