当前位置: 首页> 房产> 建材 > 免费作图网站都有哪些_哈尔滨公众号制作_百度一下 你就知道官网 新闻_怎样推广自己的广告

免费作图网站都有哪些_哈尔滨公众号制作_百度一下 你就知道官网 新闻_怎样推广自己的广告

时间:2025/7/10 11:40:37来源:https://blog.csdn.net/fanged/article/details/147157480 浏览次数:1次
免费作图网站都有哪些_哈尔滨公众号制作_百度一下 你就知道官网 新闻_怎样推广自己的广告

1 前言

在之前的工作中就偶尔见到同事分析性能的时候,拿出漂亮的火焰图,或者XX图,当时非常惊讶,觉得怎么可以做这么好。

后面看多了,才知道这个原来是安卓的perfetto工具,专门用来分析性能的。别人能玩,我们当然也能玩,所以现在有时间自己也试试。

2 Camera程序

弄了一个Camera的小程序。

package com.example.cameraxdemo2;import android.content.pm.PackageManager;
import android.os.Bundle;import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.camera.lifecycle.ProcessCameraProvider;
import androidx.camera.view.PreviewView;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;import com.google.common.util.concurrent.ListenableFuture;
import androidx.annotation.NonNull;
import android.Manifest;
import androidx.camera.core.Preview;  // 关键导入
import androidx.camera.view.PreviewView;
import androidx.camera.core.CameraSelector; // 关键导入
import androidx.camera.core.Preview;
import androidx.camera.lifecycle.ProcessCameraProvider;public class MainActivity extends AppCompatActivity {private PreviewView previewView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);previewView = findViewById(R.id.previewView);if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA)== PackageManager.PERMISSION_GRANTED) {startCamera();} else {ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.CAMERA}, 101);}}private void startCamera() {ListenableFuture<ProcessCameraProvider> cameraProviderFuture =ProcessCameraProvider.getInstance(this);cameraProviderFuture.addListener(() -> {try {ProcessCameraProvider cameraProvider = cameraProviderFuture.get();Preview preview = new Preview.Builder().build();preview.setSurfaceProvider(previewView.getSurfaceProvider());CameraSelector cameraSelector = CameraSelector.DEFAULT_BACK_CAMERA;cameraProvider.unbindAll();cameraProvider.bindToLifecycle(this, cameraSelector, preview);} catch (Exception e) {e.printStackTrace();}}, ContextCompat.getMainExecutor(this));}@Overridepublic void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,@NonNull int[] grantResults) {if (requestCode == 101 && grantResults.length > 0 &&grantResults[0] == PackageManager.PERMISSION_GRANTED) {startCamera();}}
}

代码也很简单,就是用了一下安卓的cameraProvider。运行时是这样的。还是用的祖传的荣耀平板8。

3 perfetto

3.1 命令行 

根据教程,可以直接使用adb命令来操作。大概是这样

adb shell perfetto -o /sdcard/trace.perfetto-trace -c - <<EOF
buffers {size_kb: 10240fill_policy: RING_BUFFER
}
data_sources {config {name: "linux.ftrace"target_buffer: 0ftrace_config {ftrace_events: "sched/sched_switch"ftrace_events: "sched/sched_wakeup"ftrace_events: "tracing_mark_write"}}
}
duration_ms: 15000
EOF

 导出成/sdcard/trace.perfetto-trace之后pull出来。但是一运行就报错,提示各种权限问题,还有一些参数问题。看来还是要找个root的机器才行。。。试了很多方法未果,最后放弃了。

3.2 Android Studio

在Studio上也有这功能,但是一开始没发现,找了半天原来是这。

 

好吧,果然还是Android Studio强大,一下就可以抓取了。

这个是内存的。

 

还有CPU的。

 

另外还有个System trace我这边启动报错了,不知道原因。。。

好吧,很好很强大,下次再详细分析吧。。。

3 Perfetto UI

谷歌对于这个还专门有个网站,可以更好的查看结果。但是我上传上去就是报错。。。

 可能还是荣耀平板8的安卓9有点老了吧。。。

另外这个网站还有web usb的功能(真是强大),不过还是因为版本原因没法用。。。

好了,其它的功能下次再看吧,来不起了,太困了。。。

关键字:免费作图网站都有哪些_哈尔滨公众号制作_百度一下 你就知道官网 新闻_怎样推广自己的广告

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: