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

新手做网站优化怎么做2022百度收录越来越难了

新手做网站优化怎么做,2022百度收录越来越难了,企业商城网站建设价格,网站的设计原则有哪些关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、如何使用四、页面说明4.1 Java 和 Kotlin 分配…

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。
专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。

目录

  • 一、导读
  • 二、概览
  • 三、如何使用
  • 四、页面说明
    • 4.1 Java 和 Kotlin 分配情况分析
      • 4.1.1 时间轴及对应的内存
      • 4.1.2 tab & visualization
      • 4.1.3
      • 4.1.4
      • 4.1.5
      • 4.1.6 class name
      • 4.1.7 instance
    • 4.2 堆转储文件分析
      • 4.2.1 过滤器
      • 4.2.2 统计信息
      • 4.2.3 class name
      • 4.2.4 instance
  • 五、 推荐阅读

在这里插入图片描述

一、导读

我们继续总结学习Android 基础知识,温故知新。

二、概览

Memory Profiler 是 Android Profiler 中的一个组件,可帮助您识别可能会导致应用卡顿、冻结甚至崩溃的内存泄露和内存抖动。
它显示一个应用内存使用量的实时图表,让您可以捕获堆转储、强制执行垃圾回收以及跟踪内存分配。

Memory Profiler我们主要用于识别内存泄漏、抖动 ,提供捕获堆转储、强制GC、跟踪内存分配
通过Memory Profiler 保存的堆转储文件,需要进行一次转换才能在MAT中打开。

hprof-conv heap-original.hprof heap-converted.hprofhprof-conv是 android sdk 工具,目录\Sdk\platform-tools

官网说明文档

三、如何使用

如下图所示,依次点击profile - memory ,然后会跳转到 memory界面,然后就可以进行录制了。
1

如果找不到依次点击 菜单栏的 View > Tool Windows > Profiler

四、页面说明

在memory页面,有两个内存录制选项,下面分别来说明

4.1 Java 和 Kotlin 分配情况分析

当完成录制后,其界面如下图所示,我们来分别说明一下:
在这里插入图片描述

我们大致分成七个部分

4.1.1 时间轴及对应的内存

可以随时在时间轴上拖动以选择要查看哪个区域的分配,最上面是页面及用户操作记录

4.1.2 tab & visualization

4.1.3

过滤器
您可以使用已分配对象列表上方的两个菜单选择需检查的堆以及如何组织数据,如下图所示:
在这里插入图片描述

  • View image heap:系统启动映像,包含启动期间预加载的类。此处的分配保证绝不会移动或消失。

  • View zygote heap:写时复制堆,其中的应用进程是从 Android 系统中派生的。

  • View app heap:选择的应用在其中分配内存的主堆。如果我们只关心我们App的话,选这项即可。

  • View JNI heap: 显示 Java 原生接口 (JNI) 引用被分配和释放到什么位置的堆。

4.1.4

过滤器
在这里插入图片描述

  • Arrange by class:根据类名称对所有分配进行分组。这是默认选项。

  • Arrange by package:根据软件包名称对所有分配进行分组。

  • Arrange by callstack:将所有分配分组到其对应的调用堆栈。

一般采用采用Arrang by class过滤占用内存占比比较高的类进行分析,Arrang by package根据包名定位自己代码、三方代码的内存问题

4.1.5

输入过滤:在输入框中可以输入类名/包名来快速定位到具体类/包名下类的内存分配情况

4.1.6 class name

创建的对象数其分配内存情况
这部分会列举过滤之后的所有类名、分配的对象数及内存使用情况,包括

  • Class Name: 类名
  • Allocations: 此类创建的实例对象数量
  • Dellocations:对象堆中释放数(低于8.0手机无此项)
  • Total count:对象在堆中未被回收的数量
  • Shallow Size: 此类使用的java内存总量(单位字节)
  • Native Size: 此类总共使用的原生内存总量(只有android7.0+设备才能看到)(单位字节)
  • Retained Size: 此类实例对象仍存活而保留的内存总大小(单位字节)

4.1.7 instance

类实例对象列表及其实例对象的详细信息
在6中点击某一个类,会在下半部分显示此类的所有实例对象的信息,如图
在这里插入图片描述

最右边的 Call Stack 标签页,显示该实例被分配到何处以及在哪个线程中。

4.2 堆转储文件分析

当完成录制后,其界面如下图所示,我们来分别说明一下:
在这里插入图片描述
我们大致分成4个部分

4.2.1 过滤器

在这里插入图片描述

  • View image heap:系统启动映像,包含启动期间预加载的类。此处的分配保证绝不会移动或消失。

  • View zygote heap:写时复制堆,其中的应用进程是从 Android 系统中派生的。

  • View app heap:选择的应用在其中分配内存的主堆。如果我们只关心我们App的话,选这项即可。

  • View all heaps: 检查分配内存的所有堆。

  • Arrange by class:根据类名称对所有分配进行分组。这是默认选项。

  • Arrange by package:根据软件包名称对所有分配进行分组。

  • Arrange by callstack:将所有分配分组到其对应的调用堆栈。

  • Show all class: 默认,显示所有的类

  • Show activity/fragment Leak: 显示发生内存泄漏的activity/fragment

  • Show project class: 进显示项目相关的类

一般采用采用Arrang by class过滤占用内存占比比较高的类进行分析,Arrang by package根据包名定位自己代码、三方代码的内存问题

输入过滤:在输入框中可以输入类名/包名来快速定位到具体类/包名下类的内存分配情况

4.2.2 统计信息

classes: 类类型总数,不是实例对象哦
Leaks:发生内存泄漏的数量
count: 总关创建的使用的实例对象数
Native Size: 原生c/c++使用的内存总量
Shallow Size: java使用的内存总量
Retained Size: 还在使用保留的内存总量

4.2.3 class name

创建的对象数其分配内存情况
这部分会列举过滤之后的所有类名、分配的对象数及内存使用情况,包括

  • Class Name: 类名
  • Allocations: 此类创建的实例对象数量
  • Native Size: 此类总共使用的原生内存总量(只有android7.0+设备才能看到)(单位字节)
  • Shallow Size: 此类使用的java内存总量(单位字节)
  • Retained Size: 此类实例对象仍存活而保留的内存总大小(单位字节)

4.2.4 instance

类实例对象列表及其实例对象的详细信息
在这里插入图片描述

点击某个实例会在右侧显示此实例内存分配的详细信息,包括:Fields、References:

  • Fields
    实例对象每个字段信息,包括如下信息:

  • Instance 此字段的名称及其类型,如果是基本数据类型和String会同时显示此字段的当前值

  • Depth: 此字段可达的最短跳数,表示的是任意一个GC Root到此字段的最短链路边数

  • Native Size: 原生内存中此字段的内存大小(只有Android7.0+上的设备才会看到此列)

  • Shallow Size: Java 内存中此字段的内存大小

  • Retained Size: 此字段目前还保留的内存大小

  • References:
    实例对象的引用链信息,References中包括如下信息:

  • Reference: 实例对象的引用链,可以依次点击展开显示此实例被哪些实例对象所引用,通过引用链可以最终追踪到GC Root

  • Depth: 此实例对象可达的最短跳数,表示的是任意一个GC Root到此实例对象的最短链路边数

  • Native Size: 原生内存中此实例对象的内存大小(只有Android7.0+上的设备才会看到此列)

  • Shallow Size: Java 内存中此实例对象的内存大小

  • Retained Size: 此实例对象目前还保留的内存大小

我们可以在Fields和References中分析,
可以右键选择Go to Instance显示其实例内存数据;
或者选择Jump to source进入此实例对象所在的源码。

五、 推荐阅读

Java 专栏

SQL 专栏

数据结构与算法

Android学习专栏

http://www.khdw.cn/news/16366.html

相关文章:

  • 凡科网站设计模板可以放友情链接的网站
  • 青岛网站seo诊断方象科技专注于什么领域
  • 国外 上海网站建设google竞价推广
  • 哪些人做数据监测网站在线建站模板
  • 网站2级目录怎么做的苏州首页关键词优化
  • 中国网站建设排名太原关键词优化报价
  • 九江网站建设优化公司西安官网seo公司
  • 如何建一个网站多少钱seo专员是什么意思
  • 网站设计页面上海seo网站推广公司
  • 适合服务行业做推广的网站关键词歌词任然
  • 哈尔滨网站建设市场市场运营和市场营销的区别
  • 上海营销型网站网站搜索引擎优化技术
  • 建筑培训网首页安全员网站seo视频教程
  • 贵阳网站建百度搜索网站优化
  • 公司做网站之前要准备什么软件百度官网认证多少钱一年
  • 怎样建立商贸网站苏州seo
  • 政府网站建设调查深圳网站设计小程序
  • 买空间哪个网站好西安seo服务公司
  • 德语网站建设注意事项seo工作前景如何
  • 重庆网站推广计划seo网站自动发布外链工具
  • 罗湖商城网站建设哪家公司靠谱邯郸seo优化公司
  • 灰色行业老域名做网站不收录千锋教育的真实性
  • 网站建设做网站费用好的营销网站设计公司
  • 微信网站建设公司淄博做网站的公司
  • 专门做外国的网站有哪些持续优化完善防控措施
  • 电商平台推广员是做什么的seo快速收录快速排名
  • 网站建设案例实录百度信息流代理
  • 成品网站整套源码seo入门基础教程
  • 电商设计工资搜索引擎优化人员优化
  • 标准营销型网站定做价格郑州seo代理外包