windows系统上aosp15上winscope离线html如何使用?

背景:

aosp15上的如何使用Winscope前面已经有分享过相关的blog,这块其实和aosp14没啥大的差别,具体可以看如下3个文章:
手把手教你aosp14编译Winscope
安卓aosp15手机上如何离线获取winscope文件

文章中也说明在aosp15如果直接使用编译好的离线html是有问题的,无法正常显示抓取的Winscope文件。针对这样一个问题对于有些同学来说还是很不友好,因为很可能他们不想搭建node相关的环境,那么针对 aosp15上Winscope离线的html是否真的不可以使用呢?

对于ubuntu系统前面已经有相关文章分享过了:

程序员偷懒神器:aosp15上winscope离线html如何使用?

今天主要要分享一下很多学员朋友使用Windows操作系统办公同学,也就是Windows上如何使用aosp15的Winscope离线版本(马哥编译安卓15的Winscope离线版本相关文件,学员可以vip群里获取 )。

这个问题的解决还得感谢我们有前端背景学员朋友"小周佩奇i"提供的相关方案,下面来分享一下aosp15上winscope离线html如何使用。

无法使用离线html原因

1、直接文件方式打开html

2、导入对应Winscope包发现画面没有反应,其实是报错了,具体报错情况如下:

bash 复制代码
'Worker': Script at 'file:///media/test/49a0eb6b-f410-4eed-9e0a-952e3c75d2b2/home/test/aosp15/development/tools/winscope/dist/prod/engine_bundle.js' cannot be accessed from origin 'null'.
    at initWasm (wasm_engine_proxy.ts:24:20)
    at parser_factory_ParserFactory.initializeTraceProcessor (parser_factory.ts:131:7)
    at parser_factory_ParserFactory.createParsers (parser_factory.ts:63:39)
    at TracePipeline.loadUnzippedArchive (trace_pipeline.ts:210:57)
    at async TracePipeline.loadFiles (trace_pipeline.ts:72:37)
    at async Mediator.loadFiles (mediator.ts:238:7)
    at async mediator.ts:123:43
    at async AppFilesUploaded.visit (winscope_event.ts:71:21)
    at async Mediator.onWinscopeEvent (mediator.ts:119:67)
    at async AppComponent.onFilesUploaded (app_component.ts:531:25)

报错大概原因(引用学员朋友写的):
就是sf layer 是bp的方式存储,js使用bp应该是要通过wasm来,可以理解为js通过一个标准接口来执行native代码,类似jni

不过我们可能不关心原因,因为这块毕竟属于前端的知识,我们更关心应该怎么解决

Windows上解决html直接导入Winscope文件报错

上面报错的核心解决办法就是需要安装一个http-serser,并且启动http-server。所以核心就是要安装http-server,它的安装有多种方式这里主要介绍npm安装方式。

其他一些安装方案(感谢vip学员小周佩奇的回答):

bash 复制代码
一、Node 生态
http-server(最常用,零配置)
安装
npm i -g http-server        # 全局安装一次即可
使用
cd 你的项目目录
http-server -p 8080 -o      # -o 自动打开浏览器
特点:支持 gzip、CORS、HTTPS、自动刷新(--watch)等,体积小。
serve(Vercel 出品,零配置,UI 漂亮)
npm i -g serve
serve -l 8080 .
特点:自动识别单页应用(history fallback),终端里会给出一个漂亮的本地地址列表。
live-server(带自动刷新)
npm i -g live-server
live-server --port=8080
特点:改完文件浏览器自动刷新,适合写 demo 或静态博客。
极简"自己写三行"
如果环境不允许全局安装,可在项目里:
npm init -y
npm i http-server
npx http-server -p 8080
或者把脚本写进 package.json:
"scripts": { "dev": "http-server -p 8080 -o" }
以后 npm run dev 即可。
二、Python 生态(pip)
http.server(Python 3 内置,无需 pip)
python -m http.server 8080
缺点:只支持最基本的 GET、HEAD,没有 CORS、HTTPS。
进阶:pip install 一些"带功能"的小工具
a) simple-http-server
pip install simple-http-server
simple-http-server -p 8080
特点:支持 CORS、HTTPS、上传、自动刷新(--watch)。
b) livereload
pip install livereload
在项目根建一个 serve.py:
from livereload import Server
server = Server()
server.watch('*.html')
server.serve(root='.', port=8080)
然后 python serve.py,改完文件自动刷新。

这里主要分为一下几个步骤:
1、下载windows版本nodejs及安装

nodejs下载地址:
https://www.nodejs.com.cn/download.html

直接下载后一路点击确定安装就可以了。

2、确定nodejs安装后npm是否可以用

使用Windows的cmd工具,输入npm命令有如下输出既可以:

3、使用npm安装http-server

在cmd中执行如下命令进行安装

bash 复制代码
npm i -g http-server

4、启动http-server

cmd中使用如下命令启动:

bash 复制代码
http-server -p 8080 -o

启动后,一定要使用chrome浏览器输入127.0.0.1:8080会类似如下本地文件界面,一路点击到自己离线html的文件夹prop路径

一路点击自己Winscope离线html文件夹,然后展示结果如下:

导入一个adb抓取的sf的Winscope文件:

更多framework实战相关干货,请关注下面"千里马学框架"

相关推荐
工程师老罗3 小时前
如何在Android工程中配置NDK版本
android
Libraeking6 小时前
破壁行动:在旧项目中丝滑嵌入 Compose(混合开发实战)
android·经验分享·android jetpack
AI袋鼠帝6 小时前
Claude4.5+Gemini3 接管电脑桌面,这回是真无敌了..
人工智能·windows·aigc
市场部需要一个软件开发岗位6 小时前
JAVA开发常见安全问题:Cookie 中明文存储用户名、密码
android·java·安全
獨枭7 小时前
Windows 下安装与使用 Miniconda 完整指南
windows
JMchen1238 小时前
Android后台服务与网络保活:WorkManager的实战应用
android·java·网络·kotlin·php·android-studio
命里有定数8 小时前
保姆级教程:在 Windows (WSL2) 下本地部署 Qwen3-ASR
windows
crmscs9 小时前
剪映永久解锁版/电脑版永久会员VIP/安卓SVIP手机永久版下载
android·智能手机·电脑
localbob9 小时前
杀戮尖塔 v6 MOD整合版(Slay the Spire)安卓+PC端免安装中文版分享 卡牌肉鸽神作!杀戮尖塔中文版,电脑和手机都能玩!杀戮尖塔.exe 杀戮尖塔.apk
android·杀戮尖塔apk·杀戮尖塔exe·游戏分享
机建狂魔9 小时前
手机秒变电影机:Blackmagic Camera + LUT滤镜包的专业级视频解决方案
android·拍照·摄影·lut滤镜·拍摄·摄像·录像